@font-face{font-family:"Cormorant Upright";font-style:normal;font-weight:300;font-display:swap;src:url(/_astro/cormorant-upright-latin-300-normal.Dc4PN8YM.woff2) format("woff2")}
@font-face{font-family:"Cormorant Upright";font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/cormorant-upright-latin-400-normal.CUup1V3r.woff2) format("woff2")}
@font-face{font-family:"Cormorant Upright";font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/cormorant-upright-latin-600-normal.C-24WfeL.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:300;font-display:swap;src:url(/_astro/crimson-pro-latin-300-normal.BdPotd8_.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-style:italic;font-weight:400;font-display:swap;src:url(/_astro/crimson-pro-latin-400-italic.BJbyz_Tg.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/crimson-pro-latin-400-normal.B4SlG4wx.woff2) format("woff2")}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/crimson-pro-latin-600-normal.vJ8oEdKU.woff2) format("woff2")}
@font-face{font-family:"Grenze Gotisch";font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/grenze-gotisch-latin-500-normal.BpogzKXK.woff2) format("woff2")}
/*
 * Candlelit Nocturne: the style kit for the "nocturne" style package.
 * Loaded only when that package is active (<html data-kit="candlelit-nocturne">): apps/sites serves it at
 * /kits/candlelit-nocturne.css, inlines every url("elements/*.svg") as a data URI and prepends @font-face for the
 * fonts style.json names (Cormorant Upright, Crimson Pro, Grenze Gotisch).
 * Every rule is scoped to :root[data-kit="candlelit-nocturne"], so nothing here can touch another package.
 * Colours come from the colourway tokens (--ink, --ink-2, --cream, --gold, --muted, --vig) wherever they can, plus
 * the kit's own --noc-* palette (GUIDE.md). Night bands (countdown, the day, dress-code cards, footer) redefine
 * the tokens locally, so everything inside them follows. Ornaments are SVG masks filled with a token colour.
 * Pseudo-element map: section::after = full-bleed background; section::before = arched photograph or plaque;
 * h2::before = the taper divider; h2::after = its flame (CSS, so it can light).
 * The recurring motif is the taper: every divider carries one, and it lights as its section arrives; the
 * schedule lights one per event, the countdown lights five candlesticks, an open FAQ lights its own.
 * Flames light and glow steadily; they never go out (COMPONENTS.md rule 8).
 */

