/* Ikhaya cover v2: a fixed, no-scroll cover and one frame system for the 15 Luxe looks.
   Loads after ikhaya-frame-fix.css.  ikhaya-cover-fit.js measures the screen and sets --fw / --fh / --cs;
   without JavaScript the dvh fallbacks below still give a sensible, non-overlapping layout. */

/* ---------- 1. the cover never scrolls; logo and menu keep their own band at the top ---------- */
.cover.kc:not(.kts) .cvcard {
  overflow: hidden !important;
  box-sizing: border-box !important;
  height: 100% !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  padding: calc(72px + env(safe-area-inset-top, 0px)) 20px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
}
/* text block: scaled as one piece when the screen is short (--cs), so nothing is ever cut off */
.cover.kc:not(.kts) .cvtxt {
  flex: none !important;
  width: calc(100% / var(--cs, 1)) !important;
  max-width: calc(420px / var(--cs, 1)) !important;
  margin: 0 0 calc((var(--cs, 1) - 1) * var(--txh, 0px)) 0 !important;
  padding: 0 !important;
  transform: scale(var(--cs, 1));
  transform-origin: 50% 0;
}
.cover.kc:not(.kts) .tapo { margin-top: 14px !important; }

/* ---------- 2. every photo frame: a fixed box the photo fills, centred, never taller than its slot ---------- */
.cover.kc:not(.kts):not(.np) .cvph {
  flex: none !important;
  position: relative !important;
  isolation: isolate;
  box-sizing: border-box !important;
  width: var(--fw, clamp(150px, 27vh, 270px)) !important;
  height: var(--fh, clamp(190px, 34vh, 340px)) !important;
  max-width: none !important; max-height: none !important;
  aspect-ratio: auto !important;
  margin: var(--fr-ovt, 10px) 0 var(--fr-ovb, 10px) !important;
  padding: 0 !important;
}
@supports (height: 1dvh) {
  .cover.kc:not(.kts):not(.np) .cvph { width: var(--fw, clamp(150px, 27dvh, 270px)) !important; height: var(--fh, clamp(190px, 34dvh, 340px)) !important; }
}
.cover.kc:not(.kts):not(.np) .cvph > img {
  display: block !important;
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  max-width: none !important; max-height: none !important;
  object-fit: cover !important;
  object-position: center 24% !important;
  clip-path: none !important;
}

/* ---------- 3. the 15 Luxe frames (shape = border-radius, so photo, mat and ring always match) ---------- */
html[data-ik-theme^="luxe-"] .cover.kc:not(.kts):not(.np) .cvph {
  --fr-br: 18px; --fr-rim: 7px; --fr-ov: 12px; --fr-rmin: .82; --fr-rmax: 1.1;
  --fr-mat: #fff; --fr-line: var(--acc); --fr-sh: 0 18px 30px -14px rgba(0,0,0,.45);
  border: 0 !important; background: none !important; box-shadow: none !important; transform: none !important;
  filter: none !important; overflow: visible !important;
  border-radius: var(--fr-br) !important;
}
html[data-ik-theme^="luxe-"] .cover.kc:not(.kts):not(.np) .cvph > img {
  border-radius: var(--fr-br) !important; box-shadow: none !important;
  clip-path: none !important;   /* the old polygon cut-outs (octagon, scallop, petals) are retired */
}
/* mat + hairline (::before) */
html[data-ik-theme^="luxe-"] .cover.kc:not(.kts):not(.np) .cvph::before {
  content: "" !important; display: block !important; position: absolute !important;
  inset: calc(var(--fr-rim) * -1) !important; z-index: -1 !important;
  border: 0 !important; transform: none !important; clip-path: none !important;
  border-radius: var(--fr-br) !important;
  background: var(--fr-mat) !important;
  box-shadow: 0 0 0 1.5px var(--fr-line), var(--fr-sh) !important;
}
/* ornament (::after) is off unless a theme turns it on */
html[data-ik-theme^="luxe-"] .cover.kc:not(.kts):not(.np) .cvph::after {
  content: "" !important; display: none !important; position: absolute !important; pointer-events: none !important;
  inset: auto !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important;
  width: auto !important; height: auto !important; margin: 0 !important; background: none !important; border: 0 !important;
  border-radius: 0 !important; box-shadow: none !important; transform: none !important; clip-path: none !important;
  -webkit-mask-image: none !important; mask-image: none !important; z-index: -2 !important; opacity: 1 !important;
  font-size: 0 !important; color: transparent !important;
}

