@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,400;1,500&display=swap');
/* Ruscus: the names sit inside the suite's watercolor wreath like a monogram, nothing else on the page competes with it.
   Laurels above the headings, round medallions for the countdown and round photos follow the wreath; the card's two corners frame the RSVP. */
.esite-skin-ruscus {
  --sk-accent-font: "Cormorant Garamond", Georgia, serif;
  --sk-photo-shape: none;
  --sk-gap: 84px;
  --sk-measure: 900px;
  --sk-ring: min(600px, 74svh, 86vw);
}
.esite-skin-ruscus .ss-h, .esite-skin-ruscus .cl-names, .esite-skin-ruscus .ss-closing-names, .esite-skin-ruscus .cl-brand { letter-spacing: .02em; }

/* ---- hero: the wreath ---- */
.esite-skin-ruscus .hs-classic.no-photo .cl-panel { min-height: min(100svh, 980px); padding: 104px 24px 56px; background: var(--s-bg); }
.esite-skin-ruscus .hs-classic.no-photo .cl-panel::before, .esite-skin-ruscus .hs-classic.no-photo .cl-panel::after { display: none; }
.esite-skin-ruscus .hs-classic.no-photo .cl-panel .h-kicker { margin-bottom: 2px; }
.esite-skin-ruscus .hs-classic.no-photo .cl-names {
  display: grid; place-content: center; justify-items: center; width: var(--sk-ring); aspect-ratio: 1; margin: 0 auto;
  background: var(--sk-wreath, none) 50% 50% / contain no-repeat; font-size: calc(var(--sk-ring) * .105 * var(--s-hscale, 1)); line-height: 1.02;
}
.esite-skin-ruscus .hs-classic.no-photo .cl-names .cn-1, .esite-skin-ruscus .hs-classic.no-photo .cl-names .cn-2 { justify-self: center; padding: 0; }
.esite-skin-ruscus .hs-classic.no-photo .cl-names .cn-amp { margin: .02em 0 .06em; }
.esite-skin-ruscus .hs-classic.no-photo .cl-sub { margin-top: 4px; }
/* beside a photo: the photo is round, a small wreath of corners stays out of the words */
.esite-skin-ruscus .hs-classic:not(.no-photo):not(.hv-cover) .cl-photo { border-radius: 50%; }
.esite-skin-ruscus .hs-classic:not(.no-photo):not(.hv-cover) .cl-visual { aspect-ratio: 1; height: min(62svh, 520px); }
.esite-skin-ruscus .hs-classic:not(.no-photo):not(.hv-cover) .cl-visual::after { inset: -9%; background: var(--sk-wreath, none) 50% 50% / contain no-repeat; }
.esite-skin-ruscus .hs-classic:not(.no-photo):not(.hv-cover) .cl-panel::after { display: none; }
.esite-skin-ruscus .hv-cover:not(.no-photo) .cl-panel::after { background: var(--sk-cluster-a, none) calc(100% + 40px) 60px / clamp(200px, 22vw, 340px) auto no-repeat, var(--sk-cluster-b, none) -40px calc(100% + 30px) / clamp(200px, 22vw, 340px) auto no-repeat; }

/* ---- sections: laurels above the headings, no corner sprays ---- */
.esite-skin-ruscus .ss-scope:not([data-type="hero"]):not([data-type="countdown"]):not([data-type="none"]) .ss-h::before { width: 200px; height: 60px; }
.esite-skin-ruscus .ss-closing::before { width: 230px; height: 70px; }
.esite-skin-ruscus .ss-scope[data-type="schedule"]::before, .esite-skin-ruscus .ss-scope[data-type="story"]::before, .esite-skin-ruscus .ss-scope[data-type="faq"]::before { display: none; }
/* round photos, like the wreath */
.esite-skin-ruscus .ss-story-img { justify-self: center; width: min(100%, 340px); }
.esite-skin-ruscus .ss-story-img img { display: block; width: 100%; height: auto !important; border-radius: 50%; aspect-ratio: 1 !important; object-fit: cover; }
.esite-skin-ruscus .stv-stacked .ss-story-img { width: min(320px, 70%); margin: 0 auto 28px; }

/* ---- countdown: round medallions ---- */
.esite-skin-ruscus .ss-scope[data-type="countdown"]:has(.cdv-tiles) { background-color: var(--sk-sec-bg, var(--s-band)); }
.esite-skin-ruscus .cdv-tiles .ss-cd { display: flex; flex-wrap: nowrap; justify-content: center; gap: clamp(8px, 3vw, 30px); }
.esite-skin-ruscus .cdv-tiles .cd-unit { display: grid; place-content: center; width: clamp(78px, 13vw, 132px); aspect-ratio: 1; padding: 0; border-radius: 50%; background: var(--s-bg); outline: 1px solid var(--sk-line); outline-offset: -7px; }
.esite-skin-ruscus .ss-countdown .cd-n { font-family: var(--s-fhead) !important; }

/* ---- registry: words under a laurel, on the band ---- */
.esite-skin-ruscus .gftv-panel .ss-wrap { aspect-ratio: auto; width: min(620px, 100%); padding: 0; background: none; }
.esite-skin-ruscus .gftv-panel .ss-h::before { display: block !important; }

/* ---- RSVP: the card's corners frame the form ---- */
.esite-skin-ruscus .ss-scope[data-type="rsvp"]::before { top: 0; right: 0; width: clamp(160px, 26vw, 420px); }
.esite-skin-ruscus .ss-scope[data-type="rsvp"]::after { bottom: 0; left: 0; width: clamp(160px, 26vw, 420px); }

@media (max-width: 900px) {
  .esite-skin-ruscus { --sk-ring: min(92vw, 440px); }
  .esite-skin-ruscus .hs-classic.no-photo .cl-panel { min-height: 0; padding: 96px 18px 48px; }
  .esite-skin-ruscus .ss-scope[data-type="rsvp"]::before, .esite-skin-ruscus .ss-scope[data-type="rsvp"]::after { width: 140px; }
}
@media (max-width: 640px) {
  .esite-skin-ruscus .cdv-tiles .ss-cd { flex-wrap: nowrap; gap: 8px; }
  .esite-skin-ruscus .cdv-tiles .cd-unit { width: 21vw; }
}
