:root{--paper:#fffdfc;--paper-warm:#fffaf7;--ink:#2e2c29;--muted:#817e76;--line:#b9b6af;--white:#faf8f3}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans), Arial, sans-serif;margin:0}button,h1,h2,h3,p,blockquote{margin:0}button{font:inherit;border:0;border-radius:0}img{display:block}main{width:100%;overflow:hidden}@media (prefers-reduced-motion:no-preference){.reveal-ready .reveal-section{opacity:0;will-change:opacity, transform;transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);transform:translateY(100px)}.reveal-ready .reveal-section.is-visible{opacity:1;transform:translate(0,0)}}.hero{background:var(--paper);grid-template-columns:721px minmax(0,1fr);height:783px;display:grid}.hero__copy{flex-direction:column;gap:10px;padding:62px 82px 92px;display:flex;overflow:hidden}.eyebrow,.section-index,.detail-card__number,.rsvp__deadline,.rsvp__action,.closing__eyebrow,.signature{font-family:var(--font-sans), Arial, sans-serif;text-transform:uppercase;font-size:14px;font-weight:500}.eyebrow{min-height:16px;color:var(--muted);letter-spacing:1.96px;line-height:16px}.hero__spacer-top{flex:0 0 172px}.guest-name{min-height:88px;font-family:var(--font-serif), Georgia, serif;font-size:68px;font-style:italic;font-weight:400;line-height:88px}.hero--multiline-name .guest-name{min-height:auto;font-size:56px;line-height:1.12}.hero--long-name .guest-name{min-height:auto;font-size:46px;line-height:1.12}.hero--long-name .hero__spacer-top{flex-basis:130px}.invitation{min-height:126px;font-family:var(--font-serif), Georgia, serif;font-size:32px;line-height:42px}.hero__spacer-bottom{flex:0 0 78px}.rule{background:var(--line);flex:0 0 1px;width:100%}.hero__spacer-rule{flex:0 0 28px}.date-row{white-space:nowrap;justify-content:space-between;align-items:center;min-height:50px;display:flex}.date-row time{font-family:var(--font-serif), Georgia, serif;font-size:20px;line-height:34px}.date-row span{color:var(--muted);letter-spacing:2.52px;font-size:14px;font-weight:500;line-height:16px}.hero__art{background:var(--paper-warm);justify-content:center;align-items:center;display:flex;overflow:hidden}.hero__art img{object-fit:contain;width:100%;max-width:603px;height:100%;max-height:642px}.details{border-top:1px solid var(--line);background:#fff;height:784px;padding:92px 82px;overflow:hidden}.section-header{height:72px}.section-header h2,.schedule__header h2{font-family:var(--font-serif), Georgia, serif;font-size:58px;font-weight:400;line-height:66px}.section-index{display:none}.details__spacer{height:120px}.detail-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;height:340px;display:grid}.detail-card{border-top:1px solid var(--line);flex-direction:column;gap:18px;padding:28px 28px 28px 0;display:flex}.detail-card:first-child{height:276px}.detail-card:nth-child(2){height:300px}.detail-card:nth-child(3){height:252px}.detail-card__number{color:var(--muted);letter-spacing:1.96px;line-height:16px}.detail-card h3{font-family:var(--font-serif), Georgia, serif;font-size:30px;font-weight:400;line-height:36px}.detail-card__text{font-size:15px;line-height:24px}.rsvp{align-items:center;gap:30px;height:68px;display:flex;overflow:hidden}.rsvp__deadline{letter-spacing:2.24px;white-space:nowrap;flex-direction:column;line-height:22px;display:flex}.rsvp__deadline span:first-child{color:#000}.rsvp__deadline span:last-child{color:var(--muted)}.rsvp__buttons{align-items:center;gap:20px;display:flex}.rsvp__action{background:var(--ink);height:52px;color:var(--white);letter-spacing:1.68px;white-space:nowrap;justify-content:center;align-items:center;padding:0 24px;line-height:16px;text-decoration:none;transition:background-color .18s,color .18s;display:inline-flex}.rsvp__action:hover{background:var(--muted)}.rsvp__action:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.schedule{background:var(--ink);height:911px;color:var(--white);align-items:flex-start;gap:86px;padding:92px 82px;display:flex;overflow:hidden}.schedule__copy{flex:0 0 498px;height:727px;overflow:hidden}.schedule__header{flex-direction:column;gap:20px;height:178px;display:flex}.schedule__header h2{line-height:64px}.schedule__header p{font-family:var(--font-serif), Georgia, serif;font-size:24px;font-style:italic;line-height:30px}.schedule__spacer{height:68px}.events{height:351px;overflow:hidden}.event{border-top:1px solid var(--muted);gap:28px;height:102px;padding:22px 0;display:flex}.event time{font-family:var(--font-serif), Georgia, serif;flex:0 0 82px;font-size:28px;line-height:34px}.event div{flex-direction:column;gap:8px;min-width:0;display:flex}.event h3{font-family:var(--font-serif), Georgia, serif;font-size:25px;font-weight:400;line-height:30px}.event p{font-size:16px;line-height:20px}.schedule__note{height:130px;font-family:var(--font-serif), Georgia, serif;font-size:18px;font-style:italic;line-height:26px}.schedule__map{flex:auto;min-width:0;height:721px;overflow:hidden}.schedule__map iframe{border:0;width:100%;height:100%;display:block}.closing{background:var(--paper);grid-template-columns:661px minmax(0,1fr);height:550px;display:grid}.closing__photo{overflow:hidden}.closing__photo img{object-fit:cover;object-position:center;width:100%;height:100%}.closing__copy{flex-direction:column;min-width:0;padding:92px 72px;display:flex;position:relative;overflow:hidden}.closing__eyebrow{color:var(--muted);letter-spacing:2.24px;line-height:16px}.closing__rings{object-fit:contain;width:130px;height:91px;position:absolute;top:92px;right:72px}.closing__spacer-top{height:99px}.quote-mark{height:60px;color:var(--muted);font-family:var(--font-serif), Georgia, serif;font-size:72px;line-height:60px}.closing blockquote{font-family:var(--font-serif), Georgia, serif;font-size:40px;line-height:52px}.closing__quote-desktop{display:none}.closing__spacer-bottom{height:72px}.signature{color:var(--muted);letter-spacing:1.96px;white-space:nowrap;line-height:15px}@media (width>=1600px){.hero{grid-template-columns:1030px minmax(0,1fr);height:801px}.hero__copy{padding:82px 82px 112px}.invitation{min-height:104px}.details{height:824px;padding-top:112px;padding-bottom:112px}.detail-card:first-child{height:252px}.detail-card:nth-child(2){height:276px}.detail-card:nth-child(3){height:228px}.schedule{height:894px;padding-top:112px;padding-bottom:112px}.schedule__copy{flex-basis:696px;height:670px}.schedule__header{height:114px}.schedule__header h2{white-space:nowrap}.events{height:410px}.event{height:132px}.schedule__note{height:78px}.schedule__map{height:664px}.closing{grid-template-columns:859px minmax(0,1fr);height:836px}.closing__copy{padding:112px 72px}.closing__rings{top:112px}.closing__spacer-top{height:185px}.closing blockquote{font-size:40px;line-height:52px}}@media (width<=1199px){.hero{flex-direction:column;height:959px;display:flex}.hero__copy{flex:0 0 526px;padding:32px 40px 62px}.hero__spacer-top{flex-basis:53px}.invitation{min-height:84px}.hero__spacer-bottom{flex-basis:42px}.hero__art{flex:0 0 433px;padding:16px 0}.details{height:779px;padding:62px 40px}.details__spacer{height:51px}.detail-cards{gap:22px;height:436px}.detail-card{padding-right:18px}.detail-card:first-child{height:364px}.detail-card:nth-child(2){height:436px}.detail-card:nth-child(3){height:316px}.rsvp{justify-content:space-between;height:96px}.schedule{flex-direction:column;gap:32px;height:1445.82px;padding:62px 40px}.schedule__copy{flex-basis:611px;width:100%;height:611px}.schedule__header{height:114px}.schedule__header h2{white-space:nowrap}.schedule__header p{font-size:24px}.schedule__note{height:78px}.schedule__map{flex:0 0 678.82px;width:100%;height:678.82px}.closing{flex-direction:column;height:1056px;display:flex}.closing__copy{flex:0 0 383px;order:1;padding:62px 40px}.closing__photo{flex:0 0 673px;order:2}.closing__rings{width:111px;height:78px;top:62px;right:40px}.closing__spacer-top,.closing__spacer-bottom{height:32px}}@media (width<=600px){.hero{height:865px}.hero__copy{flex:0 0 428px;padding:20px 20px 50px}.eyebrow{min-height:46px;line-height:23px}.hero__spacer-top{flex-basis:23px}.guest-name{min-height:58px;font-size:48px;line-height:58px}.hero--multiline-name .hero__spacer-top,.hero--long-name .hero__spacer-top,.hero--multiline-name .hero__spacer-bottom,.hero--long-name .hero__spacer-bottom{flex-basis:0}.hero--multiline-name .guest-name{font-size:40px;line-height:46px}.hero--long-name .hero__copy{gap:6px}.hero--long-name .guest-name{font-size:32px;line-height:38px}.invitation{min-height:96px;font-size:22px;line-height:32px}.hero__spacer-bottom{flex-basis:12px}.hero__spacer-rule{flex-basis:2px}.hero__art{flex-basis:437px;padding:29px 17px}.details{height:1282px;padding:50px 20px}.section-header{flex-direction:column;gap:8px;height:68px;display:flex}.section-index{color:var(--muted);letter-spacing:2.24px;line-height:16px;display:block}.section-header h2,.schedule__header h2{font-size:38px;line-height:44px}.details__spacer{height:24px}.detail-cards{flex-direction:column;gap:22px;height:920px;display:flex}.detail-card{flex:none;padding:28px 28px 28px 0}.detail-card:first-child{height:292px}.detail-card:nth-child(2){height:316px}.detail-card:nth-child(3){height:268px}.detail-card h3{font-size:26px;line-height:32px}.rsvp{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:30px;height:170px;padding:22px 0}.schedule{gap:32px;height:1127.1px;padding:50px 20px}.schedule__copy{flex-basis:680px;height:680px}.schedule__header{gap:8px;height:126px}.schedule__header h2{white-space:normal}.schedule__header p{font-size:20px}.schedule__spacer{height:22px}.events{height:376px}.event{gap:16px}.event:first-child{height:102px}.event:nth-child(2){height:152px}.event:nth-child(3){height:122px}.schedule__note{height:156px}.schedule__map{flex-basis:315.1px;height:315.1px}.closing{height:806px}.closing__copy{flex-basis:404px;padding:50px 20px}.closing__photo{flex-basis:402px}.closing__rings{width:82px;height:58px;top:50px;right:20px}.quote-mark{height:33px;line-height:60px}.closing blockquote{font-size:38px;line-height:44px}.signature{letter-spacing:1.8px}}@media (width<=370px){.rsvp__buttons{gap:10px}.rsvp__action{padding-left:18px;padding-right:18px}.event{gap:10px}.event time{flex-basis:72px;font-size:25px}.event h3{font-size:22px}}@media (width>=1440px) and (width<=1920px){.closing{height:clamp(680px,43.6vw,836px)}.closing__spacer-top{height:clamp(99px,8vw,154px)}.closing blockquote{letter-spacing:-.7px;font-size:clamp(54px,3.7vw,72px);line-height:1.12}.closing__quote-flow{display:none}.closing__quote-desktop{display:block}.closing__quote-desktop>span{white-space:nowrap;display:block}}
