
main .section{max-width:780px;margin-inline:auto}
main h2{line-height:1.12;text-wrap:balance}
main p{line-height:1.75}
main .photo img,main .couple-photo img{display:block;width:100%;height:auto;object-fit:contain}
main .photo,main .couple-photo{max-width:650px;margin-inline:auto;width:calc(100% - 48px)}
main .photo figcaption,main .couple-photo figcaption{font-size:17px;line-height:1.5;padding:16px 10px}
main input,main textarea,main select{font-size:16px}
main .details summary{padding-block:20px;min-height:48px}
main .count{font-variant-numeric:tabular-nums}
main .agenda li{padding-block:22px}
main .agenda time{font:italic 23px Georgia,serif;letter-spacing:0}
main .agenda h3{line-height:1.15}
main .section-number{letter-spacing:2px;font-size:10px}
main .hero>svg.garden-art,main .hero>svg.route-art{position:absolute;pointer-events:none}
main .hero>*:not(svg){position:relative;z-index:2}
.entry button,.entry .open{min-height:48px;white-space:nowrap}
@media(max-width:400px){main .section{padding-inline:24px}main .agenda li{gap:12px;grid-template-columns:55px 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
body{--paper:#202429;--ink:#f0e4ca;--accent:#bc9561}.entry{border:8px solid #202429;box-shadow:inset 0 0 0 1px #bc956199}.masthead{min-height:620px;background:#202429;padding:80px 28px 60px}.masthead h1{font-size:clamp(43px,12vw,66px);line-height:1.08}.sunburst{opacity:.35}.couple-photo{padding:8px;border:1px solid #bc9561;background:#292d31;rotate:0;box-shadow:0 0 0 4px #202429,0 0 0 5px #bc956155}.schedule{padding:22px;background:#171b1f;color:#f0e4ca;border:3px double #bc9561}.schedule .event{border:0;border-bottom:1px solid #bc956140;padding:22px 0;background:none}.schedule .event h3,.schedule .event p{color:#f0e4ca}.schedule .event time{color:#bc9561}.closing{background:#171b1f;border-top:3px double #bc9561;color:#f0e4ca}