:root[data-kit="candlelit-nocturne"] {
  --noc-ivory: #efe9e1;
  --noc-parchment: #e6ded2;
  --noc-wax: #f8f4ee;
  --noc-velvet: #1e1a1a;
  --noc-moss: #55623a;
  --noc-oxblood: #5e1a24;
  --noc-oxblood-deep: #46121a;
  --noc-on-oxblood: #f8f4ee;
  --noc-rose: #7a2633;
  --noc-night: #161314;
  --noc-night-2: #221c1d;
  --noc-night-text: #efe9e1;
  --noc-night-muted: rgba(239, 233, 225, 0.76);
  --noc-gold: #c9a24a;
  --noc-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --noc-text: "Crimson Pro", Georgia, "Times New Roman", serif;
  --noc-accent: "Grenze Gotisch", var(--font-names), Georgia, serif;

  /* The flame: a warm teardrop with a halo. Shared by every candle on the page. */
  --noc-flame: radial-gradient(
    ellipse 60% 70% at 50% 72%,
    #fffaf0 0 18%,
    #fde3a2 34%,
    #f2b85a 58%,
    #c96f2a 84%,
    rgba(201, 111, 42, 0) 100%
  );
  --noc-halo: 0 0 8px 2px rgba(246, 196, 106, 0.55), 0 0 22px 8px rgba(246, 186, 96, 0.18);

  --noc-el-rule: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20240%2044%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Divider%20with%20a%20taper%20candle%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22l%22%20x2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-opacity%3D%220%22%2F%3E%3Cstop%20offset%3D%22.55%22%20stop-opacity%3D%221%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22r%22%20x1%3D%221%22%20x2%3D%220%22%3E%3Cstop%20offset%3D%220%22%20stop-opacity%3D%220%22%2F%3E%3Cstop%20offset%3D%22.55%22%20stop-opacity%3D%221%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M2%2037.5h96v.9H2z%22%20fill%3D%22url(%23l)%22%2F%3E%3Cpath%20d%3D%22M142%2037.5h96v.9h-96z%22%20fill%3D%22url(%23r)%22%2F%3E%3Cpath%20d%3D%22M96%2038l3-2.4%203%202.4-3%202.4zM138%2038l3-2.4%203%202.4-3%202.4z%22%2F%3E%3Cpath%20d%3D%22M116%2012q0-1%201-1h6q1%200%201%201v22h-8z%22%2F%3E%3Cpath%20d%3D%22M124%2012.5c.7%200%20.8%201%20.8%202v2.6c0%20.7-.4%201.1-.8%201.1z%22%2F%3E%3Cpath%20d%3D%22M120%2011v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M106%2035.2c0-1.9%206.44-3%2014-3s14%201.1%2014%203c0%201-6.3%201.6-14%201.6s-14-.6-14-1.6z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-taper: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2040%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Taper%20candle%22%3E%3Cpath%20d%3D%22M5%2012q0-1%201-1h4q1%200%201%201v21h-6z%22%2F%3E%3Cpath%20d%3D%22M11%2012.5c.7%200%20.8%201%20.8%202v2.6c0%20.7-.4%201.1-.8%201.1z%22%2F%3E%3Cpath%20d%3D%22M8%2011v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M0.4%2034.2c0-1.9%203.5-3%207.6-3s7.6%201.1%207.6%203c0%201-3.42%201.6-7.6%201.6s-7.6-.6-7.6-1.6z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-lancet: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20400%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Pointed%20arch%22%3E%3Cpath%20d%3D%22M0%20400V236A255%20255%200%200%201%20150%203.62A255%20255%200%200%201%20300%20236V400Z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-frame: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20320%20434%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Pointed%20arch%20frame%22%3E%3Cpath%20d%3D%22M2%20434V276.6A258.8%20258.8%200%200%201%20160%2038.24A258.8%20258.8%200%200%201%20318%20276.6V434%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.8%22%2F%3E%3Cpath%20d%3D%22M9%20434V276.6A251.8%20251.8%200%200%201%20160%2045.86A251.8%20251.8%200%200%201%20311%20276.6V434%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%220.8%22%2F%3E%3Cpath%20d%3D%22M160%2036.24c-3.4-3.6-4.6-7.4-1.6-11.6%201-1.4.9-3.2.2-4.6%204.2%202.6%206.4%207.2%205%2011.3-.8%202.4-2.2%203.8-3.6%204.9z%22%2F%3E%3Cpath%20d%3D%22M0%20432.6h320v1.4H0z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-window: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20320%20434%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Arched%20window%22%3E%3Cpath%20d%3D%22M2%20434V276.6A258.8%20258.8%200%200%201%20160%2038.24A258.8%20258.8%200%200%201%20318%20276.6V434%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222.4%22%2F%3E%3Cpath%20d%3D%22M9%20434V276.6A251.8%20251.8%200%200%201%20160%2045.86A251.8%20251.8%200%200%201%20311%20276.6V434%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.1%22%2F%3E%3Cpath%20d%3D%22M160%2036.24c-3.4-3.6-4.6-7.4-1.6-11.6%201-1.4.9-3.2.2-4.6%204.2%202.6%206.4%207.2%205%2011.3-.8%202.4-2.2%203.8-3.6%204.9z%22%2F%3E%3Cpath%20d%3D%22M16%20434V276.6A244.8%20244.8%200%200%201%20160%2053.52A244.8%20244.8%200%200%201%20304%20276.6V434Z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-tracery: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20240%2030%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Gothic%20tracery%20band%22%3E%3Cpath%20d%3D%22M0%201h240v.8H0zM0%2028.2h240v.8H0z%22%2F%3E%3Cpath%20d%3D%22M2%2028.2V16A18.6%2018.6%200%200%201%2015%20-1.74A18.6%2018.6%200%200%201%2028%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2212.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2217.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M32%2028.2V16A18.6%2018.6%200%200%201%2045%20-1.74A18.6%2018.6%200%200%201%2058%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%2245%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2242.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2247.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M62%2028.2V16A18.6%2018.6%200%200%201%2075%20-1.74A18.6%2018.6%200%200%201%2088%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%2275%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2272.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%2277.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M92%2028.2V16A18.6%2018.6%200%200%201%20105%20-1.74A18.6%2018.6%200%200%201%20118%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%22105%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22102.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22107.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M122%2028.2V16A18.6%2018.6%200%200%201%20135%20-1.74A18.6%2018.6%200%200%201%20148%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%22135%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22132.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22137.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M152%2028.2V16A18.6%2018.6%200%200%201%20165%20-1.74A18.6%2018.6%200%200%201%20178%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%22165%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22162.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22167.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M182%2028.2V16A18.6%2018.6%200%200%201%20195%20-1.74A18.6%2018.6%200%200%201%20208%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%22195%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22192.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22197.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Cpath%20d%3D%22M212%2028.2V16A18.6%2018.6%200%200%201%20225%20-1.74A18.6%2018.6%200%200%201%20238%2016V28.2%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.9%22%2F%3E%3Ccircle%20cx%3D%22225%22%20cy%3D%229.2%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22222.6%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3Ccircle%20cx%3D%22227.4%22%20cy%3D%2212.6%22%20r%3D%221.7%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-wreath: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20160%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Wreath%20of%20thorns%20and%20roses%22%3E%3Ccircle%20cx%3D%2280%22%20cy%3D%2280%22%20r%3D%2258%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.3%22%2F%3E%3Cg%20transform%3D%22translate(109%20130.23)%20rotate(4)%22%3E%3Cpath%20d%3D%22M0%200C4.05%20-4.2%2010.53%20-3.36%2013.5%200C10.53%203.36%204.05%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(119.7%20122.28)%20rotate(111.8)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(128.31%20112.1)%20rotate(-22.4)%22%3E%3Cpath%20d%3D%22M0%200C3.84%20-4.2%209.98%20-3.36%2012.8%200C9.98%203.36%203.84%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(134.36%20100.22)%20rotate(-103.6)%22%3E%3Cpath%20d%3D%22M0%200C3.73%20-4.2%209.71%20-3.36%2012.45%200C9.71%203.36%203.73%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(137.54%2087.27)%20rotate(72.2)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(137.68%2073.94)%20rotate(-130)%22%3E%3Cpath%20d%3D%22M0%200C3.52%20-4.2%209.17%20-3.36%2011.75%200C9.17%203.36%203.52%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(134.77%2060.93)%20rotate(-75.2)%22%3E%3Cpath%20d%3D%22M0%200C3.42%20-4.2%208.89%20-3.36%2011.4%200C8.89%203.36%203.42%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(128.97%2048.92)%20rotate(32.6)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(120.58%2038.56)%20rotate(-101.6)%22%3E%3Cpath%20d%3D%22M0%200C3.21%20-4.2%208.35%20-3.36%2010.7%200C8.35%203.36%203.21%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(110.05%2030.39)%20rotate(-182.8)%22%3E%3Cpath%20d%3D%22M0%200C3.1%20-4.2%208.07%20-3.36%2010.35%200C8.07%203.36%203.1%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(97.92%2024.84)%20rotate(-7)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(51%20130.23)%20rotate(176)%22%3E%3Cpath%20d%3D%22M0%200C4.05%20-4.2%2010.53%20-3.36%2013.5%200C10.53%203.36%204.05%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(40.3%20122.28)%20rotate(248.2)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(31.69%20112.1)%20rotate(202.4)%22%3E%3Cpath%20d%3D%22M0%200C3.84%20-4.2%209.98%20-3.36%2012.8%200C9.98%203.36%203.84%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(25.64%20100.22)%20rotate(283.6)%22%3E%3Cpath%20d%3D%22M0%200C3.73%20-4.2%209.71%20-3.36%2012.45%200C9.71%203.36%203.73%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(22.46%2087.27)%20rotate(287.8)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(22.32%2073.94)%20rotate(310)%22%3E%3Cpath%20d%3D%22M0%200C3.52%20-4.2%209.17%20-3.36%2011.75%200C9.17%203.36%203.52%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(25.23%2060.93)%20rotate(255.2)%22%3E%3Cpath%20d%3D%22M0%200C3.42%20-4.2%208.89%20-3.36%2011.4%200C8.89%203.36%203.42%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(31.03%2048.92)%20rotate(327.4)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(39.42%2038.56)%20rotate(281.6)%22%3E%3Cpath%20d%3D%22M0%200C3.21%20-4.2%208.35%20-3.36%2010.7%200C8.35%203.36%203.21%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(49.95%2030.39)%20rotate(362.8)%22%3E%3Cpath%20d%3D%22M0%200C3.1%20-4.2%208.07%20-3.36%2010.35%200C8.07%203.36%203.1%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(62.08%2024.84)%20rotate(367)%22%3E%3Cpath%20d%3D%22M-2.16%200Q-0.36%20-1.08%201.26%20-4.14Q0.54%20-0.72%202.16%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(70%20140)%22%3E%3Cmask%20id%3D%22rz0%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%22-13%22%20y%3D%22-13%22%20width%3D%2226%22%20height%3D%2226%22%3E%3Cpath%20d%3D%22M0%20-10A5.6%205.6%200%200%201%208.66%20-5A5.6%205.6%200%200%201%208.66%205A5.6%205.6%200%200%201%200%2010A5.6%205.6%200%200%201%20-8.66%205A5.6%205.6%200%200%201%20-8.66%20-5A5.6%205.6%200%200%201%200%20-10Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M-1.88%20-0.68A2%202%200%201%201%20-0.68%201.88%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M3.95%201.44A4.2%204.2%200%200%201%20-3.95%20-1.44%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-2.7%20-3.22A4.2%204.2%200%200%201%203.22%20-2.7%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.9%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-3.3%205.72A6.6%206.6%200%200%201%20-2.26%20-6.2%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.9%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M2.26%20-6.2A6.6%206.6%200%200%201%205.06%204.24%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.9%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-8.27%20-1.46A8.4%208.4%200%200%201%20-1.46%20-8.27%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.8%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M7.27%20-4.2A8.4%208.4%200%200%201%204.2%207.27%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.8%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M4.2%207.27A8.4%208.4%200%200%201%20-4.2%207.27%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.8%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fmask%3E%3Cpath%20d%3D%22M0%20-10A5.6%205.6%200%200%201%208.66%20-5A5.6%205.6%200%200%201%208.66%205A5.6%205.6%200%200%201%200%2010A5.6%205.6%200%200%201%20-8.66%205A5.6%205.6%200%200%201%20-8.66%20-5A5.6%205.6%200%200%201%200%20-10Z%22%20mask%3D%22url(%23rz0)%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(90%20137)%22%3E%3Cmask%20id%3D%22rz1%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%22-11.05%22%20y%3D%22-11.05%22%20width%3D%2222.1%22%20height%3D%2222.1%22%3E%3Cpath%20d%3D%22M0%20-8.5A4.76%204.76%200%200%201%207.36%20-4.25A4.76%204.76%200%200%201%207.36%204.25A4.76%204.76%200%200%201%200%208.5A4.76%204.76%200%200%201%20-7.36%204.25A4.76%204.76%200%200%201%20-7.36%20-4.25A4.76%204.76%200%200%201%200%20-8.5Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M-1.6%20-0.58A1.7%201.7%200%201%201%20-0.58%201.6%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.85%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M3.35%201.22A3.57%203.57%200%200%201%20-3.35%20-1.22%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.85%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-2.29%20-2.73A3.57%203.57%200%200%201%202.73%20-2.29%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.77%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-2.8%204.86A5.61%205.61%200%200%201%20-1.92%20-5.27%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.77%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M1.92%20-5.27A5.61%205.61%200%200%201%204.3%203.61%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.77%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-7.03%20-1.24A7.14%207.14%200%200%201%20-1.24%20-7.03%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.68%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M6.18%20-3.57A7.14%207.14%200%200%201%203.57%206.18%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.68%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M3.57%206.18A7.14%207.14%200%200%201%20-3.57%206.18%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.68%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fmask%3E%3Cpath%20d%3D%22M0%20-8.5A4.76%204.76%200%200%201%207.36%20-4.25A4.76%204.76%200%200%201%207.36%204.25A4.76%204.76%200%200%201%200%208.5A4.76%204.76%200%200%201%20-7.36%204.25A4.76%204.76%200%200%201%20-7.36%20-4.25A4.76%204.76%200%200%201%200%20-8.5Z%22%20mask%3D%22url(%23rz1)%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M80%2024c-3.6-2.4-4.6-6.6-2-10.4%201.2%202%202%202.8%202%202.8s.8-.8%202-2.8c2.6%203.8%201.6%208-2%2010.4z%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-corner: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2056%2056%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Briar%20corner%20with%20a%20rose%22%3E%3Cpath%20d%3D%22M5%2054V18Q5%205%2018%205h36%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M11%2054V22Q11%2011%2022%2011h32%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%22.6%22%20opacity%3D%22.7%22%2F%3E%3Cg%20transform%3D%22translate(5%2044)%20rotate(270)%22%3E%3Cpath%20d%3D%22M-1.8%200Q-0.3%20-0.9%201.05%20-3.45Q0.45%20-0.6%201.8%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(5%2030)%20rotate(270)%22%3E%3Cpath%20d%3D%22M-1.8%200Q-0.3%20-0.9%201.05%20-3.45Q0.45%20-0.6%201.8%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(28%205)%20rotate(0)%22%3E%3Cpath%20d%3D%22M-1.8%200Q-0.3%20-0.9%201.05%20-3.45Q0.45%20-0.6%201.8%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(42%205)%20rotate(0)%22%3E%3Cpath%20d%3D%22M-1.8%200Q-0.3%20-0.9%201.05%20-3.45Q0.45%20-0.6%201.8%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(5%2024)%20rotate(-160)%22%3E%3Cpath%20d%3D%22M0%200C2.7%20-2.8%207.02%20-2.24%209%200C7.02%202.24%202.7%202.8%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(34%205)%20rotate(-70)%22%3E%3Cpath%20d%3D%22M0%200C2.7%20-2.8%207.02%20-2.24%209%200C7.02%202.24%202.7%202.8%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(9.5%209.5)%22%3E%3Cmask%20id%3D%22rz2%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%22-7.0200000000000005%22%20y%3D%22-7.0200000000000005%22%20width%3D%2214.040000000000001%22%20height%3D%2214.040000000000001%22%3E%3Cpath%20d%3D%22M0%20-5.4A3.02%203.02%200%200%201%204.68%20-2.7A3.02%203.02%200%200%201%204.68%202.7A3.02%203.02%200%200%201%200%205.4A3.02%203.02%200%200%201%20-4.68%202.7A3.02%203.02%200%200%201%20-4.68%20-2.7A3.02%203.02%200%200%201%200%20-5.4Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M-1.01%20-0.37A1.08%201.08%200%201%201%20-0.37%201.01%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.54%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M2.13%200.78A2.27%202.27%200%200%201%20-2.13%20-0.78%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.54%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-1.46%20-1.74A2.27%202.27%200%200%201%201.74%20-1.46%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.49%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-1.78%203.09A3.56%203.56%200%200%201%20-1.22%20-3.35%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.49%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M1.22%20-3.35A3.56%203.56%200%200%201%202.73%202.29%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.49%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-4.47%20-0.79A4.54%204.54%200%200%201%20-0.79%20-4.47%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.43%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M3.93%20-2.27A4.54%204.54%200%200%201%202.27%203.93%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.43%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M2.27%203.93A4.54%204.54%200%200%201%20-2.27%203.93%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%220.43%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fmask%3E%3Cpath%20d%3D%22M0%20-5.4A3.02%203.02%200%200%201%204.68%20-2.7A3.02%203.02%200%200%201%204.68%202.7A3.02%203.02%200%200%201%200%205.4A3.02%203.02%200%200%201%20-4.68%202.7A3.02%203.02%200%200%201%20-4.68%20-2.7A3.02%203.02%200%200%201%200%20-5.4Z%22%20mask%3D%22url(%23rz2)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  --noc-el-candles: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20240%20150%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22Five%20candlesticks%22%3E%3Cpath%20d%3D%22M0%20146h240v1.2H0z%22%2F%3E%3Cellipse%20cx%3D%2228%22%20cy%3D%22143.4%22%20rx%3D%2213%22%20ry%3D%223.2%22%2F%3E%3Cpath%20d%3D%22M21%20142q7-5%2014%200z%22%2F%3E%3Cpath%20d%3D%22M26%20141V104h4V141z%22%2F%3E%3Cellipse%20cx%3D%2228%22%20cy%3D%22118%22%20rx%3D%224.2%22%20ry%3D%223.4%22%2F%3E%3Cpath%20d%3D%22M20%20100h16l-3%205h-10z%22%2F%3E%3Cpath%20d%3D%22M24.4%2067q0-1%201-1h5.2q1%200%201%201v33h-7.2z%22%2F%3E%3Cpath%20d%3D%22M31.6%2069c.8%200%20.9%201.2.9%202.4v3c0%20.8-.4%201.2-.9%201.2z%22%2F%3E%3Cpath%20d%3D%22M28%2066v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cellipse%20cx%3D%2276%22%20cy%3D%22143.4%22%20rx%3D%2213%22%20ry%3D%223.2%22%2F%3E%3Cpath%20d%3D%22M69%20142q7-5%2014%200z%22%2F%3E%3Cpath%20d%3D%22M74%20141V114h4V141z%22%2F%3E%3Cellipse%20cx%3D%2276%22%20cy%3D%22123.5%22%20rx%3D%224.2%22%20ry%3D%223.4%22%2F%3E%3Cpath%20d%3D%22M68%20110h16l-3%205h-10z%22%2F%3E%3Cpath%20d%3D%22M72.4%2059q0-1%201-1h5.2q1%200%201%201v51h-7.2z%22%2F%3E%3Cpath%20d%3D%22M79.6%2061c.8%200%20.9%201.2.9%202.4v3c0%20.8-.4%201.2-.9%201.2z%22%2F%3E%3Cpath%20d%3D%22M76%2058v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cellipse%20cx%3D%22120%22%20cy%3D%22143.4%22%20rx%3D%2213%22%20ry%3D%223.2%22%2F%3E%3Cpath%20d%3D%22M113%20142q7-5%2014%200z%22%2F%3E%3Cpath%20d%3D%22M118%20141V100h4V141z%22%2F%3E%3Cellipse%20cx%3D%22120%22%20cy%3D%22115.8%22%20rx%3D%224.2%22%20ry%3D%223.4%22%2F%3E%3Cpath%20d%3D%22M112%2096h16l-3%205h-10z%22%2F%3E%3Cpath%20d%3D%22M116.4%2027q0-1%201-1h5.2q1%200%201%201v69h-7.2z%22%2F%3E%3Cpath%20d%3D%22M123.6%2029c.8%200%20.9%201.2.9%202.4v3c0%20.8-.4%201.2-.9%201.2z%22%2F%3E%3Cpath%20d%3D%22M120%2026v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cellipse%20cx%3D%22164%22%20cy%3D%22143.4%22%20rx%3D%2213%22%20ry%3D%223.2%22%2F%3E%3Cpath%20d%3D%22M157%20142q7-5%2014%200z%22%2F%3E%3Cpath%20d%3D%22M162%20141V114h4V141z%22%2F%3E%3Cellipse%20cx%3D%22164%22%20cy%3D%22123.5%22%20rx%3D%224.2%22%20ry%3D%223.4%22%2F%3E%3Cpath%20d%3D%22M156%20110h16l-3%205h-10z%22%2F%3E%3Cpath%20d%3D%22M160.4%2067q0-1%201-1h5.2q1%200%201%201v43h-7.2z%22%2F%3E%3Cpath%20d%3D%22M167.6%2069c.8%200%20.9%201.2.9%202.4v3c0%20.8-.4%201.2-.9%201.2z%22%2F%3E%3Cpath%20d%3D%22M164%2066v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3Cellipse%20cx%3D%22212%22%20cy%3D%22143.4%22%20rx%3D%2213%22%20ry%3D%223.2%22%2F%3E%3Cpath%20d%3D%22M205%20142q7-5%2014%200z%22%2F%3E%3Cpath%20d%3D%22M210%20141V104h4V141z%22%2F%3E%3Cellipse%20cx%3D%22212%22%20cy%3D%22118%22%20rx%3D%224.2%22%20ry%3D%223.4%22%2F%3E%3Cpath%20d%3D%22M204%20100h16l-3%205h-10z%22%2F%3E%3Cpath%20d%3D%22M208.4%2043q0-1%201-1h5.2q1%200%201%201v57h-7.2z%22%2F%3E%3Cpath%20d%3D%22M215.6%2045c.8%200%20.9%201.2.9%202.4v3c0%20.8-.4%201.2-.9%201.2z%22%2F%3E%3Cpath%20d%3D%22M212%2042v-4.5%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
  --noc-el-rose: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040%2064%22%20fill%3D%22currentColor%22%20role%3D%22img%22%20aria-label%3D%22A%20rose%22%3E%3Cg%20transform%3D%22translate(20%2016)%22%3E%3Cmask%20id%3D%22rz3%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%22-16.900000000000002%22%20y%3D%22-16.900000000000002%22%20width%3D%2233.800000000000004%22%20height%3D%2233.800000000000004%22%3E%3Cpath%20d%3D%22M0%20-13A7.28%207.28%200%200%201%2011.26%20-6.5A7.28%207.28%200%200%201%2011.26%206.5A7.28%207.28%200%200%201%200%2013A7.28%207.28%200%200%201%20-11.26%206.5A7.28%207.28%200%200%201%20-11.26%20-6.5A7.28%207.28%200%200%201%200%20-13Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M-2.44%20-0.89A2.6%202.6%200%201%201%20-0.89%202.44%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M5.13%201.87A5.46%205.46%200%200%201%20-5.13%20-1.87%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-3.51%20-4.18A5.46%205.46%200%200%201%204.18%20-3.51%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.17%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-4.29%207.43A8.58%208.58%200%200%201%20-2.93%20-8.06%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.17%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M2.93%20-8.06A8.58%208.58%200%200%201%206.57%205.52%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.17%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M-10.75%20-1.9A10.92%2010.92%200%200%201%20-1.9%20-10.75%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.04%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M9.46%20-5.46A10.92%2010.92%200%200%201%205.46%209.46%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.04%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M5.46%209.46A10.92%2010.92%200%200%201%20-5.46%209.46%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.04%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fmask%3E%3Cpath%20d%3D%22M0%20-13A7.28%207.28%200%200%201%2011.26%20-6.5A7.28%207.28%200%200%201%2011.26%206.5A7.28%207.28%200%200%201%200%2013A7.28%207.28%200%200%201%20-11.26%206.5A7.28%207.28%200%200%201%20-11.26%20-6.5A7.28%207.28%200%200%201%200%20-13Z%22%20mask%3D%22url(%23rz3)%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M20%2029c-1%2010%201%2022%200%2033%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%2F%3E%3Cg%20transform%3D%22translate(20%2042)%20rotate(-35)%22%3E%3Cpath%20d%3D%22M0%200C4.2%20-4.2%2010.92%20-3.36%2014%200C10.92%203.36%204.2%204.2%200%200z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(20%2050)%20rotate(160)%22%3E%3Cpath%20d%3D%22M-1.56%200Q-0.26%20-0.78%200.91%20-2.99Q0.39%20-0.52%201.56%200z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");

  --noc-img-paper: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/rag-paper-tile-1024.webp");
  --noc-img-stone: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/fieldstone-tile-1024.webp");
  --noc-img-velvet: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/velvet-tile-1024.webp");
  /* The wedding layer: one cue per photographed section. */
  --noc-img-bouquet: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/bouquet-step-700.webp");
  --noc-img-veil: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/veil-chair-700.webp");
  --noc-img-dinner: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/dinner-ruin-700.webp");
  --noc-img-boutonniere: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/boutonniere-velvet-700.webp");
  --noc-img-gift: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/gift-rings-700.webp");
  --noc-img-road: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/lantern-road-900.webp");
  --noc-img-door: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/castle-door-wide-900.webp");
  --noc-img-after: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/stair-after-900.webp");
}
@media (min-width: 900px) {
  :root[data-kit="candlelit-nocturne"] {
    --noc-img-road: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/lantern-road-1920.webp");
    --noc-img-door: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/castle-door-wide-1600.webp");
    --noc-img-after: url("https://media.lovesfirst.site/clients/style-vault/media/candlelit-nocturne/stair-after-1920.webp");
  }
}