/* 1 botanical: arch with a leaf ring */
html[data-ik-theme="luxe-botanical"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 999px 999px 22px 22px; --fr-ov: 20px; --fr-rmax: .88; --fr-mat: #fbfaf4; --fr-line: #647b61; }
html[data-ik-theme="luxe-botanical"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -17px !important; border: 1px solid rgba(100,123,97,.5) !important; border-radius: 999px 999px 32px 32px !important; }
/* 2 emerald: gilded rectangle, triple line */
html[data-ik-theme="luxe-emerald"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 3px; --fr-rim: 6px; --fr-ov: 16px; --fr-mat: #0d2a24; --fr-line: #d5b16b; --fr-sh: 0 22px 38px -14px rgba(0,0,0,.7); }
html[data-ik-theme="luxe-emerald"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -14px !important; border: 1px solid rgba(213,177,107,.7) !important; border-radius: 3px !important; }
/* 3 champagne: rounded rectangle, passe-partout line inside the photo */
html[data-ik-theme="luxe-champagne"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 20px; --fr-ov: 14px; --fr-mat: #fffdf8; --fr-line: #bd985f; }
html[data-ik-theme="luxe-champagne"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: 8px !important; z-index: 2 !important; border: 1px solid rgba(255,255,255,.75) !important; border-radius: 13px !important; }
/* 4 blush: tall capsule with a dotted ring */
html[data-ik-theme="luxe-blush"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 999px; --fr-ov: 20px; --fr-rmin: .62; --fr-rmax: .8; --fr-mat: #fff; --fr-line: #bd7c89; }
html[data-ik-theme="luxe-blush"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -18px !important; border: 2px dotted rgba(167,94,112,.55) !important; border-radius: 999px !important; }
/* 5 noir: sharp rectangle, double gold outline */
html[data-ik-theme="luxe-noir"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 0px; --fr-rim: 5px; --fr-ov: 16px; --fr-mat: #17171d; --fr-line: #d0ad6a; --fr-sh: 0 24px 40px -14px rgba(0,0,0,.8); }
html[data-ik-theme="luxe-noir"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -15px !important; border: 1px solid rgba(208,173,106,.55) !important; }
/* 6 sage: leaf (mirrored) */
html[data-ik-theme="luxe-sage"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 0 64% 0 64% / 0 50% 0 50%; --fr-ov: 18px; --fr-rmin: .8; --fr-rmax: 1; --fr-mat: #f9fbf6; --fr-line: #5a7460; }
html[data-ik-theme="luxe-sage"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -16px !important; border: 1px solid rgba(90,116,96,.5) !important; border-radius: 0 64% 0 64% / 0 50% 0 50% !important; }
/* 7 sapphire: portrait oval with sparkles */
html[data-ik-theme="luxe-sapphire"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 50%; --fr-ov: 26px; --fr-rmin: .74; --fr-rmax: .88; --fr-mat: #14224a; --fr-line: #cad7ee; --fr-sh: 0 22px 40px -14px rgba(0,0,0,.7); }
html[data-ik-theme="luxe-sapphire"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -26px !important; z-index: -2 !important;
  background: radial-gradient(circle at 6% 20%,#dbe7ff 1.6px,transparent 2.8px), radial-gradient(circle at 94% 12%,#fff 1.3px,transparent 2.4px), radial-gradient(circle at 92% 80%,#c9dbff 1.8px,transparent 3px), radial-gradient(circle at 10% 88%,#fff 1.3px,transparent 2.4px), radial-gradient(circle at 50% 0%,#fff 1.5px,transparent 2.6px), radial-gradient(circle at 50% 100%,#dbe7ff 1.5px,transparent 2.6px) !important; }
/* 8 pearl: circle with a bead ring */
html[data-ik-theme="luxe-pearl"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 50%; --fr-ov: 22px; --fr-ar: 1; --fr-mat: #fff; --fr-line: #cfb49b; }
html[data-ik-theme="luxe-pearl"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -16px !important; border: 5px dotted #d8c4b0 !important; border-radius: 50% !important; }
/* 9 marigold: arch under a sun-ray fan */
html[data-ik-theme="luxe-marigold"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 999px 999px 18px 18px; --fr-ovt: 34px; --fr-ovb: 10px; --fr-ov: 22px; --fr-rmax: .9; --fr-mat: #fff8e6; --fr-line: #8e6825; }
html[data-ik-theme="luxe-marigold"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -34px -26px 45% -26px !important; z-index: -2 !important;
  background: repeating-conic-gradient(from -90deg at 50% 100%, rgba(224,167,60,.6) 0 4deg, transparent 4deg 15deg) !important;
  -webkit-mask-image: radial-gradient(ellipse at 50% 100%, #000 40%, transparent 72%) !important; mask-image: radial-gradient(ellipse at 50% 100%, #000 40%, transparent 72%) !important; }
/* 10 olive: leaf */
html[data-ik-theme="luxe-olive"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 64% 0 64% 0 / 50% 0 50% 0; --fr-ov: 18px; --fr-rmin: .8; --fr-rmax: 1; --fr-mat: #f9f8ee; --fr-line: #637244; }
html[data-ik-theme="luxe-olive"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -16px !important; border: 1px solid rgba(99,114,68,.5) !important; border-radius: 64% 0 64% 0 / 50% 0 50% 0 !important; }
/* 11 cobalt: squircle on a blue wash */
html[data-ik-theme="luxe-cobalt"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 30% / 24%; --fr-ov: 24px; --fr-rmin: .8; --fr-rmax: 1.1; --fr-mat: #fff; --fr-line: #4565a7; }
html[data-ik-theme="luxe-cobalt"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -12px -22px -12px -22px !important; z-index: -2 !important;
  background: linear-gradient(100deg, rgba(69,101,167,.9), rgba(110,142,205,.75)) !important; border-radius: 46% 54% 50% 50% / 30% 34% 66% 70% !important; transform: rotate(4deg) !important; }
/* 12 lilac: soft egg with a glow */
html[data-ik-theme="luxe-lilac"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 50% 50% 50% 50% / 40% 40% 60% 60%; --fr-ov: 26px; --fr-rmin: .78; --fr-rmax: .95; --fr-mat: #fdf9ff; --fr-line: #81638e; }
html[data-ik-theme="luxe-lilac"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -30px !important; z-index: -2 !important; background: radial-gradient(circle, rgba(190,150,215,.5), transparent 68%) !important; border-radius: 50% !important; }
/* 13 ruby: arch with a ruby seal on the lower edge */
html[data-ik-theme="luxe-ruby"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 999px 999px 18px 18px; --fr-ovt: 10px; --fr-ovb: 32px; --fr-ov: 20px; --fr-rmax: .9; --fr-mat: #3a1620; --fr-line: #e0aaa5; --fr-sh: 0 22px 38px -14px rgba(0,0,0,.75); }
html[data-ik-theme="luxe-ruby"] .cover.kc:not(.kts):not(.np) .cvph::after { content: "\2766" !important; display: grid !important; place-items: center !important; z-index: 3 !important;
  left: 50% !important; bottom: -30px !important; width: 46px !important; height: 46px !important; margin-left: -23px !important; border-radius: 50% !important;
  background: radial-gradient(circle at 35% 30%, #e0586c, #8a1630 70%) !important; box-shadow: 0 6px 14px rgba(0,0,0,.5), inset 0 0 0 3px rgba(255,205,205,.25) !important;
  color: rgba(255,226,222,.92) !important; font-size: 19px !important; }
/* 14 sand: soft tablet */
html[data-ik-theme="luxe-sand"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 44px; --fr-ov: 14px; --fr-rmin: .72; --fr-rmax: 1; --fr-mat: #fbf6ec; --fr-line: #866541; }
html[data-ik-theme="luxe-sand"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -13px !important; border: 1px solid rgba(134,101,65,.45) !important; border-radius: 55px !important; }
/* 15 terracotta: boho rainbow arch */
html[data-ik-theme="luxe-terracotta"] .cover.kc:not(.kts):not(.np) .cvph { --fr-br: 999px 999px 0 0; --fr-ov: 24px; --fr-rmax: .9; --fr-mat: #fff6f0; --fr-line: #ad5b49; }
html[data-ik-theme="luxe-terracotta"] .cover.kc:not(.kts):not(.np) .cvph::after { display: block !important; inset: -13px !important; border-radius: 999px 999px 0 0 !important;
  box-shadow: 0 0 0 1px rgba(173,91,73,.7), 0 0 0 7px var(--bg), 0 0 0 8.5px rgba(209,140,119,.8) !important; }

/* ---------- v39: the editorial presets (velvet, royal, champagne + the heritage trio) ----------
   They lay the cover out as a grid whose photo row was a fixed 42vh. On a phone the name block and the
   "Tap to open" button then ran off the bottom of the screen (on some it was not visible at all).
   The photo row now takes whatever space is left, so the whole cover always fits on one screen. */
html[data-ik-theme="ethereal-velvet"] .cover.kc:not(.kts) .cvcard,
html[data-ik-theme="royal-heritage"] .cover.kc:not(.kts) .cvcard,
html[data-ik-theme="champagne-celebration"] .cover.kc:not(.kts) .cvcard,
html[data-ik-theme="ubuntu-heritage"] .cover.kc:not(.kts) .cvcard,
html[data-ik-theme="zulu-beadwork"] .cover.kc:not(.kts) .cvcard,
html[data-ik-theme="ndebele-joy"] .cover.kc:not(.kts) .cvcard {
  grid-template-rows: minmax(60px, 1fr) auto auto !important;
  grid-auto-rows: auto !important;
}
/* the fitting script sizes a photo by measuring the text block, but in these presets the text block has no box of
   its own (its lines are grid rows), so it measured 0 and the photo was made too tall. Let the grid size the photo. */
html[data-ik-theme="ethereal-velvet"] .cover.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="royal-heritage"] .cover.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="champagne-celebration"] .cover.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="ubuntu-heritage"] .cover.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="zulu-beadwork"] .cover.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="ndebele-joy"] .cover.kc:not(.kts):not(.np) .cvph {
  width: min(94%, 400px) !important;
  height: auto !important;
  align-self: stretch !important;
}


/* ---------- v45: the in-page cover (above Order / Gallery / RSVP / Venue / Gifts) ----------
   It grows with its content, so it must not use the fixed-screen rules above (height:100%, overflow:hidden, centred,
   --fw/--fh from the fitting script). Those collapsed the photo frame to its 96px minimum, worst while scrolling
   (the browser toolbar resizes the window). Here the frame is sized by CSS from the screen WIDTH only, using its own
   variables (--gw, --gr) that nothing else writes. --gr (photo shape) is set by ikhaya-cover-fit.js; .82 is the default. */
.cover.gcv.kc:not(.kts) .cvcard {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  justify-content: flex-start !important;
  padding: 26px 20px 22px !important;
}
.cover.gcv.kc:not(.kts):not(.np) .cvph {
  --gw: min(calc(100vw - 32px - 40px - 2 * var(--fr-ov, 12px)), 300px);
  width: var(--gw) !important;
  height: auto !important;
  aspect-ratio: var(--gr, .82) !important;
  max-height: none !important;
}


/* ============================================================================
   IKHAYA THEME COLLECTION v47 · 15 new looks
   Five funeral, five celebration and five general themes.
   Each theme is token-led so the same cover anatomy stays accessible while
   the mood, frame, typography, scrim and accents change together.
   ============================================================================ */
html[data-ik-theme="funeral-obsidian"][data-theme]{color-scheme:dark;--bg:#0d0f14;--ink:#eef2f6;--mute:#aeb8c5;--acc:#b8c4d2;--acc2:#aeb8c5;--on:#0d0f14;--glow:#aeb8c533;--kc-bg:linear-gradient(160deg,#171c25,#080a0e);--kc-ink:#eef2f6;--kc-mute:#aeb8c5;--kc-accent:#b8c4d2}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts){background:linear-gradient(160deg,#171c25,#080a0e);color:#eef2f6}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#0d0f1400 0%,#0d0f1400 40%,#0d0f14d6 64%,#0d0f14f5 100%)}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts):not(.np) .cvph{border:2px solid #aeb8c5;border-radius:3px !important;box-shadow:0 0 0 5px #0d0f14,0 0 0 6px #aeb8c5;background:linear-gradient(160deg,#171c25,#080a0e);overflow:hidden}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .cvtxt small{color:#b8c4d2;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .cvtxt h1{color:#eef2f6;text-shadow:0 2px 18px #0d0f1499}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .cvtxt .cvm{color:#aeb8c5}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts) .tapo{background:#b8c4d2;color:#0d0f14;border:1px solid #aeb8c5;box-shadow:0 12px 28px #aeb8c555}

html[data-ik-theme="funeral-ivory"][data-theme]{color-scheme:light;--bg:#fffaf0;--ink:#4b3a2b;--mute:#765d44;--acc:#9e784c;--acc2:#765d44;--on:#fffaf0;--glow:#765d4433;--kc-bg:linear-gradient(160deg,#fffaf0,#ead9bf);--kc-ink:#4b3a2b;--kc-mute:#765d44;--kc-accent:#9e784c}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts){background:linear-gradient(160deg,#fffaf0,#ead9bf);color:#4b3a2b}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#fffaf000 0%,#fffaf000 40%,#fffaf0d6 64%,#fffaf0f5 100%)}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #9e784c;border-radius:22px !important;box-shadow:0 0 0 5px #fffaf0,0 0 0 6px #bd9560;background:linear-gradient(160deg,#fffaf0,#ead9bf);overflow:hidden}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .cvtxt small{color:#9e784c;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .cvtxt h1{color:#4b3a2b;text-shadow:0 2px 18px #fffaf099}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .cvtxt .cvm{color:#765d44}
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts) .tapo{background:#9e784c;color:#fffaf0;border:1px solid #765d44;box-shadow:0 12px 28px #765d4455}

html[data-ik-theme="funeral-sage"][data-theme]{color-scheme:light;--bg:#f7fbf5;--ink:#31483a;--mute:#5c7a64;--acc:#78947a;--acc2:#5c7a64;--on:#f7fbf5;--glow:#5c7a6433;--kc-bg:linear-gradient(160deg,#e7eee8,#9bb39f);--kc-ink:#31483a;--kc-mute:#5c7a64;--kc-accent:#78947a}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts){background:linear-gradient(160deg,#e7eee8,#9bb39f);color:#31483a}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#f7fbf500 0%,#f7fbf500 40%,#f7fbf5d6 64%,#f7fbf5f5 100%)}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #78947a;border-radius:34px !important;box-shadow:0 0 0 5px #f7fbf5,0 0 0 6px #78947a;background:linear-gradient(160deg,#e7eee8,#9bb39f);overflow:hidden}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .cvtxt small{color:#78947a;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .cvtxt h1{color:#31483a;text-shadow:0 2px 18px #f7fbf599}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .cvtxt .cvm{color:#5c7a64}
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts) .tapo{background:#78947a;color:#f7fbf5;border:1px solid #5c7a64;box-shadow:0 12px 28px #5c7a6455}

html[data-ik-theme="funeral-candlelight"][data-theme]{color-scheme:dark;--bg:#1b120d;--ink:#fff1cf;--mute:#d99d4c;--acc:#d99d4c;--acc2:#d99d4c;--on:#1b120d;--glow:#d99d4c33;--kc-bg:linear-gradient(160deg,#4e2a19,#1b120d);--kc-ink:#fff1cf;--kc-mute:#d99d4c;--kc-accent:#d99d4c}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts){background:linear-gradient(160deg,#4e2a19,#1b120d);color:#fff1cf}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#1b120d00 0%,#1b120d00 40%,#1b120dd6 64%,#1b120df5 100%)}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #d99d4c;border-radius:18px !important;box-shadow:0 0 0 5px #1b120d,0 0 0 6px #d99d4c;background:linear-gradient(160deg,#4e2a19,#1b120d);overflow:hidden}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .cvtxt small{color:#d99d4c;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .cvtxt h1{color:#fff1cf;text-shadow:0 2px 18px #1b120d99}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .cvtxt .cvm{color:#d99d4c}
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts) .tapo{background:#d99d4c;color:#1b120d;border:1px solid #d99d4c;box-shadow:0 12px 28px #d99d4c55}

html[data-ik-theme="funeral-rosewood"][data-theme]{color-scheme:dark;--bg:#241117;--ink:#f7e9df;--mute:#c98985;--acc:#e0aaa5;--acc2:#c98985;--on:#241117;--glow:#c9898533;--kc-bg:linear-gradient(160deg,#542534,#241117);--kc-ink:#f7e9df;--kc-mute:#c98985;--kc-accent:#e0aaa5}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts){background:linear-gradient(160deg,#542534,#241117);color:#f7e9df}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#24111700 0%,#24111700 40%,#241117d6 64%,#241117f5 100%)}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts):not(.np) .cvph{border:2px solid #c98985;border-radius:26px !important;box-shadow:0 0 0 5px #241117,0 0 0 6px #e0aaa5;background:linear-gradient(160deg,#542534,#241117);overflow:hidden}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .cvtxt small{color:#e0aaa5;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .cvtxt h1{color:#f7e9df;text-shadow:0 2px 18px #24111799}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .cvtxt .cvm{color:#c98985}
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts) .tapo{background:#e0aaa5;color:#241117;border:1px solid #c98985;box-shadow:0 12px 28px #c9898555}

html[data-ik-theme="celebration-sunlit"][data-theme]{color-scheme:light;--bg:#fffdf1;--ink:#4d3517;--mute:#b77c20;--acc:#e5ac42;--acc2:#b77c20;--on:#fffdf1;--glow:#b77c2033;--kc-bg:linear-gradient(160deg,#fff8dc,#f1c263);--kc-ink:#4d3517;--kc-mute:#b77c20;--kc-accent:#e5ac42}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts){background:linear-gradient(160deg,#fff8dc,#f1c263);color:#4d3517}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#fffdf100 0%,#fffdf100 40%,#fffdf1d6 64%,#fffdf1f5 100%)}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts):not(.np) .cvph{border:2px solid #d39a32;border-radius:30px !important;box-shadow:0 0 0 5px #fffdf1,0 0 0 6px #d39a32;background:linear-gradient(160deg,#fff8dc,#f1c263);overflow:hidden}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvtxt small{color:#e5ac42;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvtxt h1{color:#4d3517;text-shadow:0 2px 18px #fffdf199}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvtxt .cvm{color:#b77c20}
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .tapo{background:#e5ac42;color:#fffdf1;border:1px solid #b77c20;box-shadow:0 12px 28px #b77c2055}

html[data-ik-theme="celebration-bloom"][data-theme]{color-scheme:light;--bg:#fff7f8;--ink:#5a2939;--mute:#ad5d78;--acc:#ce7f99;--acc2:#ad5d78;--on:#fff7f8;--glow:#ad5d7833;--kc-bg:linear-gradient(160deg,#fff0f3,#e5a5b7);--kc-ink:#5a2939;--kc-mute:#ad5d78;--kc-accent:#ce7f99}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts){background:linear-gradient(160deg,#fff0f3,#e5a5b7);color:#5a2939}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#fff7f800 0%,#fff7f800 40%,#fff7f8d6 64%,#fff7f8f5 100%)}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #c97b94;border-radius:42% !important;box-shadow:0 0 0 5px #fff7f8,0 0 0 6px #c97b94;background:linear-gradient(160deg,#fff0f3,#e5a5b7);overflow:hidden}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvtxt small{color:#ce7f99;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvtxt h1{color:#5a2939;text-shadow:0 2px 18px #fff7f899}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvtxt .cvm{color:#ad5d78}
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .tapo{background:#ce7f99;color:#fff7f8;border:1px solid #ad5d78;box-shadow:0 12px 28px #ad5d7855}

html[data-ik-theme="celebration-cobalt"][data-theme]{color-scheme:dark;--bg:#101d43;--ink:#f4f0e5;--mute:#b4c9ee;--acc:#e8bb5a;--acc2:#b4c9ee;--on:#101d43;--glow:#b4c9ee33;--kc-bg:linear-gradient(160deg,#1a397f,#101d43);--kc-ink:#f4f0e5;--kc-mute:#b4c9ee;--kc-accent:#e8bb5a}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts){background:linear-gradient(160deg,#1a397f,#101d43);color:#f4f0e5}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#101d4300 0%,#101d4300 40%,#101d43d6 64%,#101d43f5 100%)}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts):not(.np) .cvph{border:2px solid #b4c9ee;border-radius:16px !important;box-shadow:0 0 0 5px #101d43,0 0 0 6px #e8bb5a;background:linear-gradient(160deg,#1a397f,#101d43);overflow:hidden}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .cvtxt small{color:#e8bb5a;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .cvtxt h1{color:#f4f0e5;text-shadow:0 2px 18px #101d4399}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .cvtxt .cvm{color:#b4c9ee}
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts) .tapo{background:#e8bb5a;color:#101d43;border:1px solid #b4c9ee;box-shadow:0 12px 28px #b4c9ee55}

html[data-ik-theme="celebration-peach"][data-theme]{color-scheme:light;--bg:#fffaf5;--ink:#5e3a2b;--mute:#ae7055;--acc:#d99a79;--acc2:#ae7055;--on:#fffaf5;--glow:#ae705533;--kc-bg:linear-gradient(160deg,#fff0e7,#e3a383);--kc-ink:#5e3a2b;--kc-mute:#ae7055;--kc-accent:#d99a79}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts){background:linear-gradient(160deg,#fff0e7,#e3a383);color:#5e3a2b}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#fffaf500 0%,#fffaf500 40%,#fffaf5d6 64%,#fffaf5f5 100%)}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #c88467;border-radius:28px !important;box-shadow:0 0 0 5px #fffaf5,0 0 0 6px #d99a79;background:linear-gradient(160deg,#fff0e7,#e3a383);overflow:hidden}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .cvtxt small{color:#d99a79;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .cvtxt h1{color:#5e3a2b;text-shadow:0 2px 18px #fffaf599}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .cvtxt .cvm{color:#ae7055}
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts) .tapo{background:#d99a79;color:#fffaf5;border:1px solid #ae7055;box-shadow:0 12px 28px #ae705555}

html[data-ik-theme="celebration-festive"][data-theme]{color-scheme:dark;--bg:#191033;--ink:#fff5d5;--mute:#d7a04b;--acc:#f2c56c;--acc2:#d7a04b;--on:#191033;--glow:#d7a04b33;--kc-bg:linear-gradient(160deg,#30205e,#191033);--kc-ink:#fff5d5;--kc-mute:#d7a04b;--kc-accent:#f2c56c}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts){background:linear-gradient(160deg,#30205e,#191033);color:#fff5d5}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#19103300 0%,#19103300 40%,#191033d6 64%,#191033f5 100%)}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #d7a04b;border-radius:12px !important;box-shadow:0 0 0 5px #191033,0 0 0 6px #d7a04b;background:linear-gradient(160deg,#30205e,#191033);overflow:hidden}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .cvtxt small{color:#f2c56c;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .cvtxt h1{color:#fff5d5;text-shadow:0 2px 18px #19103399}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .cvtxt .cvm{color:#d7a04b}
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts) .tapo{background:#f2c56c;color:#191033;border:1px solid #d7a04b;box-shadow:0 12px 28px #d7a04b55}

html[data-ik-theme="general-modern"][data-theme]{color-scheme:light;--bg:#f7f9fb;--ink:#263544;--mute:#5e7388;--acc:#8192a5;--acc2:#5e7388;--on:#f7f9fb;--glow:#5e738833;--kc-bg:linear-gradient(160deg,#f3f5f7,#d4dde5);--kc-ink:#263544;--kc-mute:#5e7388;--kc-accent:#8192a5}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts){background:linear-gradient(160deg,#f3f5f7,#d4dde5);color:#263544}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#f7f9fb00 0%,#f7f9fb00 40%,#f7f9fbd6 64%,#f7f9fbf5 100%)}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #8192a5;border-radius:12px !important;box-shadow:0 0 0 5px #f7f9fb,0 0 0 6px #8192a5;background:linear-gradient(160deg,#f3f5f7,#d4dde5);overflow:hidden}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvtxt small{color:#8192a5;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvtxt h1{color:#263544;text-shadow:0 2px 18px #f7f9fb99}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvtxt .cvm{color:#5e7388}
html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .tapo{background:#8192a5;color:#f7f9fb;border:1px solid #5e7388;box-shadow:0 12px 28px #5e738855}

html[data-ik-theme="general-earth"][data-theme]{color-scheme:light;--bg:#faf6ed;--ink:#4c3c2b;--mute:#7a684c;--acc:#9b7a4d;--acc2:#7a684c;--on:#faf6ed;--glow:#7a684c33;--kc-bg:linear-gradient(160deg,#eee8dc,#c6ab82);--kc-ink:#4c3c2b;--kc-mute:#7a684c;--kc-accent:#9b7a4d}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts){background:linear-gradient(160deg,#eee8dc,#c6ab82);color:#4c3c2b}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#faf6ed00 0%,#faf6ed00 40%,#faf6edd6 64%,#faf6edf5 100%)}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #9b7a4d;border-radius:26px !important;box-shadow:0 0 0 5px #faf6ed,0 0 0 6px #9b7a4d;background:linear-gradient(160deg,#eee8dc,#c6ab82);overflow:hidden}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .cvtxt small{color:#9b7a4d;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .cvtxt h1{color:#4c3c2b;text-shadow:0 2px 18px #faf6ed99}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .cvtxt .cvm{color:#7a684c}
html[data-ik-theme="general-earth"] .cover.kc:not(.kts) .tapo{background:#9b7a4d;color:#faf6ed;border:1px solid #7a684c;box-shadow:0 12px 28px #7a684c55}

html[data-ik-theme="general-midnight"][data-theme]{color-scheme:dark;--bg:#10131b;--ink:#eef3ff;--mute:#9db4d9;--acc:#c7d3e8;--acc2:#9db4d9;--on:#10131b;--glow:#9db4d933;--kc-bg:linear-gradient(160deg,#1d2c4c,#10131b);--kc-ink:#eef3ff;--kc-mute:#9db4d9;--kc-accent:#c7d3e8}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts){background:linear-gradient(160deg,#1d2c4c,#10131b);color:#eef3ff}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#10131b00 0%,#10131b00 40%,#10131bd6 64%,#10131bf5 100%)}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #9db4d9;border-radius:6px !important;box-shadow:0 0 0 5px #10131b,0 0 0 6px #c7d3e8;background:linear-gradient(160deg,#1d2c4c,#10131b);overflow:hidden}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .cvtxt small{color:#c7d3e8;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .cvtxt h1{color:#eef3ff;text-shadow:0 2px 18px #10131b99}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .cvtxt .cvm{color:#9db4d9}
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts) .tapo{background:#c7d3e8;color:#10131b;border:1px solid #9db4d9;box-shadow:0 12px 28px #9db4d955}

html[data-ik-theme="general-copper"][data-theme]{color-scheme:dark;--bg:#21120d;--ink:#fff1df;--mute:#d28c55;--acc:#efb77e;--acc2:#d28c55;--on:#21120d;--glow:#d28c5533;--kc-bg:linear-gradient(160deg,#4a281b,#21120d);--kc-ink:#fff1df;--kc-mute:#d28c55;--kc-accent:#efb77e}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts){background:linear-gradient(160deg,#4a281b,#21120d);color:#fff1df}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#21120d00 0%,#21120d00 40%,#21120dd6 64%,#21120df5 100%)}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts):not(.np) .cvph{border:2px solid #d28c55;border-radius:18px !important;box-shadow:0 0 0 5px #21120d,0 0 0 6px #efb77e;background:linear-gradient(160deg,#4a281b,#21120d);overflow:hidden}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .cvtxt small{color:#efb77e;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .cvtxt h1{color:#fff1df;text-shadow:0 2px 18px #21120d99}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .cvtxt .cvm{color:#d28c55}
html[data-ik-theme="general-copper"] .cover.kc:not(.kts) .tapo{background:#efb77e;color:#21120d;border:1px solid #d28c55;box-shadow:0 12px 28px #d28c5555}

html[data-ik-theme="general-heritage"][data-theme]{color-scheme:light;--bg:#fbf6e9;--ink:#263b53;--mute:#8b6d42;--acc:#a88455;--acc2:#8b6d42;--on:#fbf6e9;--glow:#8b6d4233;--kc-bg:linear-gradient(160deg,#f1eadc,#d8c39b);--kc-ink:#263b53;--kc-mute:#8b6d42;--kc-accent:#a88455}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts){background:linear-gradient(160deg,#f1eadc,#d8c39b);color:#263b53}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvimg{filter:saturate(1.04) brightness(.96);transform:none;opacity:1}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts)::after{background:linear-gradient(180deg,#fbf6e900 0%,#fbf6e900 40%,#fbf6e9d6 64%,#fbf6e9f5 100%)}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts):not(.np) .cvph{border:1px solid #a88455;border-radius:20px !important;box-shadow:0 0 0 5px #f1eadc,0 0 0 6px #a88455;background:linear-gradient(160deg,#f1eadc,#d8c39b);overflow:hidden}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts):not(.np) .cvph img{border-radius:inherit;object-fit:cover;object-position:center 22%}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvtxt small{color:#a88455;letter-spacing:.28em;font-weight:700}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvtxt h1{color:#263b53;text-shadow:0 2px 18px #fbf6e999}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvtxt p,html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvtxt .cvm{color:#8b6d42}
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .tapo{background:#a88455;color:#fbf6e9;border:1px solid #8b6d42;box-shadow:0 12px 28px #8b6d4255}

html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts)::before{content:"✦   ·   ✦";position:absolute;z-index:1;top:18%;left:0;right:0;text-align:center;color:#b8c4d244;font:700 18px Georgia;letter-spacing:1.2em} html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts)::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 20% 28%,#f7c663aa 0 2px,transparent 3px),radial-gradient(circle at 80% 34%,#f7c66388 0 2px,transparent 3px),radial-gradient(circle at 50% 12%,#fff2c955 0 2px,transparent 3px);background-size:180px 220px;pointer-events:none} html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts) .cvtxt h1,html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts) .cvtxt h1{font-style:italic} html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts)::before{content:"✦  ✧  ✦  ✧  ✦";position:absolute;z-index:1;top:12%;left:0;right:0;text-align:center;color:#f2c56c55;font-size:22px;letter-spacing:.35em} html[data-ik-theme="general-modern"] .cover.kc:not(.kts) .cvtxt{text-align:left;align-items:flex-start} html[data-ik-theme="general-modern"] .cover.kc:not(.kts):not(.np) .cvph{align-self:center} html[data-ik-theme="general-heritage"] .cover.kc:not(.kts) .cvtxt h1{font-family:Georgia,serif;letter-spacing:.02em}

/* ---------- v47c: new themes show the full-screen photo only (no framed portrait in front) ---------- */
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="general-modern"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="general-earth"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="general-copper"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph,
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvph{display:none !important}
html[data-ik-theme="funeral-obsidian"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="funeral-ivory"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="funeral-sage"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="funeral-candlelight"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="funeral-rosewood"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="celebration-sunlit"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="celebration-bloom"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="celebration-cobalt"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="celebration-peach"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="celebration-festive"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="general-modern"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="general-earth"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="general-midnight"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="general-copper"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard,
html[data-ik-theme="general-heritage"] .cover.kc:not(.kts):not(.np):not(.gcv) .cvcard{justify-content:flex-end !important;padding-bottom:calc(30px + env(safe-area-inset-bottom,0px)) !important}

/* ---------- v47d: in-page cover card (Order / Gallery / RSVP / Venue / Gifts tabs) ----------
   The portrait slot stays as empty space so the photo shows above and the text sits on the veil underneath. */
html[data-ik-theme="funeral-obsidian"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="funeral-ivory"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="funeral-sage"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="funeral-candlelight"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="funeral-rosewood"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="celebration-sunlit"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="celebration-bloom"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="celebration-cobalt"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="celebration-peach"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="celebration-festive"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="general-modern"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="general-earth"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="general-midnight"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="general-copper"] .cover.gcv.kc:not(.kts):not(.np) .cvph,
html[data-ik-theme="general-heritage"] .cover.gcv.kc:not(.kts):not(.np) .cvph{
  display:block !important;visibility:hidden !important;border:0 !important;box-shadow:none !important;
  width:100% !important;height:clamp(280px,46vh,400px) !important;margin:0 !important}
html[data-ik-theme="funeral-obsidian"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#0d0f1400 0%,#0d0f1400 30%,#0d0f14ee 54%,#0d0f14f7 100%)}
html[data-ik-theme="funeral-ivory"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#fffaf000 0%,#fffaf000 30%,#fffaf0ee 54%,#fffaf0f7 100%)}
html[data-ik-theme="funeral-sage"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#f7fbf500 0%,#f7fbf500 30%,#f7fbf5ee 54%,#f7fbf5f7 100%)}
html[data-ik-theme="funeral-candlelight"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#1b120d00 0%,#1b120d00 30%,#1b120dee 54%,#1b120df7 100%)}
html[data-ik-theme="funeral-rosewood"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#24111700 0%,#24111700 30%,#241117ee 54%,#241117f7 100%)}
html[data-ik-theme="celebration-sunlit"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#fffdf100 0%,#fffdf100 30%,#fffdf1ee 54%,#fffdf1f7 100%)}
html[data-ik-theme="celebration-bloom"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#fff7f800 0%,#fff7f800 30%,#fff7f8ee 54%,#fff7f8f7 100%)}
html[data-ik-theme="celebration-cobalt"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#101d4300 0%,#101d4300 30%,#101d43ee 54%,#101d43f7 100%)}
html[data-ik-theme="celebration-peach"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#fffaf500 0%,#fffaf500 30%,#fffaf5ee 54%,#fffaf5f7 100%)}
html[data-ik-theme="celebration-festive"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#19103300 0%,#19103300 30%,#191033ee 54%,#191033f7 100%)}
html[data-ik-theme="general-modern"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#f7f9fb00 0%,#f7f9fb00 30%,#f7f9fbee 54%,#f7f9fbf7 100%)}
html[data-ik-theme="general-earth"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#faf6ed00 0%,#faf6ed00 30%,#faf6edee 54%,#faf6edf7 100%)}
html[data-ik-theme="general-midnight"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#10131b00 0%,#10131b00 30%,#10131bee 54%,#10131bf7 100%)}
html[data-ik-theme="general-copper"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#21120d00 0%,#21120d00 30%,#21120dee 54%,#21120df7 100%)}
html[data-ik-theme="general-heritage"] .cover.gcv.kc:not(.kts):not(.np)::after{background:linear-gradient(180deg,#fbf6e900 0%,#fbf6e900 30%,#fbf6e9ee 54%,#fbf6e9f7 100%)}

/* Live status line on funeral / unveiling covers (v47e) */
.iklv{display:inline-flex;align-items:center;gap:8px;margin:12px auto 0;padding:7px 15px;border:1px solid color-mix(in srgb,currentColor 45%,transparent);border-radius:999px;font-size:13px;letter-spacing:.02em;line-height:1.3;color:inherit;opacity:.92}
.iklv-d{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none;animation:iklvp 2.2s ease-in-out infinite}
@keyframes iklvp{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.iklv-d{animation:none}}
.cover.kc .tapo.iklv-s,.cover.kc:not(.kts) .tapo.iklv-s{background:transparent !important;color:inherit !important;border:1px solid currentColor !important;box-shadow:none !important;margin-top:10px !important}
/* Wedding countdown + gig ticket bar (v47f) */
.iklv-t{display:flex;flex-direction:column;align-items:center;gap:6px;margin:10px auto 0;width:min(240px,80%);color:inherit}
.iklv-b{width:100%;height:6px;border-radius:999px;background:color-mix(in srgb,currentColor 18%,transparent);overflow:hidden}
.iklv-b span{display:block;height:100%;border-radius:999px;background:currentColor;opacity:.85;transition:width .6s ease}
.iklv-t small{font-size:12px;letter-spacing:.03em;opacity:.9}
.iklv-t.out .iklv-b span{opacity:.5}
/* Funeral parlour sponsor on the cover (v47h) */
.iksp{display:flex;flex-direction:column;align-items:center;gap:6px;margin:14px auto 0;max-width:100%;color:inherit}
.iksp-p{background:#fff;border-radius:12px;padding:6px 12px;box-shadow:0 2px 12px #0000002e;display:flex;align-items:center;justify-content:center}
.iksp-p img{display:block;max-height:56px;max-width:170px;width:auto;height:auto;object-fit:contain}
.iksp small{font-size:11px;letter-spacing:.07em;text-transform:uppercase;opacity:.85;text-align:center}
