@font-face{font-family:WeddingSerif;src:url('/assets/e39705811cc83dd9.woff')}@font-face{font-family:WeddingScript;src:url('/assets/90a51b749350443d.woff')}*{box-sizing:border-box}body{margin:0;color:#171712;background:#eeeddc url('/assets/paper.png') center top/900px auto;font-family:Arial,sans-serif;text-align:center}a{color:inherit}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #736847;outline-offset:5px}h1,h2,p{margin:0;font-weight:400}.caps{display:block;font-family:WeddingSerif,Georgia,serif;line-height:1;text-transform:uppercase}.script{font-family:WeddingScript,cursive;display:block;line-height:.95}.opening{max-width:700px;margin:auto;padding:35px 20px 28px}.opening h1 .caps{font-size:clamp(36px,6.2vw,59px)}.opening h1 .script{font-size:clamp(50px,8.1vw,76px);margin-top:-2px}.booth{position:relative;width:clamp(150px,31vw,235px);aspect-ratio:756/1824;margin:28px auto 30px;box-shadow:3px 5px 8px #0006;background:url('/assets/frame.png') center/100% 100%}.booth canvas{display:block;width:100%;height:100%}.booth video{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.opening h2 .caps{font-size:clamp(39px,6vw,55px)}.opening h2 .script{font-size:clamp(55px,8vw,74px);margin-top:-4px}.date{font-family:WeddingSerif,Georgia,serif;font-size:clamp(30px,5vw,40px);line-height:1.15;margin:15px auto 20px}.outline{display:inline-flex;justify-content:center;align-items:center;border:1px solid #23231c;padding:12px 27px;min-height:44px;text-decoration:none;font-size:15px;transition:background .2s}.outline:hover{background:#fff7}.signature{font-family:WeddingScript;font-size:28px;margin-top:24px}.replay{border:0;background:none;color:#514f42;font-size:11px;padding:10px;margin-top:12px;cursor:pointer}.details{margin:auto}.invitation{max-width:760px;margin:auto;padding:50px 22px 65px}.invitation h1 .caps{font-size:clamp(30px,5vw,46px);max-width:640px;margin:auto}.invitation h1 .script{font-size:clamp(78px,12vw,125px);margin:9px 0 20px}.venue{font-size:15px;line-height:1.4}.collage{width:min(100%,530px);height:660px;position:relative;margin:38px auto 22px}.photo-card{position:absolute;top:0;left:6%;width:86%;height:310px;padding:10px;background:#f9f9f1;transform:rotate(4deg);box-shadow:0 2px 9px #0004}.card-photo{position:relative;height:100%;overflow:hidden;background:#292b25;color:white}.card-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);display:none}.photo-placeholder{height:100%;display:grid;place-items:center;background:radial-gradient(ellipse at 30% 80%,#a7a89b,#373b32 55%,#191d18);font-family:WeddingScript;font-size:90px;color:#ffffff4d}.card-photo h2{position:absolute;inset:25% 0 0;text-shadow:0 1px 5px #0005}.card-photo .caps{font-size:70px}.card-photo .script{font-size:90px;margin-top:-16px}.postcard{position:absolute;left:5%;top:295px;width:88%;height:325px;background:#f6f6f0;border:2px solid #24271e;transform:rotate(-4deg);padding:15px 13px;box-shadow:0 3px 8px #0003;overflow:hidden}.postcard .date{font-size:38px;margin:0 0 6px}.tiny{font-size:9px}.stamp{position:absolute;right:13px;top:14px;border:1px dotted #777;border-radius:50%;padding:9px;font-size:7px;transform:rotate(10deg)}.letter{font-size:34px;line-height:1.1;margin:32px auto 17px;position:relative;z-index:1}.letter>span{display:block}.letter [data-names]{display:inline}.watermark{position:absolute;bottom:0;right:-12px;font-size:75px;color:#dddcd45c;white-space:nowrap}.mini-strip{position:absolute;width:84px;left:1%;top:424px;background:#fff;padding:6px 6px 19px;transform:rotate(-20deg);box-shadow:1px 3px 5px #0003}.mini-strip div{height:63px;margin-bottom:4px;display:grid;place-items:center;background:#42463d;color:#d3d4c9;font-family:WeddingScript;font-size:21px;overflow:hidden}.mini-strip img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.celebrate{font-size:15px}.couple{font-size:66px;margin:23px 0}.invitation>.venue{margin-bottom:22px}.calendar{margin-top:15px}#address-copy{font-size:12px;line-height:1.6;margin:18px 0}.questions{border-top:1px solid #b7b6a54d;background:#e5e4d34d;padding:65px 20px 35px}.questions h2{font-size:45px}.questions>p:not(.couple){font-size:14px;line-height:1.6;margin:20px auto}.questions a{font-size:14px}.back{display:inline-block;margin-top:20px} [hidden]{display:none!important}
@media(max-width:540px){.opening{padding-top:29px}.booth{margin-top:26px;margin-bottom:30px}.invitation{padding-top:46px}.collage{height:440px;margin-top:30px}.photo-card{height:190px}.card-photo h2{inset:24% 0 0}.card-photo .caps{font-size:43px}.card-photo .script{font-size:62px;margin-top:-12px}.postcard{top:182px;height:224px;padding:13px 9px}.postcard .date{font-size:28px}.postcard .tiny{font-size:6px}.letter{font-size:24px;margin-top:20px;margin-bottom:14px}.stamp{font-size:5px;padding:6px;right:7px}.watermark{font-size:47px}.mini-strip{top:276px;width:60px;padding:4px 4px 12px}.mini-strip div{height:43px;font-size:14px}.couple{font-size:48px}.venue{font-size:13px}.outline{font-size:12px;padding:11px 20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}