/* ---------- Night: the tokens for a dark band (countdown, the day, dress-code cards, footer) ---------- */
:root[data-kit="candlelit-nocturne"] #countdown,
:root[data-kit="candlelit-nocturne"] #day,
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card,
:root[data-kit="candlelit-nocturne"] footer {
  --ink: var(--noc-night);
  --ink-2: var(--noc-night-2);
  --cream: var(--noc-night-text);
  --gold: var(--noc-gold);
  --muted: var(--noc-night-muted);
  --vig: 22, 19, 20;
  --fx-fill: var(--noc-night-text);
  color: var(--cream);
}

/* ---------- Type ---------- */
:root[data-kit="candlelit-nocturne"] main .block p,
:root[data-kit="candlelit-nocturne"] main .block li {
  font-family: var(--noc-text);
  font-weight: 400;
  font-size: clamp(1.125rem, 1.6vw, 1.1875rem);
  line-height: 1.7;
}
:root[data-kit="candlelit-nocturne"] main .eyebrow {
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 0.98rem;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.22em;
  color: var(--gold);
  text-shadow: none;
  margin-bottom: 1rem;
}
:root[data-kit="candlelit-nocturne"] main .block h2:not(.lf-fx) {
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.04;
  text-wrap: balance;
}
:root[data-kit="candlelit-nocturne"] main h3 {
  font-weight: 500;
  text-wrap: balance;
}
:root[data-kit="candlelit-nocturne"] main :is(.lf-when, .lf-time, .lf-meta, .item .when) {
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 0.95rem;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.18em;
}
:root[data-kit="candlelit-nocturne"] main .lf-place {
  font-family: var(--noc-text);
  font-style: italic;
  opacity: 1;
  color: var(--muted);
}

