/* Warm paper surfaces keep silk folds clear of the typography. */
:root{--reading-paper:#fbf7eef5;--reading-ink:#343e27;--reading-line:#73795730;--reading-shadow:0 8px 28px #343e2712,0 1px 3px #343e2708}
.guest-nav,.page-bar,.celebration-heading,.wedding-countdown,.wedding-footer,.story-intro,.story-lead,.story-chapters,.story-signoff,.page-end,.welcome-kicker,.welcome-footnote,.seal-hint,.story-portrait figcaption{background:var(--reading-paper);color:var(--reading-ink);border:1px solid var(--reading-line);box-shadow:var(--reading-shadow)}
.guest-nav{border-radius:999px;padding:5px;gap:3px;min-width:0}
.guest-nav a{color:var(--reading-ink);font-size:17px;min-height:46px;padding:10px 12px}
.guest-nav a[aria-current="page"]{background:#4b513414;text-decoration-color:var(--reading-ink)}
.guest-nav a:hover{background:#4b51340d}
.page-bar{padding:6px 20px;border-radius:22px;min-height:76px;margin-top:18px;margin-bottom:18px}
.page-bar a:focus-visible,.story-page a:focus-visible{outline-color:var(--reading-ink)}
.celebration-heading{padding:10px 20px;border-radius:999px;color:var(--reading-ink);font-size:13px}
.celebration .guest-toolbar{margin-top:18px}
.wedding-countdown{position:relative;isolation:isolate;border-radius:28px;padding:26px 25px 28px;margin-top:8px;margin-bottom:32px}
.wedding-countdown::before,.wedding-footer::before,.story-chapters::before,.story-signoff::before{content:'';position:absolute;inset:9px;z-index:-1;border:1px solid #73795722;border-radius:inherit;pointer-events:none}
.countdown-kicker,.countdown-label,.countdown-date,.countdown-dot{color:#50583d}
.heart-date{isolation:isolate;text-shadow:none}
.heart-date::before{content:'';position:absolute;inset:-15% -10%;z-index:-1;border-radius:50%;background:#fbf7eef2;filter:blur(12px);pointer-events:none}
.wedding-footer{position:relative;isolation:isolate;border-radius:32px;padding:26px 30px 34px;margin-top:8px;margin-bottom:16px;color:var(--reading-ink)}
.footer-contact{color:var(--reading-ink)}
.welcome-kicker{display:table;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;border-radius:999px;padding:8px 18px;font-size:13px}
.welcome-footnote{width:fit-content;max-width:calc(100% - 40px);left:50%;right:auto;transform:translateX(-50%);border-radius:999px;padding:7px 18px;font-size:14px;text-shadow:none}
.seal-hint{display:table;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;border-radius:999px;padding:5px 13px;color:#50583d}
.story-intro{border-radius:28px;padding:22px 18px 26px}
.story-intro h1{margin-top:0;color:var(--reading-ink)}
.story-subtitle,.story-page .eyebrow{color:#50583d}
.story-portrait figcaption{display:table;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;border-radius:999px;padding:7px 18px;color:#50583d}
.story-lead{border-radius:24px;padding:24px 26px;color:var(--reading-ink)}
.story-chapters{position:relative;isolation:isolate;width:min(640px,100%);border-radius:30px;padding:32px 28px 5px}
.story-chapter,.story-chapter h2,.story-chapter p,.story-chapter-number{color:var(--reading-ink)}
.story-signoff{position:relative;isolation:isolate;border-radius:30px;padding:25px 24px 28px;margin-top:32px}
.story-closing,.story-signature,.story-details,.story-page .signoff-return{color:var(--reading-ink)}
.page-end{display:table;width:fit-content;max-width:calc(100% - 32px);margin:26px auto;border-radius:999px;padding:9px 20px;color:#50583d}
.guest-music-status:not(:empty){left:50%;width:fit-content;max-width:100%;transform:translateX(-50%);border-radius:999px;padding:7px 15px;background:var(--reading-paper);color:var(--reading-ink);box-shadow:var(--reading-shadow)}
@media(hover:hover) and (pointer:fine){.guest-nav a:hover{background:#4b513414}}
@media(max-width:600px){
 .guest-nav{padding:4px;gap:1px}
 .guest-nav a{padding:10px 4px;font-size:15px;min-height:44px}
 .celebration-heading{padding:9px 15px;font-size:11px}
 .page-bar{padding:5px 12px;min-height:66px;border-radius:20px;margin-top:12px;margin-bottom:15px}
 .wedding-countdown{padding:24px 14px 26px;border-radius:24px}
 .wedding-countdown h2{font-size:37px}
 .wedding-footer{padding:24px 20px 30px;border-radius:26px}
 .welcome-kicker{font-size:11px;padding:8px 15px}
 .welcome-footnote{font-size:12px;padding:7px 14px;max-width:calc(100% - 28px);white-space:nowrap}
 .seal-hint{font-size:12px}
 .story-intro{padding:18px 14px 22px;border-radius:24px}
 .story-lead{padding:22px 20px;border-radius:24px}
 .story-chapters{padding:26px 14px 2px;border-radius:26px}
 .story-chapter{padding-inline:13px}
 .story-signoff{padding:22px 15px 26px;border-radius:26px}
 .story-portrait figcaption{font-size:14px;padding:7px 14px}
 .page-end{font-size:13px;padding:8px 14px}
}
@media(max-width:340px){.guest-nav a{font-size:13px}.welcome-footnote{font-size:11px}.wedding-countdown h2{font-size:32px}.countdown-number{font-size:32px}.footer-names{font-size:11.5cqw}}
