@font-face{font-family:InvitationScript;src:url(assets/calligrafia.woff2) format('woff2');font-display:swap}
#waxSeal{display:none!important}.embossed{left:50%!important;width:83px!important;height:86px;transform:translate(-50%,-38%);font-size:0;letter-spacing:0;filter:drop-shadow(0 2px 2px #43352140);backface-visibility:hidden}.embossed img{width:100%;height:100%;object-fit:contain}.blank-paper{width:100%;height:100%;position:absolute;inset:0}.card-copy{position:absolute;inset:0;text-align:center;color:#515e50}.card-copy p,.card-copy h2{margin:0}.card-copy .save-date{position:absolute;top:21%;left:0;width:100%;font:36px InvitationScript,cursive;color:#a18443}.card-copy h2{position:absolute;top:34%;left:0;width:100%;font:39px/1.02 FineRoman,Georgia,serif;letter-spacing:3px;font-weight:400}.card-copy h2 span{display:block;font:26px InvitationScript,cursive;color:#a18443;line-height:1.1;letter-spacing:0}.wedding-date{position:absolute;top:57.5%;width:100%;font:13px Arial,sans-serif;letter-spacing:1.6px}.city{position:absolute;top:62%;width:100%;font:10px Arial,sans-serif;letter-spacing:2.5px}.venues{position:absolute;top:67%;width:100%;font:17px/1.25 FineRoman,Georgia,serif}.venues span{font-size:13px;color:#a18443}.stay{max-width:640px;margin:25px auto 100px;padding:35px 24px 0;text-align:center;border-top:1px solid #ac986649}.stay .eyebrow,.hotel-name{font:10px/1.6 Arial,sans-serif;letter-spacing:2px;color:#7b806f}.stay h2{font:46px/1.15 FineRoman,Georgia,serif;font-weight:400;margin:15px 0}.stay>p:not(.eyebrow):not(.hotel-name){font:17px/1.6 FineRoman,Georgia,serif}.book-room{display:inline-flex;gap:35px;align-items:center;border:1px solid #a18a52;padding:15px 26px;margin:12px 0;color:#515e50;text-decoration:none;font:17px FineRoman,Georgia,serif;background:#ffffff65;transition:background .2s}.book-room:hover{background:#fff}.book-room:focus-visible{outline:2px solid #515e50;outline-offset:5px}.stay>img{display:block;width:100%;height:auto;margin-top:22px;border:8px solid #fff;box-shadow:0 5px 20px #4c493b16}
.card-copy .save-date{top:17%;font-size:32px}.card-copy h2{top:29%;font-size:37px}.wedding-date{top:51%}.city{top:55.3%}.venues{top:59.5%;font-size:16px;line-height:1.1}.venues span{display:block;line-height:.8;margin:4px 0}
#invitation{padding-top:65px}
#invitation{padding-top:110px}

/* Keep title centred independently of pre-load font measurements. */
.greeting{transform:translateX(-50%)}
.stay-reveal{display:grid;grid-template-rows:0fr;width:100%;opacity:0;visibility:hidden;transform:translateY(16px);transition:grid-template-rows 1.25s cubic-bezier(.22,1,.36,1),opacity 1s ease,transform 1.25s ease,visibility 0s 1.25s}
.stay-clip{min-height:0;overflow:hidden}
.stay-reveal.is-visible{grid-template-rows:1fr;opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}
@media(prefers-reduced-motion:reduce){.stay-reveal{transition:none;transform:none}}

.card-copy .save-date{top:15%;font-size:31px}.card-copy h2{top:26%;font-size:35px}.wedding-date{top:47.5%}.city{top:51.5%}.venues{top:55.5%;font-size:16px;line-height:1.2}.venues>div+div{margin-top:10px}.venues span{font:8px/1.3 Arial,sans-serif;letter-spacing:1.5px;margin:0 0 3px;color:#8b794f}
.stay .adults-only{font:14px/1.5 Arial,sans-serif!important;letter-spacing:1.8px;color:#65715f;margin:12px 0 20px}
.contents{clip-path:polygon(-150px -150px,925px -150px,925px 385.044px,666.344px 385.044px,666.344px 753.548px,156.108px 753.548px,156.108px 385.044px,-150px 385.044px)}