/* Lettering. Gold foil in the hero (candlelight on gilt); on the ivory page the same idea in a darker antique
   gilt, so the names stay readable (darkest stop 9.2:1, lightest 3.6:1 on ivory: large text). */
:root[data-kit="candlelit-nocturne"][data-fx="foil"] .lf-still .lf-fx {
  background: linear-gradient(176deg, #fff6dc 0%, #f1d38c 30%, #c9973f 54%, #f6dd9c 72%, #a87a2c 100%);
  -webkit-background-clip: text;
  background-clip: text;
  filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.45)) drop-shadow(0 4px 22px rgba(0, 0, 0, 0.55));
}
:root[data-kit="candlelit-nocturne"][data-fx="foil"] main .lf-fx {
  background: linear-gradient(176deg, #7a5a22 0%, #94702e 34%, #5f4316 56%, #8a6a2c 76%, #4e3612 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255, 255, 255, 0.6));
}
:root[data-kit="candlelit-nocturne"] .lf-still .names {
  font-weight: 400;
  letter-spacing: 0.005em;
}
:root[data-kit="candlelit-nocturne"] .lf-still .names em,
:root[data-kit="candlelit-nocturne"] #welcome h2 em {
  font-weight: 300;
  padding: 0 0.16em;
}
:root[data-kit="candlelit-nocturne"] .lf-still .eyebrow {
  font-family: var(--noc-text);
  font-weight: 600;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.32em;
  font-size: 1.05rem;
}
:root[data-kit="candlelit-nocturne"] .lf-still-foot .line {
  font-family: var(--noc-text);
  font-style: italic;
  font-weight: 300;
}

/* ---------- Hero (still): deeper night at the edges, mist on the steps, the ceremony loop ---------- */
:root[data-kit="candlelit-nocturne"] .lf-still .vignette {
  background:
    radial-gradient(130% 95% at 50% 52%, transparent 50%, rgba(10, 8, 9, 0.55) 100%),
    linear-gradient(
      to bottom,
      rgba(10, 8, 9, 0.62),
      rgba(10, 8, 9, 0.12) 38%,
      transparent 62%,
      rgba(10, 8, 9, 0.7)
    );
}
:root[data-kit="candlelit-nocturne"] .lf-still .noc-loop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--still-photo-position, 50% 50%);
  filter: var(--still-photo-filter, none);
  opacity: 0;
  transition: opacity 1.8s ease;
}
:root[data-kit="candlelit-nocturne"] .lf-still .noc-loop.on {
  opacity: 1;
}
/* Mist: two soft banks of pale air low over the steps (motion.ts adds and drifts them; none under reduced motion). */
:root[data-kit="candlelit-nocturne"] .lf-still .noc-mist {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 0;
  height: 46%;
  overflow: hidden;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] .lf-still .noc-mist i {
  position: absolute;
  bottom: -18%;
  left: -30%;
  width: 160%;
  height: 80%;
  background:
    radial-gradient(38% 46% at 24% 64%, rgba(226, 222, 232, 0.2), transparent 70%),
    radial-gradient(30% 40% at 58% 72%, rgba(226, 222, 232, 0.16), transparent 70%),
    radial-gradient(34% 44% at 86% 60%, rgba(226, 222, 232, 0.14), transparent 70%);
  will-change: transform;
}
:root[data-kit="candlelit-nocturne"] .lf-still .noc-mist i + i {
  bottom: -30%;
  opacity: 0.7;
  transform: scaleX(-1);
}

/* ---------- Sections: frame and full-bleed backgrounds ---------- */
:root[data-kit="candlelit-nocturne"] main {
  overflow-x: clip;
}
:root[data-kit="candlelit-nocturne"] section.block {
  position: relative;
  isolation: isolate;
}
:root[data-kit="candlelit-nocturne"] section.block::after {
  content: "";
  position: absolute;
  z-index: -2;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  pointer-events: none;
  background: var(--noc-bg, transparent);
  background-blend-mode: var(--noc-blend, normal);
}

/* The divider: a taper in its dish between two hairlines, above the eyebrow of every section after the welcome
   (hung off the heading, which is positioned, so the reveal's transform can't move it). 200 x 36.67 px; the wick
   sits at its centre, 5.4 px from the top. */
:root[data-kit="candlelit-nocturne"] section.block > h2 {
  position: relative;
  --noc-rule-top: calc(-2.1rem - 37px - 1.2rem);
}
:root[data-kit="candlelit-nocturne"] section.block:not(#welcome) > h2::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: var(--noc-rule-top);
  left: 50%;
  width: 200px;
  height: 37px;
  transform: translateX(-50%);
  background-color: var(--gold);
  -webkit-mask: var(--noc-el-rule) center / contain no-repeat;
  mask: var(--noc-el-rule) center / contain no-repeat;
  clip-path: inset(0 0 0 0);
  transition: clip-path 1.5s var(--noc-ease);
}
/* Its flame. */
:root[data-kit="candlelit-nocturne"] section.block:not(#welcome) > h2::after,
:root[data-kit="candlelit-nocturne"] :is(.lf-tl, .lf-sched) li::after,
:root[data-kit="candlelit-nocturne"] .lf-acc summary i::after,
:root[data-kit="candlelit-nocturne"] .noc-cdl i {
  content: "";
  position: absolute;
  width: 7px;
  height: 13px;
  border-radius: 50% 50% 50% 50% / 64% 64% 36% 36%;
  background: var(--noc-flame);
  box-shadow: var(--noc-halo);
  transform-origin: 50% 100%;
  pointer-events: none;
  transition:
    opacity 0.9s ease,
    transform 0.9s var(--noc-ease);
}
:root[data-kit="candlelit-nocturne"] section.block:not(#welcome) > h2::after {
  z-index: 2;
  top: calc(var(--noc-rule-top) + 5.4px - 13px);
  left: calc(50% - 3.5px);
}
/* Left-aligned sections: the rule sits flush left over the eyebrow; centred sections keep it centred. */
:root[data-kit="candlelit-nocturne"] section.block:not(.center, #travel) > h2::before {
  left: 0;
  transform: none;
}
:root[data-kit="candlelit-nocturne"] section.block:not(.center, #travel) > h2::after {
  left: calc(100px - 3.5px);
}
/* With the kit's motion running, rules start closed and draw open from the centre; the flame lights after
   (motion.ts adds .noc-in as the section arrives). */
:root[data-kit="candlelit-nocturne"].noc-motion section.block:not(.noc-in) > h2::before {
  clip-path: inset(0 50% 0 50%);
}
:root[data-kit="candlelit-nocturne"].noc-motion section.block:not(.noc-in) > h2::after {
  opacity: 0;
  transform: scale(0.2, 0.1);
}
:root[data-kit="candlelit-nocturne"].noc-motion section.block.noc-in > h2::after {
  transition-delay: 0.7s;
}

/* The flame's breath: 3 % taller and back over 3 s, only while its section is on screen (motion.ts adds .noc-on).
   Never a flicker, never out. Reduced motion: still. */
@keyframes noc-breathe {
  0%,
  100% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(0.97, 1.05);
  }
}
:root[data-kit="candlelit-nocturne"].noc-motion section.block.noc-in.noc-on > h2::after,
:root[data-kit="candlelit-nocturne"].noc-motion .noc-on :is(.lf-tl, .lf-sched) li.noc-lit::after,
:root[data-kit="candlelit-nocturne"].noc-motion .noc-on .lf-acc details[open] summary i::after,
:root[data-kit="candlelit-nocturne"].noc-motion .noc-on .noc-cdl i.on {
  animation: noc-breathe 3.2s ease-in-out infinite;
}
:root[data-kit="candlelit-nocturne"] .noc-on .noc-cdl i.on:nth-child(2n) {
  animation-duration: 3.7s;
}

