/* Bird of Paradise: a garden at the side. On a wide screen the file's card, both plants on its paper, stays fixed in the left two
   fifths of the window and the whole page scrolls past it on the right; on a phone it opens the page as a card. The names are set in
   the suite's brush script, the countdown in big light figures with script labels, and the low flower leans over the RSVP's corner. */
.esite-skin-bird-of-paradise {
  --sk-accent-font: "Playball", cursive;
  --sk-accent-style: normal;
  --sk-photo-shape: none;
  --sk-gap: 88px;
  --sk-measure: 680px;
  --sk-side: clamp(330px, 40vw, 44vw);   /* never so narrow that the flowers are cut: the panel shows the card from its foot */
}
.esite-skin-bird-of-paradise .ss-h, .esite-skin-bird-of-paradise .cl-names, .esite-skin-bird-of-paradise .ss-closing-names { font-weight: 400; letter-spacing: 0; }
.esite-skin-bird-of-paradise .ss-h { font-size: calc(clamp(2.4rem, 3.6vw, 3.2rem) * var(--s-hscale, 1)); }

/* ---- the garden: fixed at the left, the page beside it ---- */
@media (min-width: 901px) {
  .esite-skin-bird-of-paradise::before {
    content: ""; position: fixed; top: 0; bottom: 0; left: 0; z-index: 30; width: var(--sk-side); pointer-events: none;
    background: var(--sk-panel, none) 0 100% / cover no-repeat, var(--s-band);
  }
  .esite-skin-bird-of-paradise > *:not(.esite-preview-bar) { margin-left: var(--sk-side); }
  .esite-skin-bird-of-paradise .cl-nav { left: var(--sk-side); padding: 0 clamp(20px, 3vw, 48px); }
  .esite-skin-bird-of-paradise .cl-links { gap: clamp(12px, 1.6vw, 26px); }
  /* beside the garden the column is narrow: a photo goes above the words, not beside them */
  .esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-panel { grid-template-columns: minmax(0, 1fr); justify-items: center; gap: 28px; padding: 110px clamp(24px, 4vw, 56px) 64px; }
  .esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-visual { order: -1; width: min(100%, 460px); height: auto; aspect-ratio: 4 / 3; }
  .esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-text { text-align: center; }
  .esite-skin-bird-of-paradise .hs-classic:not(.no-photo) .cl-actions { justify-content: center; }
  .esite-skin-bird-of-paradise .ss-story-grid.has-img { grid-template-columns: minmax(0, 1fr) !important; }
  /* a percentage here is of the whole page, not of the column the section stands in */
  .esite-skin-bird-of-paradise .ss-scope:not([data-type="hero"]) { padding-left: max(28px, calc((100% - var(--sk-side) - var(--sk-measure)) / 2)); padding-right: max(28px, calc((100% - var(--sk-side) - var(--sk-measure)) / 2)); }
}

/* ---- hero: the names in brush script beside the garden ---- */
.esite-skin-bird-of-paradise .hs-classic.no-photo .cl-panel { grid-template-columns: minmax(0, 1fr); justify-items: center; min-height: 100svh; padding: 110px clamp(24px, 4vw, 64px) 72px; background: var(--s-bg); }
.esite-skin-bird-of-paradise .hs-classic .cl-panel::before, .esite-skin-bird-of-paradise .hs-classic .cl-panel::after { display: none; }
.esite-skin-bird-of-paradise .cl-panel .h-kicker { font-family: var(--s-fbody); font-size: .8125rem; letter-spacing: .24em; text-transform: uppercase; color: var(--s-text); }
.esite-skin-bird-of-paradise .hs-classic .cl-text::before { content: ""; display: block; width: 92px; height: 92px; margin: 0 auto 10px; background: var(--sk-ornament, none) 50% 50% / contain no-repeat; }
.esite-skin-bird-of-paradise .hs-classic .cl-names { justify-items: center; font-size: calc(clamp(3.6rem, 6.4vw, 6.4rem) * var(--s-hscale, 1)); line-height: 1.05; }
.esite-skin-bird-of-paradise .hs-classic .cl-names .cn-1, .esite-skin-bird-of-paradise .hs-classic .cl-names .cn-2 { justify-self: center; padding: 0; }
.esite-skin-bird-of-paradise .hs-classic .cl-names .cn-amp { margin: .02em 0; font-size: .5em; }
.esite-skin-bird-of-paradise .cl-sub { margin-top: 18px; letter-spacing: .2em; }
.esite-skin-bird-of-paradise .cl-facts b { font-weight: 400; letter-spacing: .14em; }
/* a photo: the photo beside the words, the flower over its corner */
.esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-photo, .esite-skin-bird-of-paradise .ss-story-img img { border-radius: 0; }
.esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-visual { overflow: visible; }
.esite-skin-bird-of-paradise .hs-classic:not(.no-photo):not(.hv-cover) .cl-visual::after { inset: auto -14% -10% auto; width: 54%; aspect-ratio: 1; z-index: 3; border: 0; background: var(--sk-flower-br, none) 100% 100% / contain no-repeat; }
.esite-skin-bird-of-paradise .hs-classic:not(.no-photo) .cl-names { font-size: calc(clamp(3rem, 4.8vw, 5rem) * var(--s-hscale, 1)); }

