.sfs-occasion-twinkle-stage{perspective:1200px;background:#11141c}
.sfs-occasion-twinkle-stage .sfo-twinkle-film{position:absolute;left:0;top:52%;width:100%;height:auto;aspect-ratio:16/9;transform:translateY(-54.444444%);pointer-events:none;z-index:0}
.sfs-occasion-twinkle-stage .sfr-lining{position:absolute;left:13.6%;right:13.6%;top:1.3%;height:64%;z-index:1;background:linear-gradient(var(--sfr-paper-start,#efeadc),var(--sfr-paper-end,#d9d2c2));pointer-events:none}
.ecard-player[data-sf-leaving-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-anniversary-reveal="1"] .media-watermark[hidden]{display:none!important}
.ecard-player[data-sf-leaving-reveal="1"] .journey-object.is-complete,.ecard-player[data-sf-anniversary-reveal="1"] .journey-object.is-complete{display:none!important}

.ecard-player[data-sf-congratulations-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-congratulations-reveal="1"] .journey-object.is-complete{display:none!important}

.ecard-player[data-sf-remembrance-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-remembrance-reveal="1"] .journey-object.is-complete{display:none!important}
.sfs-illustrated-poem .sfs2-poem{padding:0}.sfs-illustrated-poem .sfs2-words{height:100%;max-height:100%;width:100%;white-space:normal}.sfs-illustrated-poem .sfs2-words img{width:100%;height:100%;object-fit:contain}.sfs-illustrated-poem .sfs2-poem small{display:none}

.ecard-player .page-quote.sf-illustrated-remembrance{background:#fffaf0!important;padding:0!important}.ecard-player .page-quote.sf-illustrated-remembrance>.quote-page-image{inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;border:0!important;border-radius:0!important;box-shadow:none!important}.ecard-player .page-quote.sf-illustrated-remembrance>.gold-frame,.ecard-player .page-quote.sf-illustrated-remembrance>.page-sky{display:none!important}

.sfo-new-baby-stage{background:#7c9bc0 url('/images/cards/new-baby/sf-new-baby-stork-sky-20261101.webp') center/cover no-repeat}.sfo-new-baby-stage .sfo-twinkle-film{mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent)}
.ecard-player[data-sf-new-baby-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-new-baby-reveal="1"] .journey-object.is-complete{display:none!important}

.sfo-remembrance-reference-stage{background:#7a9dc3 url('/images/cards/love-remembrance/sf-remembrance-reference-sky-20261101.webp?v=2') center/cover no-repeat}.sfo-remembrance-reference-stage .sfo-twinkle-film{mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent)}

.sfo-congratulations-reference-stage{background:#000}

/* Soft full-frame scenery: retain the foreground motifs and chosen stationery. */
.sfo-soft-anniversary{isolation:isolate;background:radial-gradient(ellipse at 50% 48%,#24436b 0%,#172a48 44%,#121b30 100%)}
.sfo-soft-leaving{isolation:isolate;background:radial-gradient(ellipse at 45% 45%,#31515a80 0%,transparent 67%),linear-gradient(145deg,#19363d 0%,#283d4b 51%,#3a304a 100%)}
:is(.sfo-soft-anniversary,.sfo-soft-leaving) .sfo-twinkle-film{mix-blend-mode:lighten}
.sfo-soft-stars{position:absolute;inset:0;pointer-events:none;z-index:0;background:
radial-gradient(circle at 14% 18%,#e2e8ff99 0 1px,transparent 2px),
radial-gradient(circle at 78% 24%,#e2e8ff88 0 1px,transparent 2px),
radial-gradient(circle at 31% 12%,#f5e9c288 0 1px,transparent 2px),
radial-gradient(circle at 89% 59%,#e2e8ff77 0 1px,transparent 2px),
radial-gradient(circle at 12% 67%,#f5e9c277 0 1px,transparent 2px),
radial-gradient(circle at 27% 82%,#e2e8ff88 0 1px,transparent 2px),
radial-gradient(circle at 74% 76%,#e2e8ff88 0 1px,transparent 2px),
radial-gradient(circle at 63% 15%,#f5e9c277 0 1px,transparent 2px),
radial-gradient(circle at 86% 88%,#e2e8ff77 0 1px,transparent 2px),
radial-gradient(circle at 48% 91%,#e2e8ff77 0 1px,transparent 2px);animation:sfo-soft-star-breathe 5.5s ease-in-out infinite alternate}
@keyframes sfo-soft-star-breathe{from{opacity:.2}to{opacity:.6}}
@media(prefers-reduced-motion:reduce){.sfo-soft-stars{animation:none;opacity:.35}}

/* Keep illustrated poem artwork below the turning cover, within its own page. */
:is(.sfo-new-baby-stage,.sfo-remembrance-reference-stage) .sfs2-poem{z-index:0;isolation:isolate}
:is(.sfo-new-baby-stage,.sfo-remembrance-reference-stage) .sfs2-words img{position:static;inset:auto;z-index:auto;display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;border-radius:0;box-shadow:none}

/* Get Well puppy intro ends before any sample stationery; native chosen card follows. */
.sfo-get-well-puppy-stage{background:#efe3e9}
.sfo-get-well-puppy-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%}
.sfo-get-well-puppy-stage .sfs2-caption{color:#62505e;text-shadow:0 1px 5px #fff}
.sfo-get-well-puppy-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-get-well-puppy-stage .sfs2-words img{position:static;inset:auto;z-index:auto}
.sfo-puppy-burst{position:absolute;left:50%;top:52%;width:0;height:0;z-index:4;pointer-events:none;opacity:0;color:#ffdf79;filter:drop-shadow(0 0 5px #fff0b5)}
.sfo-puppy-burst span{position:absolute;left:0;top:0;line-height:1;transform:rotate(var(--spark-angle)) translateX(var(--spark-radius)) rotate(calc(-1 * var(--spark-angle)));text-shadow:0 0 9px #fff}
.ecard-player[data-sf-get-well-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-get-well-reveal="1"] .journey-object.is-complete{display:none!important}

/* Retirement party footage ends before its sample gift opening/card. */
.sfo-retirement-party-stage{background:#f4e9dc}
.sfo-retirement-party-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%}
.sfo-retirement-party-stage .sfs2-caption{color:#67543f;text-shadow:0 1px 5px #fff}
.sfo-retirement-party-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-retirement-party-stage .sfs2-words img{position:static;inset:auto;z-index:auto}
.ecard-player[data-sf-retirement-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-retirement-reveal="1"] .journey-object.is-complete{display:none!important}

/* Approved clean meadow: full portrait video contains no sample stationery. */
.sfo-leaving-meadow-stage{background:#eac5a5}
.sfo-leaving-meadow-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;transform:none;mix-blend-mode:normal}
.sfo-leaving-meadow-stage .sfs2-caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sfo-leaving-meadow-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-leaving-meadow-stage .sfs2-words img{position:static;inset:auto;z-index:auto}

/* Peaceful lake and two stars: entire source width stays visible. */
.sfo-remembrance-lake-stage{background:#142438}
.sfo-remembrance-lake-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;transform:none;mix-blend-mode:normal}
.sfo-remembrance-lake-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-remembrance-lake-stage .sfs2-words img{position:static;inset:auto;z-index:auto}

/* Wedding penguins: full source width, then the actual chosen stationery. */
.sfo-wedding-penguins-stage{background:#e7f0f5}
.sfo-wedding-penguins-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%}
.sfo-wedding-penguins-stage .sfs2-caption{color:#556577;text-shadow:0 1px 5px #fff}
.sfo-wedding-penguins-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-wedding-penguins-stage .sfs2-words img{position:static;inset:auto;z-index:auto}
.ecard-player[data-sf-wedding-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-wedding-reveal="1"] .journey-object.is-complete{display:none!important}

/* Retirement beach frog and travel bag, followed by selected stationery. */
.sfo-retirement-beach-stage{background:#f7edda}
.sfo-retirement-beach-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%}
.sfo-retirement-beach-stage .sfs2-caption{color:#67543f;text-shadow:0 1px 5px #fff}
.sfo-retirement-beach-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-retirement-beach-stage .sfs2-words img{position:static;inset:auto;z-index:auto}

/* Someone Special: bunny and star become the chosen matching stationery. */
.sfo-special-bunny-stage{background:#10253e}
.sfo-special-bunny-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%}
.sfo-special-bunny-stage .sfs2-caption{color:#fff1cf;text-shadow:0 1px 5px #10253e}
.sfo-special-bunny-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-special-bunny-stage .sfs2-words img{position:static;inset:auto;z-index:auto}
.ecard-player[data-sf-special-reveal="1"] .media-watermark[hidden],.ecard-player[data-sf-special-reveal="1"] .journey-object.is-complete{display:none!important}

/* Anniversary lovebirds and heart-shaped leaf lead into chosen stationery. */
.sfo-anniversary-lovebirds-stage{background:#e8efdc}
.sfo-anniversary-lovebirds-stage .sfo-twinkle-film{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;transform-origin:50% 52%;mix-blend-mode:normal}
.sfo-anniversary-lovebirds-stage .sfs2-caption{color:#3e5946;text-shadow:0 1px 5px #fff}
.sfo-anniversary-lovebirds-stage .sfs2-poem{z-index:0;isolation:isolate}
.sfo-anniversary-lovebirds-stage .sfs2-words img{position:static;inset:auto;z-index:auto}