/* The edge between the hero and the page: a band of gothic tracery instead of the hairline and diamond. */
:root[data-kit="candlelit-nocturne"] .edge {
  position: absolute;
  z-index: 2;
  top: 1.6rem;
  left: 50%;
  transform: translateX(-50%);
  height: 30px;
  width: min(300px, 76vw);
  margin: 0;
  opacity: 0.85;
  background: var(--gold);
  -webkit-mask: var(--noc-el-tracery) center / contain no-repeat;
  mask: var(--noc-el-tracery) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] .edge::after {
  display: none;
}

/* The arched window: every photograph in the page body is one element masked by lancet-window.svg (frame lines,
   finial and the photograph's lancet in one mask). The photograph fills the inner lancet; the frame shows the
   colour underneath. Welcome, story and the day (hung off the section), dress code and registry
   (one more cell of their card grids). */
:root[data-kit="candlelit-nocturne"] #welcome::before,
:root[data-kit="candlelit-nocturne"] #story::before,
:root[data-kit="candlelit-nocturne"] #day::before,
:root[data-kit="candlelit-nocturne"] #dress-code .lf-cards::after,
:root[data-kit="candlelit-nocturne"] #registry .lf-links::after {
  content: "";
  display: block;
  width: min(15rem, 64vw);
  aspect-ratio: 320 / 434;
  margin: 0 auto 2.6rem;
  background:
    var(--noc-img, none) 50% 100% / 90% 88.48% no-repeat,
    var(--gold);
  -webkit-mask: var(--noc-el-window) center / 100% 100% no-repeat;
  mask: var(--noc-el-window) center / 100% 100% no-repeat;
}

/* Plaque: a wax panel with a heavy double frame, over a photograph (travel, RSVP). */
:root[data-kit="candlelit-nocturne"] #travel::before,
:root[data-kit="candlelit-nocturne"] #rsvp::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: clamp(2.5rem, 7vh, 4.5rem) 0;
  background: color-mix(in srgb, var(--noc-ivory) 96%, transparent);
  background-image: var(--noc-img-paper);
  background-size: 700px;
  background-blend-mode: multiply;
  border: 3px double color-mix(in srgb, var(--noc-velvet) 70%, var(--noc-gold));
  outline: 1px solid color-mix(in srgb, var(--noc-gold) 70%, transparent);
  outline-offset: 7px;
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.7);
}
@media (max-width: 700px) {
  :root[data-kit="candlelit-nocturne"] #travel::before,
  :root[data-kit="candlelit-nocturne"] #rsvp::before {
    inset: clamp(2.5rem, 7vh, 4.5rem) 12px;
  }
}

/* ---------- Welcome: rag paper, the bouquet on the mossy step in a lancet, names drawn out of the dark ---------- */
:root[data-kit="candlelit-nocturne"] #welcome {
  --noc-bg: var(--noc-img-paper) center / 820px repeat, var(--ink);
  --noc-blend: multiply;
  --noc-img: var(--noc-img-bouquet);
  padding-top: clamp(5.5rem, 13vh, 8.5rem);
}
:root[data-kit="candlelit-nocturne"] #welcome h2 {
  font-size: calc(clamp(3.3rem, 10vw, 6.4rem) * var(--names-scale));
  line-height: 1.02;
  padding-bottom: 0.08em; /* room for descenders under the foil clip */
}
/* Names by candlelight (motion.ts): a soft pool of light opens from the middle of the names outward. */
:root[data-kit="candlelit-nocturne"] #welcome h2.noc-glow {
  --noc-reveal: 0%;
  -webkit-mask: radial-gradient(
    ellipse 70% 150% at 50% 55%,
    #000 calc(var(--noc-reveal) - 22%),
    transparent var(--noc-reveal)
  );
  mask: radial-gradient(
    ellipse 70% 150% at 50% 55%,
    #000 calc(var(--noc-reveal) - 22%),
    transparent var(--noc-reveal)
  );
}
:root[data-kit="candlelit-nocturne"] #welcome .rule {
  position: relative;
  width: 200px;
  height: 37px;
  opacity: 1;
  background: var(--gold);
  -webkit-mask: var(--noc-el-rule) center / contain no-repeat;
  mask: var(--noc-el-rule) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] #welcome .rule + p::before {
  /* the welcome's own flame, over the rule's wick (the rule is masked, so it can't carry it) */
  content: "";
  position: absolute;
  left: calc(50% - 3.5px);
  margin-top: calc(-1.6rem - 37px + 5.4px - 13px);
  width: 7px;
  height: 13px;
  border-radius: 50% 50% 50% 50% / 64% 64% 36% 36%;
  background: var(--noc-flame);
  box-shadow: var(--noc-halo);
  transform-origin: 50% 100%;
  transition:
    opacity 0.9s ease 0.9s,
    transform 0.9s var(--noc-ease) 0.9s;
}
:root[data-kit="candlelit-nocturne"].noc-motion #welcome:not(.noc-in) .rule + p::before {
  opacity: 0;
  transform: scale(0.2, 0.1);
}
:root[data-kit="candlelit-nocturne"].noc-motion #welcome.noc-in.noc-on .rule + p::before {
  animation: noc-breathe 3.2s ease-in-out 1.8s infinite;
}

/* ---------- Countdown: a night band; five candlesticks, each taper burned to a different height, light one by one
   over the numerals ---------- */
:root[data-kit="candlelit-nocturne"] #countdown {
  --noc-bg:
    radial-gradient(60% 70% at 50% 34%, rgba(242, 184, 90, 0.12), transparent 70%),
    var(--noc-img-velvet) center / 600px repeat, var(--noc-night);
  --noc-blend: normal, screen, normal;
  max-width: none;
  padding-top: clamp(4.5rem, 11vh, 7rem);
  padding-bottom: clamp(4rem, 10vh, 6rem);
}
:root[data-kit="candlelit-nocturne"] #countdown::before {
  content: "";
  display: block;
  width: min(15rem, 66vw);
  aspect-ratio: 240 / 150;
  margin: 0 auto 1.6rem;
  background: var(--noc-gold);
  opacity: 0.9;
  -webkit-mask: var(--noc-el-candles) center / 100% 100% no-repeat;
  mask: var(--noc-el-candles) center / 100% 100% no-repeat;
}
/* Their flames (motion.ts): a box laid exactly over the candlesticks, one flame per wick (elements/candles.json). */
:root[data-kit="candlelit-nocturne"] #countdown .noc-cdl {
  position: absolute;
  top: clamp(4.5rem, 11vh, 7rem);
  left: 50%;
  width: min(15rem, 66vw);
  aspect-ratio: 240 / 150;
  transform: translateX(-50%);
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] .noc-cdl i {
  width: 8px;
  height: 15px;
  margin: -15px 0 0 -4px; /* bottom-centre of the flame on the wick */
}
:root[data-kit="candlelit-nocturne"].noc-motion .noc-cdl i:not(.on) {
  opacity: 0;
  transform: scale(0.2, 0.1);
}
:root[data-kit="candlelit-nocturne"] #countdown .lf-num {
  font-family: var(--font-headings);
  font-weight: 300;
  font-variant-numeric: lining-nums proportional-nums;
  font-size: calc(clamp(4.6rem, 16vw, 7rem) * var(--headings-scale, 1));
  letter-spacing: 0.01em;
  color: var(--noc-night-text) !important;
  text-shadow: 0 0 40px rgba(242, 184, 90, 0.18);
}
:root[data-kit="candlelit-nocturne"] #countdown .eyebrow {
  margin-top: 0.8rem;
  margin-bottom: 0;
}

/* ---------- Story: fieldstone ground, the veil on the iron chair in a lancet beside the timeline ---------- */
:root[data-kit="candlelit-nocturne"] #story {
  --noc-bg: var(--noc-img-stone) center / 760px repeat, var(--ink);
  --noc-blend: multiply;
  --noc-img: var(--noc-img-veil);
}
:root[data-kit="candlelit-nocturne"] #story::before {
  margin-bottom: 5.6rem; /* room for the divider above the eyebrow */
}
@media (min-width: 900px) {
  :root[data-kit="candlelit-nocturne"] #story {
    display: grid;
    grid-template-columns: minmax(13rem, 16rem) 1fr;
    column-gap: clamp(3rem, 6vw, 5.5rem);
    align-items: start;
  }
  :root[data-kit="candlelit-nocturne"] #story > * {
    grid-column: 2;
  }
  :root[data-kit="candlelit-nocturne"] #story::before {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
    width: 100%;
    margin: 0;
  }
}
/* Story markers: a small pointed arch on the spine (the tapers are kept for the day). */
:root[data-kit="candlelit-nocturne"] .lf-tl::before,
:root[data-kit="candlelit-nocturne"] .lf-sched::before {
  width: 1px;
  background: linear-gradient(var(--gold), color-mix(in srgb, var(--gold) 12%, transparent));
}
:root[data-kit="candlelit-nocturne"] .lf-tl li::before {
  left: 2px;
  top: 5px;
  width: 11px;
  height: 15px;
  border: 0;
  transform: none;
  background: var(--gold);
  -webkit-mask: var(--noc-el-lancet) center / contain no-repeat;
  mask: var(--noc-el-lancet) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] .lf-tl li::after {
  display: none;
}
:root[data-kit="candlelit-nocturne"] .lf-when {
  color: var(--noc-oxblood);
}
:root[data-kit="candlelit-nocturne"] .lf-tl h3,
:root[data-kit="candlelit-nocturne"] .lf-sched h3 {
  font-size: calc(1.75rem * var(--headings-scale, 1));
}