/* ---- sections: the small flower above the headings, a leaf in a corner now and then ---- */
.esite-skin-bird-of-paradise .ss-scope:not([data-type="hero"]):not([data-type="countdown"]):not([data-type="none"]) .ss-h::before { width: 70px; height: 70px; margin-bottom: 2px; }
.esite-skin-bird-of-paradise .ss-closing::before { width: 110px; height: 110px; }
.esite-skin-bird-of-paradise .ss-scope[data-type="story"]::before, .esite-skin-bird-of-paradise .ss-scope[data-type="schedule"]::before { display: none; }
.esite-skin-bird-of-paradise .ss-scope[data-type="faq"]::before { top: 0; right: 0; left: auto; width: clamp(110px, 10vw, 170px); aspect-ratio: 1 / 1.6; background: var(--sk-leaf-tr, none) 100% 0 / contain no-repeat; }
.esite-skin-bird-of-paradise .ss-scope[data-type="faq"] { background-color: var(--sk-sec-bg, var(--s-band)); }

/* ---- countdown: big light figures, script labels ---- */
.esite-skin-bird-of-paradise .ss-scope[data-type="countdown"]:has(.cdv-boxes) { background-color: var(--sk-sec-bg, var(--s-bg)); color: var(--s-text); }
.esite-skin-bird-of-paradise .cdv-boxes { border: 0; }
.esite-skin-bird-of-paradise .cdv-boxes .ss-h, .esite-skin-bird-of-paradise .cdv-boxes .cd-n { color: var(--s-text); }
.esite-skin-bird-of-paradise .cdv-boxes .ss-h { color: var(--s-accent); }
.esite-skin-bird-of-paradise .cdv-boxes .ss-cd { display: flex; justify-content: center; gap: 0; }
.esite-skin-bird-of-paradise .cdv-boxes .cd-unit { flex: 1; max-width: 150px; display: flex; flex-direction: column; align-items: center; gap: 0; padding: 6px 0; border: 0; background: none; }
.esite-skin-bird-of-paradise .cdv-boxes .cd-unit + .cd-unit { border-left: 0; position: relative; }
.esite-skin-bird-of-paradise .cdv-boxes .cd-unit + .cd-unit::before { content: ""; position: absolute; left: 0; top: 34%; width: 7px; height: 7px; background: var(--s-accent); transform: translate(-50%, -50%) rotate(45deg); }
.esite-skin-bird-of-paradise .ss-countdown .cd-n { font-family: var(--s-fbody) !important; font-weight: 300; font-size: clamp(2.8rem, 5vw, 4.4rem); line-height: 1.05; }
.esite-skin-bird-of-paradise .cdv-boxes .cd-l { font-family: var(--s-fhead); font-size: 1.375rem; letter-spacing: 0; text-transform: none; color: var(--s-accent); opacity: 1; }

/* ---- our story: the words in the body face, the script reads poorly at length ---- */
.esite-skin-bird-of-paradise .ss-al-c .ss-story-grid:not(.has-img) .ss-p { font-family: var(--s-fbody); font-style: normal; font-size: calc(1.125rem * var(--s-bscale, 1)); line-height: 1.75; }

/* ---- the day ---- */
.esite-skin-bird-of-paradise .schv-wide .ss-tl-time { letter-spacing: .14em; text-transform: uppercase; font-size: .8125rem; }
.esite-skin-bird-of-paradise .ss-tl-title { font-family: var(--s-fhead); font-size: 1.6rem; font-weight: 400; }
.esite-skin-bird-of-paradise .ss-faq-q { font-weight: 600; }

/* ---- registry ---- */
.esite-skin-bird-of-paradise .gftv-panel .ss-wrap { aspect-ratio: auto; width: min(560px, 100%); padding: 0; background: none; }
.esite-skin-bird-of-paradise .gftv-panel .ss-h::before { display: block !important; }

/* ---- RSVP: the low flower leaning over the card ---- */
.esite-skin-bird-of-paradise .ss-scope[data-type="rsvp"]::before, .esite-skin-bird-of-paradise .ss-scope[data-type="rsvp"]::after { display: none; }
.esite-skin-bird-of-paradise .ss-rsvp-form { position: relative; max-width: 560px; padding: 48px 40px 40px; border-radius: 0; box-shadow: 0 24px 50px -32px rgba(20, 20, 40, .5); }
.esite-skin-bird-of-paradise .ss-rsvp-form::before { content: ""; position: absolute; top: -70px; right: -60px; width: 170px; aspect-ratio: 1; pointer-events: none; background: var(--sk-flower-br, none) 50% 50% / contain no-repeat; }

@media (max-width: 900px) {
  /* the garden opens the page as a card */
  .esite-skin-bird-of-paradise::before { content: ""; display: block; aspect-ratio: 448 / 624; max-height: 92svh; margin: 0 auto; background: var(--sk-panel, none) 50% 100% / cover no-repeat, var(--s-band); }
  .esite-skin-bird-of-paradise:has(.esite-preview-bar)::before { margin-top: 38px; }
  .esite-skin-bird-of-paradise .hs-classic.no-photo .cl-panel { min-height: 0; padding: 48px 22px 56px; }
  .esite-skin-bird-of-paradise .hs-classic .cl-names { font-size: calc(3.6rem * var(--s-hscale, 1)); }
  .esite-skin-bird-of-paradise .ss-scope[data-type="faq"]::before { display: none; }
  .esite-skin-bird-of-paradise .ss-rsvp-form { padding: 44px 20px 28px; }
  .esite-skin-bird-of-paradise .ss-rsvp-form::before { top: -54px; right: -10px; width: 110px; }
}
@media (max-width: 640px) {
  .esite-skin-bird-of-paradise .ss-countdown .cd-n { font-size: 2.2rem; }
  .esite-skin-bird-of-paradise .cdv-boxes .cd-l { font-size: 1.05rem; }
}
