/* Function text stays in the open area above the illustrated stage/trees. */
/* Strong (~80%) background softening; foreground content stays crisp. */
body{background:#f5e6c7;isolation:isolate}
body::before{content:"";position:fixed;inset:-72px;z-index:-1;pointer-events:none;background:#f5e6c7 url('assets/background.png') center top / 740px auto repeat;filter:blur(24px)}
#opening{background:transparent}
.rings,.wedding{container-type:inline-size}
.rings .event-copy{padding:22% 12% 0}
.wedding .event-copy{padding:4% 10% 0}
.event-copy .eyebrow{margin:0 0 7px;line-height:1.2;font-size:clamp(7px,1.5cqw,9px)}
.rings .event-copy h2,.wedding .event-copy h2{font-size:clamp(32px,8.7cqw,52px);line-height:1.03;margin:7px 0 9px}
.rings .ornament{font-size:20px;line-height:1;margin:5px 0}
.event-copy .event-date{font-size:clamp(16px,3.8cqw,23px);line-height:1.15;margin:8px 0}
.event-copy .times{max-width:300px;margin:7px auto 0}
.event-copy .times p{font-size:clamp(16px,3.8cqw,23px);line-height:1.2;padding:4px 0}
#fireworks{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:100}