/* ---------- The day: a night band; a taper on the spine for every event, lit as it reaches the middle of the
   screen; the candlelit dinner in the ruin in a lancet ---------- */
:root[data-kit="candlelit-nocturne"] #day {
  --noc-bg:
    radial-gradient(70% 60% at 30% 40%, rgba(242, 184, 90, 0.07), transparent 70%),
    var(--noc-img-velvet) center / 600px repeat, var(--noc-night);
  --noc-blend: normal, screen, normal;
  --noc-img: var(--noc-img-dinner);
}
:root[data-kit="candlelit-nocturne"] #day::before {
  margin-bottom: 5.6rem; /* room for the divider above the eyebrow; on the section, not in the list, so the
                            schedule's spine never runs past the photograph (and the grid layout gets it too) */
}
:root[data-kit="candlelit-nocturne"] .lf-sched li::before {
  left: 0;
  top: -2px;
  width: 15px;
  height: 37px;
  border: 0;
  transform: none;
  background: var(--gold);
  -webkit-mask: var(--noc-el-taper) center / contain no-repeat;
  mask: var(--noc-el-taper) center / contain no-repeat;
}
/* The taper's flame: wick top at (50%, 6.5 / 40 of the taper). */
:root[data-kit="candlelit-nocturne"] .lf-sched li::after {
  left: calc(7.5px - 3.5px);
  top: calc(-2px + 6px - 13px);
}
:root[data-kit="candlelit-nocturne"].noc-motion .lf-sched li:not(.noc-lit)::after {
  opacity: 0;
  transform: scale(0.2, 0.1);
}
:root[data-kit="candlelit-nocturne"] .lf-sched li {
  padding-left: 2.6rem;
}
:root[data-kit="candlelit-nocturne"] .lf-time {
  color: var(--gold);
}
:root[data-kit="candlelit-nocturne"] #day .item {
  padding-top: 1.2rem;
  border-top: 1px solid color-mix(in srgb, var(--gold) 35%, transparent);
}
:root[data-kit="candlelit-nocturne"] #day .item .when {
  color: var(--gold);
}
@media (min-width: 760px) {
  :root[data-kit="candlelit-nocturne"] .lf-sched li {
    padding-left: 0;
  }
  :root[data-kit="candlelit-nocturne"] .lf-sched li::before {
    left: calc(9.5rem - 7px);
  }
  :root[data-kit="candlelit-nocturne"] .lf-sched li::after {
    left: calc(9.5rem - 7px + 4px);
  }
}
@media (min-width: 960px) {
  :root[data-kit="candlelit-nocturne"] #day {
    padding-right: calc(var(--gutter) + 18rem);
  }
  :root[data-kit="candlelit-nocturne"] #day::before {
    position: absolute;
    right: var(--gutter);
    top: 50%;
    translate: 0 -50%;
    width: 15rem;
    margin: 0;
  }
}

/* ---------- Dress code: parchment ground; night cards (ivory on nocturne) with a double gilt frame and briar
   corners; the boutonniere on velvet in a lancet as one more cell ---------- */
:root[data-kit="candlelit-nocturne"] #dress-code {
  --gold: #4f5b33; /* moss, a shade deeper: the eyebrow keeps 4.86:1 on textured parchment (5.47 plain) */
  --noc-bg: var(--noc-img-paper) center / 820px repeat, var(--ink-2);
  --noc-blend: multiply;
  --noc-img: var(--noc-img-boutonniere);
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-cards::after,
:root[data-kit="candlelit-nocturne"] #registry .lf-links::after {
  align-self: center;
  width: min(13.5rem, 58vw);
  margin: 0 auto;
  order: -1;
}
@media (min-width: 760px) {
  :root[data-kit="candlelit-nocturne"] #dress-code .lf-cards::after {
    order: 0;
  }
  /* Registry: the gift and the rings between the two cards. */
  :root[data-kit="candlelit-nocturne"] #registry .lf-links::after {
    order: 1;
  }
  :root[data-kit="candlelit-nocturne"] #registry .lf-links > :nth-child(n + 2) {
    order: 2;
  }
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card {
  position: relative;
  padding: 2.6rem 2.1rem 2.4rem;
  background:
    radial-gradient(90% 60% at 50% 0%, rgba(242, 184, 90, 0.08), transparent 70%),
    var(--noc-img-velvet) center / 500px repeat,
    var(--noc-night);
  background-blend-mode: normal, screen, normal;
  border: 1px solid color-mix(in srgb, var(--noc-gold) 55%, transparent);
  border-radius: 0;
  box-shadow:
    inset 0 0 0 6px var(--noc-night),
    inset 0 0 0 7px color-mix(in srgb, var(--noc-gold) 32%, transparent),
    0 24px 50px -30px rgba(22, 19, 20, 0.8);
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card p {
  color: var(--muted);
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card::before,
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card::after,
:root[data-kit="candlelit-nocturne"] #rsvp form::before,
:root[data-kit="candlelit-nocturne"] #rsvp form::after {
  content: "";
  position: absolute;
  width: 46px;
  height: 46px;
  background: var(--noc-gold);
  -webkit-mask: var(--noc-el-corner) center / contain no-repeat;
  mask: var(--noc-el-corner) center / contain no-repeat;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] #rsvp form::before,
:root[data-kit="candlelit-nocturne"] #rsvp form::after {
  background: color-mix(in srgb, var(--noc-oxblood) 85%, var(--noc-velvet));
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card::before,
:root[data-kit="candlelit-nocturne"] #rsvp form::before {
  top: -7px;
  left: -7px;
}
:root[data-kit="candlelit-nocturne"] #dress-code .lf-card::after,
:root[data-kit="candlelit-nocturne"] #rsvp form::after {
  right: -7px;
  bottom: -7px;
  transform: rotate(180deg);
}
:root[data-kit="candlelit-nocturne"] .lf-swatches {
  gap: 0.6rem;
}
:root[data-kit="candlelit-nocturne"] .lf-swatches li {
  width: 24px;
  height: 34px;
  border-radius: 12px 12px 0 0 / 18px 18px 0 0;
  border-color: color-mix(in srgb, var(--cream) 40%, transparent);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.12);
}

/* ---------- Travel: the lantern on the road up to the castle, text on a wax plaque ---------- */
:root[data-kit="candlelit-nocturne"] #travel {
  --noc-bg: var(--noc-img-road) 30% 50% / cover no-repeat, var(--noc-night);
  max-width: 46rem;
  padding: clamp(8.5rem, 19vh, 11.5rem) clamp(2rem, 6vw, 4.5rem) clamp(7rem, 18vh, 11rem);
  text-align: center;
}
:root[data-kit="candlelit-nocturne"] #travel p {
  margin-left: auto;
  margin-right: auto;
}

/* ---------- Hotels: fieldstone ground, wax cards with a double frame and a small lancet finial ---------- */
:root[data-kit="candlelit-nocturne"] #hotels {
  --noc-bg: var(--noc-img-stone) center / 760px repeat, var(--ink);
  --noc-blend: multiply;
}
:root[data-kit="candlelit-nocturne"] #hotels .lf-card,
:root[data-kit="candlelit-nocturne"] #registry .lf-card {
  position: relative;
  justify-items: center;
  text-align: center;
  padding: 3rem 1.8rem 2.2rem;
  border-radius: 0;
  background: var(--noc-wax);
  border: 1px solid color-mix(in srgb, var(--gold) 45%, transparent);
  box-shadow:
    inset 0 0 0 5px var(--noc-wax),
    inset 0 0 0 6px color-mix(in srgb, var(--gold) 26%, transparent),
    0 22px 44px -30px rgba(30, 26, 26, 0.55);
}
:root[data-kit="candlelit-nocturne"] #hotels .lf-card::before,
:root[data-kit="candlelit-nocturne"] #registry .lf-card::before {
  /* lancet finial, standing on the top edge */
  content: "";
  position: absolute;
  top: -15px;
  left: 50%;
  width: 22px;
  height: 30px;
  transform: translateX(-50%);
  background: var(--gold);
  -webkit-mask: var(--noc-el-frame) center / contain no-repeat;
  mask: var(--noc-el-frame) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] .lf-cards {
  gap: 1.8rem;
}

/* ---------- Stay: rag paper with one faint rose in the corner ---------- */
:root[data-kit="candlelit-nocturne"] #stay {
  --noc-bg: var(--noc-img-paper) center / 820px repeat, var(--ink);
  --noc-blend: multiply;
}
:root[data-kit="candlelit-nocturne"] #stay::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: 4%;
  bottom: 1.5rem;
  width: min(120px, 26vw);
  aspect-ratio: 40 / 64;
  background: var(--noc-oxblood);
  opacity: 0.12;
  transform: rotate(-18deg);
  -webkit-mask: var(--noc-el-rose) center / contain no-repeat;
  mask: var(--noc-el-rose) center / contain no-repeat;
}

