@font-face{font-family:The Nautigal;src:url(/fonts/the-nautigal-regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Bona Nova;src:url(/fonts/bona-nova-regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Bona Nova;src:url(/fonts/bona-nova-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Bona Nova;src:url(/fonts/bona-nova-bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{--paper:#f9f7f0;--beige:#f2ede2;--ink:#171714;--rule:#a69b89;--reading:"Bona Nova",Georgia,serif;--lettering:"The Nautigal",cursive;--page-gutter:clamp(24px,5vw,80px);--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--feedback:.16s;--ink-arrival:.6s;--intro-arrival:.76s;--name-arrival:.5s;--reading-arrival:.5s;--stagger:60ms;--press-release:.125s;--family-detail:19px;--paper-texture:url(/art/quiet-paper.webp)}*{box-sizing:border-box;scrollbar-color:var(--rule) var(--paper);scrollbar-width:thin}html{scroll-behavior:smooth;scroll-padding-top:22px}html.keyboard-navigation{scroll-behavior:auto}body{color:var(--ink);background:var(--paper) var(--paper-texture) repeat 0 0/1000px auto;background-blend-mode:multiply;font:21px/1.55 var(--reading);-webkit-font-smoothing:antialiased;margin:0}header{padding-top:env(safe-area-inset-top,0px)}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{text-wrap:balance;font-weight:400}img{max-width:100%;display:block}a{color:var(--ink);text-underline-offset:6px;text-decoration-thickness:1px}a:focus-visible{outline:2px solid var(--ink);outline-offset:6px}strong{font-weight:700}::selection{background:var(--ink);color:var(--paper)}.visually-hidden,.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--ink);color:var(--paper);padding:12px 18px;position:fixed;top:16px;left:20px}.invitation-nav{max-width:1440px;height:72px;padding:12px var(--page-gutter);justify-content:flex-end;align-items:center;gap:32px;margin:auto;font-size:18px;display:flex}.invitation-nav a{align-items:center;min-height:44px;display:inline-flex}.opening{max-width:1440px;padding:12px var(--page-gutter) 62px;margin:auto}.opening-frame{grid-template-columns:43% 57%;align-items:center;min-height:700px;padding:34px 5% 40px;display:grid}.opening-art{pointer-events:none;justify-content:center;align-items:center;width:100%;height:590px;display:flex}.opening-art img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.opening-copy{text-align:center;padding:0 0 0 28px}.names{font:400 clamp(160px,15vw,216px)/.84 var(--lettering);padding:0 10px 20px}.names>span{display:block}.name-tanya{text-align:left}.names .name-and{font:italic 30px/1.3 var(--reading);margin:12px 0 0}.name-jason{text-align:right}.opening-date{font-variant-numeric:lining-nums;margin-top:36px;font-size:24px;line-height:1.5}.opening-date span{margin-top:6px;font-size:21px;display:block}.family-photo{max-width:1120px;margin:0 auto;padding:20px 40px 80px}.family-invitation{text-align:center;max-width:850px;margin:64px auto 0}.invitation-intro{max-width:600px;font-size:var(--family-detail);text-wrap:balance;margin:auto;line-height:1.6}.family-lines{font-size:var(--family-detail);justify-content:center;align-items:center;gap:36px;margin:24px auto 26px;line-height:1.5;display:flex}.family-lines>p{flex:1;min-width:0}.family-lines span{display:block}.family-name{font:400 112px/1.2 var(--lettering);padding-bottom:5px}.family-and{font-size:34px;font-style:italic}.family-lines .visually-hidden{display:block}.invitation-continuation{max-width:640px;font-size:var(--family-detail);text-wrap:balance;margin:auto;line-height:1.6}.photo-title{text-align:center;font:400 42px/1.25 var(--reading);margin:0 0 28px}.photo-title span{font:400 104px/.95 var(--lettering);margin-top:8px;display:block}.wedding-photo{background:var(--beige)}.wedding-photo img{width:100%;height:auto}.scripture{text-align:center;max-width:620px;margin:32px auto 0}.scripture p{text-wrap:balance;font-size:26px;font-style:italic;line-height:1.5}.scripture cite{margin-top:10px;font-size:18px;font-style:normal;display:block}.celebrations{background:var(--beige) var(--paper-texture) repeat 0 0/1000px auto;background-blend-mode:multiply;padding:54px var(--page-gutter) 72px}.celebrations-inner{max-width:1260px;margin:auto}.celebrations h2{font:400 72px/1.06 var(--lettering);text-align:center;margin-bottom:38px}.celebrations h2 span{display:block}.event-list{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;display:grid}.event{grid-template-columns:minmax(145px,.78fr) minmax(0,1.22fr);align-items:center;gap:22px;min-width:0;padding:10px 0;display:grid}.event-art{pointer-events:none;grid-area:1/1;justify-content:center;align-items:center;width:100%;height:282px;display:flex}.event-art img{object-fit:contain;opacity:1;width:auto;max-width:100%;height:auto;max-height:100%;transition:transform var(--feedback) var(--ease-out)}.event-copy{grid-area:1/2;min-width:0}.event h3{letter-spacing:-.01em;font-size:35px;line-height:1.15}.event-datetime{font-variant-numeric:lining-nums;margin-top:18px;font-size:20px;line-height:1.5}.event-datetime time>span{display:block}.event-datetime time>span:last-child{margin-top:3px;font-weight:700}.event-venue{margin-top:20px;font-size:22px;line-height:1.35}.event-address{margin-top:5px;font-size:20px;line-height:1.5}.directions{align-items:center;min-height:44px;margin-top:8px;font-size:20px;display:inline-flex}.gift-section{padding:60px var(--page-gutter) 40px}.gift-post{max-width:880px;margin:auto}.gift-letter{width:100%;margin:auto}.gift-letter h2{font:400 76px/.98 var(--lettering);text-align:center;margin-bottom:34px}.gift-letter-content{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:48px;display:grid}.gift-copy{font-size:21px;line-height:1.6}.gift-qr{text-align:center;margin-top:4px}.gift-qr>a{background:#fff;width:220px;max-width:100%;margin:auto;padding:18px;display:block}.gift-qr img{width:100%;height:auto}.gift-qr figcaption a{align-items:center;min-height:44px;margin-top:8px;font-size:18px;display:inline-flex}.reply-section{padding:40px var(--page-gutter) calc(64px + env(safe-area-inset-bottom,0px))}.reply-inner{isolation:isolate;aspect-ratio:3/2;grid-template-columns:26% minmax(0,48%) 26%;align-items:center;max-width:1120px;margin:auto;padding:36px 0;display:grid;position:relative}.reply-botanicals{z-index:-1;pointer-events:none;align-items:center;display:flex;position:absolute;inset:0}.reply-botanicals img{object-fit:contain;width:100%;height:auto}.reply{text-align:center;grid-area:1/2;min-width:0}.reply h2{font:400 clamp(90px,8vw,116px)/1.15 var(--lettering);white-space:nowrap;margin-bottom:18px}.reply p{text-wrap:balance;margin:0 auto 18px;font-size:22px;line-height:1.5}.reply time{white-space:nowrap;font-variant-numeric:lining-nums;font-size:25px;font-weight:700;line-height:1.5;display:block}.rsvp-button{background:var(--ink);width:210px;min-height:60px;color:var(--paper);transition:transform var(--press-release) var(--ease-out),opacity var(--feedback) ease;justify-content:center;align-items:center;margin:28px auto 0;padding:12px 28px;font-size:23px;text-decoration:none;display:flex}.invitation-nav a,.directions,.gift-link{text-decoration:none;position:relative}.invitation-nav a:after,.directions:after,.gift-link:after{content:"";transform-origin:0;height:1px;transition:transform var(--feedback) var(--ease-out);background:currentColor;position:absolute;bottom:7px;left:0;right:0}.invitation-nav a:after{bottom:8px;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.invitation-nav a:hover:after{transform:scaleX(1)}.directions:hover:after,.gift-link:hover:after{transform:scaleX(.72)}.rsvp-button:hover:not(:focus-visible){opacity:.86;transform:translateY(-2px)}.event:has(.directions:hover) .event-art img{transform:translateY(-2px)rotate(-1deg)}}.rsvp-button:active:not(:focus-visible){transition-duration:var(--feedback);transform:scale(.97)}@media (width>=701px) and (width<=1100px){.opening{padding:10px 38px 54px}.opening-frame{grid-template-columns:40% 60%;min-height:590px;padding:30px 4%}.opening-art{height:500px}.opening-copy{padding-left:20px}.names{font-size:clamp(130px,17vw,178px)}.opening-date{font-size:23px}.event-list{grid-template-columns:1fr;gap:38px;max-width:760px;margin:auto}.event{grid-template-columns:260px minmax(0,1fr);gap:40px}.event-art{height:300px}.event h3{font-size:38px}.event-datetime{font-size:22px}.event-venue{font-size:24px}.gift-letter-content{grid-template-columns:minmax(0,1fr) 200px;gap:26px}.gift-qr>a{width:200px}.gift-letter h2{font-size:70px}.reply-inner{padding:32px 0}.reply h2{font-size:96px}.reply p{font-size:21px}}@media (width>=861px) and (width<=1100px){.reply p{max-width:360px}}@media (width<=860px){.reply-inner{aspect-ratio:auto;flex-direction:column;max-width:620px;padding:20px 16px;display:flex}.reply{order:0;width:100%}.reply-botanicals{z-index:auto;order:1;width:100%;max-width:420px;height:auto;margin:24px auto 0;display:block;position:static;inset:auto}.reply-botanicals img{object-fit:contain;width:100%;height:auto}}@media (width<=700px){:root{--family-detail:18px}body{font-size:20px}.invitation-nav{height:64px;padding:10px max(24px,env(safe-area-inset-right));gap:28px;font-size:17px}.opening{padding:8px 20px 44px}.opening-frame{grid-template-columns:minmax(0,1fr);align-items:center;gap:24px;min-height:0;padding:24px 18px 28px;display:grid}.opening-copy{display:contents}.opening-art{aspect-ratio:2/3;grid-area:3/1;justify-self:center;width:calc(37.5% - 3.75px);max-width:166.667px;height:auto}.names{grid-area:1/1;padding:0;font-size:clamp(82px,22.5vw,126px);line-height:.95}.name-tanya,.name-jason{text-align:center;margin:0}.names .name-and{margin:8px 0 5px;font-size:22px;line-height:1.3}.opening-date{text-align:center;grid-area:2/1/auto/-1;margin:0;font-size:21px;line-height:1.45}.opening-date span{margin-top:5px;font-size:20px}.family-photo{padding:6px 24px 46px}.family-invitation{margin-top:44px}.invitation-intro{max-width:390px;line-height:1.6}.family-lines{flex-direction:column;gap:5px;margin:24px auto}.family-name{padding-bottom:5px;font-size:94px;line-height:1.1}.family-lines>p{width:100%;font-size:var(--family-detail);line-height:1.5}.family-and{margin:6px 0;font-size:26px}.invitation-continuation{line-height:1.6}.photo-title{margin:0 0 22px;font-size:30px;line-height:1.25}.photo-title span{margin-top:10px;font-size:84px}.wedding-photo{margin:0 -24px}.scripture{max-width:340px;margin-top:26px}.scripture p{font-size:23px;line-height:1.5}.scripture cite{margin-top:9px;font-size:17px}.celebrations{padding:34px 26px 48px}.celebrations h2{margin-bottom:26px;font-size:clamp(46px,12.5vw,58px);line-height:1.07}.event-list{grid-template-columns:1fr;gap:44px}.event{text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:380px;margin:auto;padding:0;display:flex}.event-art{order:0;width:166px;height:204px}.event-copy{order:1;width:100%}.event h3{font-size:33px;line-height:1.16}.event-datetime{margin-top:16px;font-size:20px;line-height:1.5}.event-venue{margin-top:18px;font-size:22px;line-height:1.4}.event-address{margin-top:4px;font-size:20px;line-height:1.45}.directions{margin-top:6px;font-size:20px}.gift-section{padding:40px 28px 30px}.gift-post{max-width:460px}.gift-letter h2{margin-bottom:24px;font-size:58px;line-height:1.03}.gift-letter-content{flex-direction:column;align-items:center;gap:24px;display:flex}.gift-copy{text-align:center;font-size:20px;line-height:1.6}.gift-qr{margin:0}.gift-qr>a{width:220px;padding:18px}.gift-qr figcaption a{font-size:18px}.reply-section{padding:30px 16px calc(36px + env(safe-area-inset-bottom,0px))}.reply-inner{max-width:460px;padding:18px 12px}.reply-botanicals img{object-fit:contain;opacity:1}.reply{position:relative}.reply h2{white-space:normal;margin-bottom:18px;font-size:clamp(70px,19vw,90px);line-height:1.12}.reply p{margin-bottom:18px;font-size:20px;line-height:1.55}.reply time{font-size:22px}.rsvp-button{width:190px;min-height:58px;margin-top:24px;font-size:22px}}@media (width<=359px){:root{--family-detail:17px}.opening{padding-left:16px;padding-right:16px}.opening-frame{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 12px 24px}.opening-art{width:calc(35% - 2.8px);max-width:146.667px}.names{font-size:79px}.names .name-and{font-size:21px}.opening-date{font-size:20px}.family-photo{padding-left:20px;padding-right:20px}.wedding-photo{margin:0 -20px}.celebrations{padding-left:22px;padding-right:22px}.celebrations h2{font-size:44px}.event h3{font-size:31px}.event-art{width:152px;height:190px}.gift-letter h2{font-size:51px}.reply-inner{padding-left:10px;padding-right:10px}.reply h2{font-size:66px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rsvp-button{transition:opacity var(--feedback) ease}.event-art img{transition:none}.rsvp-button:active:not(:focus-visible),.rsvp-button:hover:not(:focus-visible){transform:none}.event:has(.directions:hover) .event-art img{transform:none}.invitation-nav a:after,.directions:after,.gift-link:after{transition:opacity var(--feedback) ease;transform:none}.invitation-nav a:after{opacity:0}.invitation-nav a:hover:after{opacity:1}}
