/* Cover · Split (round 34): the photo on top, the names large across its lower edge, then date and place in a ruled
   two-column row. */
html .inv .xc-split { position: relative; min-height: 100svh; display: flex; flex-direction: column; padding: 0; overflow: hidden; text-align: left; background: var(--bg); color: var(--ink); }
html .inv .xc-split .xc-ph { position: relative; flex: none; height: 58svh; margin: 0; border-radius: 0; overflow: hidden; }
html .inv .xc-split .xc-ph img, html .inv .xc-split .xc-ph video { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0; }
html .inv .xc-split .xc-noph { position: absolute; inset: 0; background: color-mix(in srgb, var(--accent) 35%, var(--bg)); }
html .inv .xc-split .xc-in { position: relative; z-index: 1; width: 100%; max-width: 720px; margin: -.9em auto 0; padding: 0 var(--gutter) 56px; font-size: clamp(2.4rem, min(15vw, calc(112vw / var(--nl, 6) / var(--cw, 1))), 6rem); }
html .inv .xc-split .hero-t { margin: 0; font-family: var(--display); font-weight: 400; font-size: 1em; line-height: .9; letter-spacing: -.02em; color: var(--ink); }
html .inv .xc-split .hero-t span { display: inline; } .xc-split .hero-t span:first-child { display: block; text-shadow: 0 0 1px var(--bg); }
html .inv .xc-split .hero-t i { font-family: var(--script, var(--display)); font-size: .55em; font-style: italic; color: var(--accent); margin-right: .12em; }
html .inv .xc-split .hero-k, html .inv .xc-split .hero-line, html .inv .xc-split .xc-row, html .inv .xc-split .hero-cta, html .inv .xc-split .hero-guest { font-size: 1rem; }
html .inv .xc-split .hero-k { order: 2; margin: 14px 0 0; font-size: .74rem; letter-spacing: .24em; text-transform: uppercase; color: var(--accent); }
html .inv .xc-split .xc-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 18px 0 14px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
html .inv .xc-split .xc-row > div { padding: 10px 12px 10px 0; } .xc-split .xc-row > div + div { padding-left: 12px; border-left: 1px solid var(--ink); }
html .inv .xc-split .xc-row dt { font-size: .66rem; letter-spacing: .2em; text-transform: uppercase; color: var(--accent); }
html .inv .xc-split .xc-row dd { margin: 2px 0 0; font-size: .92rem; }
html .inv .xc-split .hero-line { margin: 0 0 18px; color: var(--muted); }
html .inv .xc-split .hero-cta { margin: 0; }

html .inv .xc::before, html .inv .xc::after { display: none; }
html .inv .xc .hero-media-tag { display: none; }   /* the sample photos carry their own watermark */
html .inv .xc :is(.xc-ph, .xc-stamp, .xc-round) { position: relative; overflow: hidden; }
html .inv .xc :is(.xc-ph, .xc-stamp, .xc-round) .cm-media { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: 0; opacity: 1; transform: none; }
html .inv .xc-split > .xc-ph, html .inv .xc-split > .xc-in { align-self: stretch; width: 100%; }
html .inv .xc-split > .xc-in { max-width: 720px; align-self: center; }
html .inv .xc .hero-t span, html .inv .xc .hero-t i { padding: 0; margin-left: 0; text-indent: 0; transform: none; }
html.t-hotel { --cw: 1.5; }   /* a very wide display face */
html .inv .xc-split > .xc-in { display: flex; flex-direction: column; align-items: flex-start; }   /* so the kicker sits under the names, clear of the photo */
html .inv .xc-split .hero-guest { order: 0; } html .inv .xc-split .hero-t { order: 1; align-self: stretch; } html .inv .xc-split .xc-row { order: 3; align-self: stretch; } html .inv .xc-split .hero-line { order: 4; } html .inv .xc-split .hero-cta { order: 5; }
html .inv .xc-split > .xc-ph::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 32%; z-index: 1; pointer-events: none; background: linear-gradient(to bottom, transparent, color-mix(in srgb, var(--bg) 70%, transparent) 55%, var(--bg)); }   /* the first name stays legible on any photo */