/* ---------- FAQ: stone ledger rows; each question has a taper that lights when it opens ---------- */
:root[data-kit="candlelit-nocturne"] #faq {
  --noc-bg: var(--noc-img-stone) center / 760px repeat, var(--ink);
  --noc-blend: multiply;
}
:root[data-kit="candlelit-nocturne"] .lf-acc {
  border-top: 1px solid color-mix(in srgb, var(--gold) 50%, transparent);
}
:root[data-kit="candlelit-nocturne"] .lf-acc details {
  border-bottom: 1px solid color-mix(in srgb, var(--gold) 32%, transparent);
  transition: background-color 0.4s ease;
}
:root[data-kit="candlelit-nocturne"] .lf-acc details[open] {
  background: color-mix(in srgb, var(--noc-wax) 80%, transparent);
  box-shadow: inset 2px 0 0 var(--noc-oxblood);
}
:root[data-kit="candlelit-nocturne"] .lf-acc summary {
  padding: 1.3rem 1rem 1.3rem 1rem;
  font-size: calc(1.45rem * var(--headings-scale, 1));
  font-weight: 500;
  transition: color 0.2s ease;
}
:root[data-kit="candlelit-nocturne"] .lf-acc summary:hover {
  color: var(--noc-oxblood);
}
:root[data-kit="candlelit-nocturne"] .lf-acc details p {
  padding: 0 1rem;
}
:root[data-kit="candlelit-nocturne"] .lf-acc summary i {
  flex: 0 0 14px;
  height: 34px;
}
:root[data-kit="candlelit-nocturne"] .lf-acc summary i::before {
  top: 0;
  left: 0;
  right: auto;
  width: 14px;
  height: 34px;
  background: var(--gold);
  transform: none;
  -webkit-mask: var(--noc-el-taper) center / contain no-repeat;
  mask: var(--noc-el-taper) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] .lf-acc summary i::after {
  top: calc(5.5px - 13px);
  left: calc(7px - 3.5px);
  right: auto;
  height: 13px;
  transform: scale(0.2, 0.1);
  opacity: 0;
}
:root[data-kit="candlelit-nocturne"] .lf-acc details[open] summary i::after {
  opacity: 1;
  transform: none;
}

/* ---------- Registry: rag paper, wax cards that lift, the gift in black paper and the rings between them ---------- */
:root[data-kit="candlelit-nocturne"] #registry {
  --noc-bg: var(--noc-img-paper) center / 820px repeat, var(--ink);
  --noc-blend: multiply;
  --noc-img: var(--noc-img-gift);
}
:root[data-kit="candlelit-nocturne"] a.lf-card {
  transition:
    transform 0.4s var(--noc-ease),
    box-shadow 0.4s var(--noc-ease),
    border-color 0.25s ease;
}
:root[data-kit="candlelit-nocturne"] a.lf-card:hover {
  transform: translateY(-4px);
  border-color: var(--gold);
  box-shadow:
    inset 0 0 0 5px var(--noc-wax),
    inset 0 0 0 6px color-mix(in srgb, var(--gold) 40%, transparent),
    0 30px 50px -28px rgba(30, 26, 26, 0.65);
}
:root[data-kit="candlelit-nocturne"] a.lf-card:active {
  transform: translateY(-1px);
}
:root[data-kit="candlelit-nocturne"] a.lf-card:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 4px;
}

/* ---------- RSVP: the castle doorway by candlelight, a wax plaque, the train through the lancet ---------- */
:root[data-kit="candlelit-nocturne"] #rsvp {
  --noc-bg: var(--noc-img-door) 70% 60% / cover no-repeat, var(--noc-night);
  max-width: 44rem;
  padding: clamp(6.5rem, 14vh, 8.5rem) clamp(1.5rem, 5vw, 4rem) clamp(7rem, 16vh, 10rem);
}
/* The doorway (motion.ts): a lancet window on the castle door above the heading. The train is drawn over the
   threshold and into the passage once as the RSVP arrives, then the window rests on the empty doorway. Poster
   still under reduced motion and Save-Data. The span is the photograph's lancet inside the frame (lancet-frame.svg:
   left 5%, top 11.52%, width 90%, height 88.48%). */
:root[data-kit="candlelit-nocturne"] #rsvp .noc-door {
  position: relative;
  width: min(13rem, 56vw);
  aspect-ratio: 320 / 434;
  margin: 0 auto 4.6rem;
}
:root[data-kit="candlelit-nocturne"] #rsvp .noc-door > span {
  position: absolute;
  left: 5%;
  top: 11.52%;
  width: 90%;
  height: 88.48%;
  overflow: hidden;
  background: var(--noc-night);
  -webkit-mask: var(--noc-el-lancet) center / 100% 100% no-repeat;
  mask: var(--noc-el-lancet) center / 100% 100% no-repeat;
}
:root[data-kit="candlelit-nocturne"] #rsvp .noc-door :is(video, img) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 74%;
}
:root[data-kit="candlelit-nocturne"] #rsvp .noc-door::after {
  content: "";
  position: absolute;
  inset: 0;
  background: color-mix(in srgb, var(--noc-velvet) 72%, var(--noc-gold));
  -webkit-mask: var(--noc-el-frame) center / 100% 100% no-repeat;
  mask: var(--noc-el-frame) center / 100% 100% no-repeat;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] #rsvp form {
  position: relative;
  gap: 1.1rem;
  margin-top: 2.2rem;
  padding: 2.3rem clamp(1.2rem, 4vw, 2.3rem) 2.1rem;
  background: var(--noc-wax);
  border: 1px solid color-mix(in srgb, var(--gold) 45%, transparent);
  box-shadow:
    inset 0 0 0 5px var(--noc-wax),
    inset 0 0 0 6px color-mix(in srgb, var(--gold) 24%, transparent);
}
:root[data-kit="candlelit-nocturne"] main label {
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 0.92rem;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.18em;
  color: var(--muted);
}
:root[data-kit="candlelit-nocturne"] main input,
:root[data-kit="candlelit-nocturne"] main select {
  font-family: var(--noc-text);
  font-weight: 400;
  font-size: 1.125rem;
  font-variant-caps: normal;
  letter-spacing: 0;
  text-transform: none;
  color: var(--noc-velvet);
  background-color: #fffdf9;
  border: 1px solid color-mix(in srgb, var(--noc-velvet) 50%, #fffdf9);
  border-radius: 0;
  min-height: 48px;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}
:root[data-kit="candlelit-nocturne"] main input::placeholder {
  color: color-mix(in srgb, var(--noc-velvet) 62%, #fffdf9);
  font-style: italic;
}
:root[data-kit="candlelit-nocturne"] main input:hover,
:root[data-kit="candlelit-nocturne"] main select:hover {
  border-color: color-mix(in srgb, var(--noc-velvet) 75%, #fffdf9);
}
:root[data-kit="candlelit-nocturne"] main input:focus,
:root[data-kit="candlelit-nocturne"] main select:focus {
  outline: none;
  border-color: var(--noc-moss);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--noc-moss) 26%, transparent);
}
:root[data-kit="candlelit-nocturne"] main input:focus-visible,
:root[data-kit="candlelit-nocturne"] main select:focus-visible {
  outline: 2px solid var(--noc-moss);
  outline-offset: 2px;
}
:root[data-kit="candlelit-nocturne"] main select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 2.6rem;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--noc-oxblood) 50%),
    linear-gradient(135deg, var(--noc-oxblood) 50%, transparent 50%);
  background-position:
    calc(100% - 20px) 52%,
    calc(100% - 14px) 52%;
  background-size: 6px 6px;
  background-repeat: no-repeat;
}
:root[data-kit="candlelit-nocturne"] #rsvp form:has(.noc-seal, .noc-pressed) {
  padding-bottom: 4.4rem; /* room under the reply line for the seal or the pressed rose */
}
:root[data-kit="candlelit-nocturne"] #rsvp .note {
  font-family: var(--noc-text);
  font-style: italic;
  font-size: 1.05rem;
  color: var(--noc-velvet);
}

/* ---------- Buttons: primary (oxblood, square, Crimson small caps), secondary (gold hairline), link ---------- */
:root[data-kit="candlelit-nocturne"] main .btn {
  position: relative;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6em;
  min-height: 48px;
  padding: 0.85rem 2rem 0.95rem;
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 1.08rem;
  font-variant-caps: all-small-caps;
  letter-spacing: 0.2em;
  text-transform: none;
  color: var(--noc-velvet);
  background: transparent;
  /* antique gilt, deep enough to mark the button (5.73:1 on ivory); the inner hairline is the bright gold */
  border: 1px solid color-mix(in srgb, var(--noc-gold) 45%, var(--noc-velvet));
  border-radius: 0;
  box-shadow:
    inset 0 0 0 3px var(--noc-ivory),
    inset 0 0 0 4px color-mix(in srgb, var(--noc-gold) 55%, transparent);
  transition:
    background-color 0.35s ease,
    color 0.35s ease,
    transform 0.15s ease,
    box-shadow 0.35s ease;
}
:root[data-kit="candlelit-nocturne"] main .btn:hover {
  background: var(--noc-oxblood);
  color: var(--noc-on-oxblood);
  border-color: var(--noc-oxblood);
  box-shadow:
    inset 0 0 0 3px var(--noc-oxblood),
    inset 0 0 0 4px color-mix(in srgb, var(--noc-gold) 60%, transparent);
}
:root[data-kit="candlelit-nocturne"] main .btn:active {
  transform: translateY(1px);
}
:root[data-kit="candlelit-nocturne"] main .btn:focus-visible {
  outline: 2px solid var(--noc-moss);
  outline-offset: 4px;
}
/* Primary: the RSVP submit. Oxblood, a candle-warm glow rising from below on hover, pressed on click. */
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"] {
  width: 100%;
  margin-top: 0.8rem;
  color: var(--noc-on-oxblood);
  background: var(--noc-oxblood);
  border-color: var(--noc-oxblood);
  box-shadow:
    inset 0 0 0 3px var(--noc-oxblood),
    inset 0 0 0 4px color-mix(in srgb, var(--noc-gold) 50%, transparent),
    0 12px 26px -14px rgba(70, 18, 26, 0.85);
}
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(70% 120% at 50% 120%, rgba(246, 196, 106, 0.32), transparent 70%);
  opacity: 0;
  transform: translateY(30%);
  transition:
    opacity 0.6s ease,
    transform 0.8s var(--noc-ease);
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]:hover {
  background: var(--noc-oxblood-deep);
  border-color: var(--noc-oxblood-deep);
  box-shadow:
    inset 0 0 0 3px var(--noc-oxblood-deep),
    inset 0 0 0 4px color-mix(in srgb, var(--noc-gold) 65%, transparent),
    0 16px 30px -14px rgba(70, 18, 26, 0.95);
}
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]:hover::after {
  opacity: 1;
  transform: none;
}
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]:active {
  transform: translateY(1px);
  box-shadow:
    inset 0 2px 7px rgba(0, 0, 0, 0.4),
    inset 0 0 0 4px color-mix(in srgb, var(--noc-gold) 35%, transparent);
}
:root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]:focus-visible {
  outline-color: var(--noc-oxblood);
}
:root[data-kit="candlelit-nocturne"] main button.btn:disabled {
  opacity: 0.6;
}
/* Link: small caps in oxblood with an underline that draws in. */
:root[data-kit="candlelit-nocturne"] main .lf-link {
  display: inline-block;
  padding-bottom: 3px;
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 1rem;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.16em;
  color: var(--noc-oxblood);
  background: linear-gradient(currentColor, currentColor) 0 100% / 0% 1px no-repeat;
  transition: background-size 0.45s var(--noc-ease);
}
:root[data-kit="candlelit-nocturne"] main a:hover .lf-link,
:root[data-kit="candlelit-nocturne"] main a.lf-link:hover,
:root[data-kit="candlelit-nocturne"] main a.lf-link:focus-visible {
  background-size: 100% 1px;
}
:root[data-kit="candlelit-nocturne"] main a.lf-link:focus-visible {
  outline: 2px solid var(--noc-moss);
  outline-offset: 3px;
}

