.royal-update{position:sticky;top:12px;z-index:12;width:min(calc(100% - 24px),620px);margin:-64px auto 24px;padding:18px 22px;border:1px solid #c9a76a80;background:#eadcc2f2;color:#17382f;box-shadow:0 18px 50px #0007}.royal-update b{font:500 22px Cormorant,serif}.royal-update p{margin:5px 0 0;font-size:12px;line-height:1.5}.royal-personal-card{width:min(calc(100% - 32px),620px);margin:54px auto;padding:34px;border:1px solid #c9a76a64;background:linear-gradient(145deg,#123a31,#061814);text-align:center}.royal-personal-card>p{font:400 28px/1.15 Cormorant,serif}.royal-personal-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:24px 0 0;background:#c9a76a45}.royal-personal-card dl div{padding:16px 8px;background:#071d19}.royal-personal-card dt{color:#bbaa8d;font-size:9px}.royal-personal-card dd{margin:7px 0 0;color:var(--gold);font:400 24px Cormorant,serif}.royal-story-scenes{padding:80px 0;background:#020c0a}.royal-story-scenes>h2{margin:0 0 42px;text-align:center;font:400 58px Cormorant,serif}.royal-story-scenes article{position:relative;display:grid;align-items:end;min-height:78svh;padding:50px;background:linear-gradient(#06191422,#061914d9),var(--scene) center/cover}.royal-story-scenes article>div{width:min(100%,430px);padding:30px;border-left:1px solid var(--gold);background:#061914aa}.royal-story-scenes time{color:var(--gold);font-size:11px;letter-spacing:.18em}.royal-story-scenes h3{margin:12px 0;font:400 48px/1 Cormorant,serif}.royal-story-scenes p{line-height:1.7}.royal-route-button{min-height:46px;padding:0 22px;border:1px solid var(--gold);background:transparent;color:var(--paper);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.royal-route-dialog{width:min(calc(100% - 28px),420px);padding:0;border:1px solid var(--gold);background:#071d19;color:var(--paper)}.royal-route-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.royal-route-dialog form{display:grid;gap:10px;padding:34px}.royal-route-dialog h2{margin:0 0 16px;font:400 38px Cormorant,serif}.royal-route-dialog a,.royal-route-dialog button{display:grid;place-items:center;min-height:48px;border:1px solid #c9a76a55;background:transparent;color:var(--paper);text-decoration:none}.royal-upload form{display:grid;gap:16px;width:min(100%,520px);margin:auto}.royal-upload label{display:grid;gap:10px;padding:30px;border:1px dashed #c9a76a80}.royal-upload input{max-width:100%}.royal-upload button{min-height:50px;border:0;background:var(--gold);color:#102a24}.royal-upload output{min-height:24px;color:var(--gold)}.royal-rsvp-success{margin-top:18px;padding:24px;border:1px solid var(--gold);text-align:center}.royal-rsvp-success b{font:400 30px Cormorant,serif}.royal-rsvp-success a{display:inline-block;margin-top:10px;color:var(--gold)}.royal-music-choice{position:fixed;z-index:25;right:18px;top:72px;display:grid;width:190px;padding:8px;background:#071d19ee;border:1px solid #c9a76a55}.royal-music-choice[hidden]{display:none}.royal-music-choice button{padding:12px;border:0;border-bottom:1px solid #c9a76a33;background:transparent;color:var(--paper);text-align:left}.royal-time-day{--night:#183c34;--pine:#285447;background:#173b33}.royal-time-day .royal-story{background:#173b33}.royal-after-mode .royal-countdown,.royal-after-mode .royal-program,.royal-after-mode .royal-rsvp{display:none}.royal-after{background:linear-gradient(#071d19aa,#071d19e8),url('/app/assets/templates/royal-crest-01/rings-v1.png') center/cover}.royal-after>p:not(:first-child){color:#f2e5d0}.royal-personal-card,.royal-story-scenes{content-visibility:auto;contain-intrinsic-size:700px}.royal-route-button:focus-visible,.royal-route-dialog a:focus-visible,.royal-route-dialog button:focus-visible,.royal-upload button:focus-visible{outline:3px solid #fff;outline-offset:3px}@media(max-width:520px){.royal-personal-card dl{grid-template-columns:1fr}.royal-story-scenes article{min-height:70svh;padding:24px}.royal-story-scenes article>div{padding:22px}.royal-update{position:relative;top:auto;margin:16px auto}.royal-story-scenes h3{font-size:40px}}@media(prefers-reduced-motion:reduce){.royal-route-dialog::backdrop{backdrop-filter:none}.royal-update{position:relative;top:auto}}
