
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:#f6f2e9;--ink:#454d3c;--accent:#927e55}.entry .names{font-size:clamp(43px,13vw,68px)}.hero{background:#f6f2e9;min-height:590px}.hero h1{font-size:clamp(48px,14vw,74px)}.photo{padding:12px;border:1px solid #aea58b;background:#fffdf7;rotate:0;box-shadow:0 10px 25px #3d422515}.photo:nth-of-type(2){padding:7px;border-color:#87937b}.agenda{background:#e8ecdf;border:0;padding:12px 23px}.quote{background:transparent;border-top:1px solid #927e5555;border-bottom:1px solid #927e5555}.quote h2{font-style:italic}.closing{background:#424c3c;color:#f6f2e9}.closing .kicker{color:#d6c6a1}body main .section{text-align:center}
body main .section h2,body main .section>p,body main .section .kicker{text-align:center;margin-left:auto;margin-right:auto}
body main .section .action,body main .section>a{display:inline-flex;justify-content:center;margin-left:auto;margin-right:auto}
body main .section .schedule{max-width:520px;margin-left:auto;margin-right:auto}
body main .section .venue-map{display:block;width:100%;max-width:620px;margin-left:auto;margin-right:auto}
body main .section details,body main .section .rsvp-form{max-width:620px;margin-left:auto;margin-right:auto;text-align:left}
body main .section .rsvp-form label{text-align:left}
body main .section .count{max-width:520px;margin-left:auto;margin-right:auto}
body main .section.quote h2,body main .section.quote p{text-align:center}
body main .section .button,body main .section a.button{display:flex;width:max-content;max-width:100%;margin-left:auto;margin-right:auto;justify-content:center}
body main .section .section-number{text-align:center;margin-left:auto;margin-right:auto}