/* ---------- Footer: the stair after the wedding (candles burned low, still lit; the veil left on the steps),
   under the nocturne; the monogram in a wreath of thorns and roses ---------- */
:root[data-kit="candlelit-nocturne"] footer {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  isolation: isolate;
  min-height: clamp(26rem, 66vh, 36rem);
  padding-top: 4.5rem;
  color: var(--noc-night-muted);
  background:
    linear-gradient(
      180deg,
      var(--noc-night) 0%,
      rgba(22, 19, 20, 0.3) 22%,
      rgba(22, 19, 20, 0.08) 48%,
      rgba(22, 19, 20, 0.82) 80%,
      var(--noc-night) 100%
    ),
    var(--noc-img-after) 58% 82% / cover no-repeat,
    var(--noc-night);
  border-top: 0;
  font-family: var(--noc-text);
  font-size: 1rem;
}
:root[data-kit="candlelit-nocturne"] footer::before {
  content: "";
  display: block;
  width: 96px;
  height: 96px;
  margin: 0 auto 1.2rem;
  background: var(--noc-gold);
  -webkit-mask: var(--noc-el-wreath) center / contain no-repeat;
  mask: var(--noc-el-wreath) center / contain no-repeat;
}
/* The couple's monogram inside the wreath: motion.ts writes the initials to data-mono (one blackletter initial
   each); without it this box is empty and takes no room (its negative margin cancels its height). */
:root[data-kit="candlelit-nocturne"] footer::after {
  content: attr(data-mono);
  order: -1;
  display: grid;
  place-items: center;
  width: 96px;
  height: 96px;
  margin: calc(-96px - 1.2rem) auto 1.2rem;
  font-family: var(--noc-accent);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--noc-gold);
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] footer::before {
  order: -2;
}
:root[data-kit="candlelit-nocturne"] footer .brand {
  font-family: var(--noc-text);
  font-weight: 600;
  font-size: 1rem;
  font-variant-caps: all-small-caps;
  text-transform: none;
  letter-spacing: 0.34em;
  color: var(--noc-gold);
}

/* ---------- Motion hooks (motion.ts) ---------- */
/* Drifting rose petals (welcome, RSVP, footer). */
:root[data-kit="candlelit-nocturne"] .noc-petals {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  overflow: hidden;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] .noc-petals i,
:root[data-kit="candlelit-nocturne"] .noc-burst .petal {
  position: absolute;
  width: 15px;
  height: 12px;
  border-radius: 70% 30% 70% 30% / 60% 40% 60% 40%;
  background: radial-gradient(ellipse at 35% 35%, #8f3442, var(--noc-rose) 52%, #3d0f17);
  box-shadow: inset 0 0 0 0.5px rgba(0, 0, 0, 0.2);
  will-change: transform;
}
:root[data-kit="candlelit-nocturne"] .noc-petals i {
  opacity: 0.75;
}
/* RSVP sent (accept): oxblood and ivory petals rise from the button and fall. */
:root[data-kit="candlelit-nocturne"] .noc-burst {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] .noc-burst i {
  position: absolute;
  left: 0;
  top: 0;
  margin: -6px 0 0 -8px;
  will-change: transform, opacity;
}
:root[data-kit="candlelit-nocturne"] .noc-burst .petal.ivory {
  background: radial-gradient(ellipse at 35% 35%, #fffdf8, #f2ebe0 60%, #dccfbd);
  box-shadow:
    0 2px 4px rgba(30, 26, 26, 0.2),
    inset 0 0 0 0.5px rgba(30, 26, 26, 0.12);
}
/* The seal: the wax pools first, then the stamp presses the couple's initials (one blackletter initial each) into
   it inside a ring of thorns and roses. */
:root[data-kit="candlelit-nocturne"] .noc-seal {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: -48px;
  width: 96px;
  height: 96px;
  margin-left: -48px;
  pointer-events: none;
}
:root[data-kit="candlelit-nocturne"] .noc-seal .pool {
  position: absolute;
  inset: -7px -9px -8px -6px;
  border-radius: 52% 48% 55% 45% / 47% 56% 44% 53%;
  background: radial-gradient(circle at 42% 38%, #7e2834, var(--noc-oxblood) 55%, #3b0e15);
  box-shadow: 0 8px 16px -6px rgba(40, 8, 14, 0.6);
}
:root[data-kit="candlelit-nocturne"] .noc-seal .stamp {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 50%, transparent 60%, rgba(30, 6, 10, 0.25) 63%, transparent 67%),
    radial-gradient(circle at 36% 30%, #8a2f3c, var(--noc-oxblood) 48%, var(--noc-oxblood-deep) 100%);
  box-shadow:
    inset 0 -3px 6px rgba(30, 6, 10, 0.45),
    inset 0 2px 3px rgba(255, 190, 196, 0.25);
}
:root[data-kit="candlelit-nocturne"] .noc-seal .stamp::before {
  /* the wreath pressed into the wax */
  content: "";
  position: absolute;
  inset: 7px;
  background: rgba(30, 6, 10, 0.5);
  -webkit-mask: var(--noc-el-wreath) center / contain no-repeat;
  mask: var(--noc-el-wreath) center / contain no-repeat;
}
:root[data-kit="candlelit-nocturne"] .noc-seal b {
  position: relative;
  font-family: var(--noc-accent);
  font-weight: 500;
  font-size: 1.45rem;
  line-height: 1;
  color: rgba(34, 6, 11, 0.62);
  text-shadow:
    0 1px 0 rgba(255, 186, 194, 0.32),
    0 -1px 0 rgba(20, 2, 6, 0.4);
  transform: translateY(-1px);
}
/* Decline: nothing celebrates. A single pressed rose comes to rest on the card's edge, beside the couple's line. */
:root[data-kit="candlelit-nocturne"] .noc-pressed {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: -30px;
  width: 44px;
  height: 70px;
  margin-left: -22px;
  background: var(--noc-oxblood);
  -webkit-mask: var(--noc-el-rose) center / contain no-repeat;
  mask: var(--noc-el-rose) center / contain no-repeat;
  transform: rotate(-24deg);
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  :root[data-kit="candlelit-nocturne"] section.block > h2::before,
  :root[data-kit="candlelit-nocturne"] section.block > h2::after,
  :root[data-kit="candlelit-nocturne"] :is(.lf-tl, .lf-sched) li::after,
  :root[data-kit="candlelit-nocturne"] .lf-acc summary i::after,
  :root[data-kit="candlelit-nocturne"] .noc-cdl i,
  :root[data-kit="candlelit-nocturne"] #welcome .rule + p::before,
  :root[data-kit="candlelit-nocturne"] main .btn,
  :root[data-kit="candlelit-nocturne"] main button.btn[type="submit"]::after,
  :root[data-kit="candlelit-nocturne"] a.lf-card,
  :root[data-kit="candlelit-nocturne"] .lf-acc details,
  :root[data-kit="candlelit-nocturne"] main .lf-link,
  :root[data-kit="candlelit-nocturne"] .lf-still .noc-loop {
    transition: none;
    animation: none !important;
  }
  :root[data-kit="candlelit-nocturne"].noc-motion section.block:not(.noc-in) > h2::before {
    clip-path: inset(0);
  }
  :root[data-kit="candlelit-nocturne"].noc-motion section.block:not(.noc-in) > h2::after,
  :root[data-kit="candlelit-nocturne"].noc-motion .lf-sched li:not(.noc-lit)::after,
  :root[data-kit="candlelit-nocturne"].noc-motion .noc-cdl i:not(.on),
  :root[data-kit="candlelit-nocturne"].noc-motion #welcome:not(.noc-in) .rule + p::before {
    opacity: 1;
    transform: none;
  }
  :root[data-kit="candlelit-nocturne"] a.lf-card:hover {
    transform: none;
  }
}
