@import"https://fonts.googleapis.com/css2?family=Allura&family=Cormorant+Garamond:wght@400;600&family=Lora:wght@400;500&family=Ms+Madi&family=The+Nautigal&family=Viaoda+Libre&display=swap";:root{--wine: #511419;--wine-dark: #30090d;--cream: #f4ede2;--paper: #fffaf3;--gold: #c9a24a;--ink: #511419;--serif: "Times New Roman", serif;--display: "Viaoda Libre", cursive;--script: "Allura", cursive}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#2b090c;color:var(--ink);font-family:var(--serif)}body.is-locked{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}.invitation{width:min(100%,680px);margin:0 auto;overflow:hidden;background:var(--cream);box-shadow:0 0 60px #0008}.cover-scene{position:relative;min-height:790px;padding:0 20px 70px;overflow:hidden;background:var(--cream) url(/images/theme/paper.webp);background-blend-mode:multiply}.cover-castle{position:absolute;left:50%;bottom:20px;width:130%;max-width:none;opacity:.1;transform:translate(-50%)}.cover-envelope{position:relative;width:min(100%,440px);height:500px;margin:0 auto;animation:cover-enter 1.2s cubic-bezier(.2,.75,.2,1) both}.envelope-back{position:absolute;z-index:1;left:0;bottom:0;width:100%}.cover-photo{position:absolute;z-index:2;left:18%;top:-30px;width:64%;height:390px;padding:8px;background:#fff;box-shadow:0 8px 22px #0004;transform:rotate(5deg);animation:photo-float 6s ease-in-out infinite}.cover-photo img{width:100%;height:100%;object-fit:cover}.cover-flower{position:absolute;z-index:3;left:9%;top:65px;width:47%;filter:drop-shadow(3px 5px 3px #0005);animation:flower-sway 5.5s ease-in-out infinite}.envelope-front{position:absolute;z-index:4;left:0;bottom:0;width:100%}.cover-names{position:relative;z-index:5;margin:4px 0 0;display:flex;flex-direction:column;text-align:center;font:400 clamp(2.45rem,10vw,4.3rem)/1.25 var(--display)}.cover-names span,.envelope h1 span{font:400 .5em/1.2 var(--serif)}.envelope h1{margin:12px 0;display:flex;flex-direction:column;font:400 clamp(2.7rem,11vw,5rem)/1.05 var(--display);letter-spacing:0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}.script{margin:0 0 8px;font:400 clamp(2rem,8vw,3.2rem)/1 var(--script)}.paper-section{position:relative;padding:72px 28px;text-align:center;background-color:var(--cream);background-image:url(/images/theme/paper.webp);background-blend-mode:multiply}.paper-section h2,.dark-panel h2{margin:8px 0 22px;text-transform:uppercase;font:700 clamp(1.15rem,4vw,1.55rem)/1.4 var(--serif)}.intro{padding-block:88px}.intro>h2{margin:4px 0;font:400 clamp(1.8rem,7vw,2.6rem)/1.4 var(--display);text-transform:none}.monogram{width:60px;height:60px;margin:18px auto;display:grid;place-items:center;border:2px solid var(--gold);color:var(--gold);font-size:2rem;transform:rotate(45deg)}.monogram:first-letter{transform:rotate(-45deg)}.families{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}.family p{margin:6px 0;font-size:.88rem}.family small{display:block;margin-top:10px;opacity:.7}.ceremony{padding-top:45px;padding-bottom:62px}.ceremony .families{margin:26px auto 30px;max-width:430px}.ceremony .family+.family{border-left:1px solid #f4ede244}.ceremony-intro{margin:28px 0;text-transform:uppercase;font-size:.75rem;line-height:1.7}.ceremony h3{margin:12px 0;font:400 clamp(2rem,7vw,3rem)/1.3 var(--display)}.ceremony-role{margin:0;text-transform:uppercase;font-size:.65rem;opacity:.7}.ceremony-date{margin-top:28px;line-height:1.8;font-size:.8rem}.dark-panel{position:relative;margin:22px;padding:62px 24px;overflow:visible;border-radius:8px;background:var(--wine) url(/images/theme/paper.webp);background-blend-mode:multiply;color:var(--cream);text-align:center;box-shadow:4px 6px 20px #26050955}.date-lockup{display:flex;justify-content:center;align-items:center;gap:18px;margin:22px 0}.date-lockup strong{font-size:4.25rem;line-height:1}.date-lockup span{border-left:1px solid #f4ede277;padding-left:18px;text-align:left;text-transform:uppercase;line-height:1.7}.lunar{opacity:.75;font-size:.8rem}.event-times{display:flex;justify-content:center;gap:48px;margin:32px 0;text-transform:uppercase;font-size:.7rem}.event-times b{display:block;margin-top:7px;font-size:1.2rem}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px auto 22px;max-width:390px}.countdown span{padding:12px 4px;border:1px solid #f4ede244}.countdown b{display:block;font-size:1.35rem}.countdown small{text-transform:uppercase;font-size:.58rem;opacity:.7}.countdown-label{margin-top:30px}.text-link{display:block;width:fit-content;margin:16px auto;cursor:pointer;text-underline-offset:4px}.light{color:var(--cream)}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 24px;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;text-decoration:none;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--wine);color:var(--cream);box-shadow:0 7px 18px #51141944}.button-light{background:var(--cream);color:var(--wine)}.button-outline{border:1px solid var(--wine);color:var(--wine);background:transparent}.map-section p{max-width:480px;margin:0 auto 24px;line-height:1.8;font-size:.85rem}.map-frame{display:block;width:100%;max-width:500px;height:320px;margin:0 auto 20px;border:1px solid #51141945;border-radius:12px}.dress-code{padding-top:36px}.swatches{display:flex;justify-content:center;gap:18px;margin-top:24px}.swatches span{width:46px;aspect-ratio:1;border-radius:50%;background:var(--swatch);border:1px solid #51141930;box-shadow:0 5px 15px #0002}.timeline ol{width:min(100%,410px);margin:40px auto 0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:1fr 18px 1fr;gap:18px;align-items:center;min-height:68px}.timeline time{text-align:right;font-size:1.1rem}.timeline time img{display:inline-block;width:42px;margin-right:24px;vertical-align:middle}.timeline li>span:last-child{text-align:left;opacity:.75;font-size:.85rem}.timeline-dot{position:relative;width:9px;height:9px;margin:auto;border-radius:50%;background:var(--cream)}.timeline-dot:after{content:"";position:absolute;left:4px;top:9px;width:1px;height:60px;background:#f4ede255}.timeline li:last-child .timeline-dot:after{display:none}.gallery{padding-inline:28px}.carousel{position:relative;width:min(100%,500px);margin:26px auto 0;overflow:hidden;border-radius:6px;box-shadow:0 14px 30px #51141933;touch-action:pan-y}.carousel-track{display:flex;transition:transform .65s cubic-bezier(.22,.65,.35,1)}.carousel-slide{flex:0 0 100%;height:540px;padding:0;border:0;background:var(--wine);cursor:zoom-in}.carousel-slide img{width:100%;height:100%;object-fit:cover}.carousel-nav{position:absolute;z-index:2;top:50%;width:42px;height:42px;border:1px solid #fff7;border-radius:50%;background:#33090db8;color:#fff;font-size:1.8rem;cursor:pointer;transform:translateY(-50%)}.carousel-nav.previous{left:12px}.carousel-nav.next{right:12px}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}.carousel-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#51141940;cursor:pointer;transition:width .25s,background .25s}.carousel-dots button.is-active{width:24px;border-radius:8px;background:var(--wine)}.guestbook form{width:min(100%,440px);margin:30px auto;display:grid;gap:14px}.guestbook label{text-align:left}.guestbook label span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.guestbook input,.guestbook textarea{width:100%;border:1px solid var(--wine);border-radius:5px;padding:13px 14px;color:var(--wine);background:#fff5;outline:none}.guestbook textarea{min-height:110px;resize:vertical}.guestbook .button{justify-self:end}.wishes{width:min(100%,440px);margin:auto;font-size:.84rem}.wish{padding:14px 0;border-bottom:1px solid #51141922;text-align:left}.wish strong{display:block;margin-bottom:4px}.gift-envelope{width:250px;border:0;background:none;color:var(--wine);cursor:pointer}.gift-visual{position:relative;display:block;height:210px;animation:gift-float 4s ease-in-out infinite}.gift-visual img{position:absolute;left:0;bottom:0;width:100%;filter:drop-shadow(0 14px 12px #0003)}.gift-back{z-index:1}.gift-card{position:absolute;z-index:2;left:50%;bottom:56px;width:135px;height:115px;display:grid;place-content:center;border:4px solid white;background:var(--cream);box-shadow:0 6px 14px #0004;font:1.7rem/1 var(--script);transform:translate(-50%) rotate(-3deg);animation:gift-card-rise 4s ease-in-out infinite}.gift-front{z-index:3}.gift-spark{position:absolute;z-index:4;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px 4px #e4bd69aa;animation:gift-spark 2s ease-in-out infinite}.gift-spark.one{left:8px;top:52px}.gift-spark.two{right:3px;top:90px;animation-delay:.6s}.gift-spark.three{right:42px;top:28px;animation-delay:1.2s}.gift-envelope:hover .gift-visual{animation-play-state:paused;transform:translateY(-6px)}.gift-envelope span{display:block;margin-top:8px;font-size:.75rem}footer{padding:50px 28px 70px;background:var(--cream);text-align:center}footer p{font-size:.8rem}footer strong{font:2rem var(--script)}.flower{pointer-events:none;-webkit-user-select:none;user-select:none}.section-flower{position:absolute;z-index:2;width:155px;filter:drop-shadow(3px 4px 3px #0004);animation:float 6s ease-in-out infinite}.section-flower.left{left:-45px;top:-45px}.section-flower.right{right:-62px;top:-55px;transform:scaleX(-1)}.envelope{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;overflow:hidden;background:linear-gradient(145deg,#6e1a20,#511419 55%,#30090d);transition:opacity .8s,visibility .8s}.envelope.is-open{opacity:0;visibility:hidden}.envelope-card{position:relative;width:min(100%,500px);min-height:420px;padding:90px 26px 45px;overflow:hidden;border:1px solid #51141933;border-radius:8px;background:#fffaf3f5;text-align:center;box-shadow:0 24px 60px #0007}.envelope-card p{margin:10px}.envelope-card .flower{position:absolute;width:210px;opacity:.38}.flower-top{left:-70px;top:-65px;transform:rotate(20deg)}.flower-bottom{right:-80px;bottom:-75px;transform:scaleX(-1) rotate(20deg)}.flourish{color:var(--wine);opacity:.7}.music-button{position:fixed;right:18px;bottom:18px;z-index:20;width:48px;height:48px;border:1px solid #fff4;border-radius:50%;background:var(--wine);color:var(--cream);cursor:pointer;box-shadow:0 5px 20px #0004}.music-button.is-playing{animation:spin 4s linear infinite}.modal{width:min(92%,520px);padding:0;border:0;border-radius:8px;background:var(--paper);color:var(--wine);box-shadow:0 24px 80px #0008}.modal::backdrop{background:#1d0508db;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{padding:28px}.modal-close{position:absolute;right:12px;top:12px;z-index:5;width:36px;height:36px;border:0;border-radius:50%;background:#51141912;color:var(--wine);cursor:pointer}.form-modal{text-align:center}.form-modal>p{line-height:1.7}.form-modal form{display:grid;gap:16px;margin-top:24px;text-align:left}.form-modal label{display:grid;gap:7px;font-size:.8rem}.form-modal input{min-width:0;padding:11px 12px;border:1px solid #51141955;border-radius:4px;background:#fff;color:var(--wine)}.form-modal fieldset{display:grid;gap:10px;border:1px solid #51141933}.form-modal fieldset label{display:flex;align-items:center}.form-modal .button{justify-self:center}.modal:has(.form-modal){width:min(calc(100% - 10px),440px);border-radius:16px;background:#fff;color:#1f2937;font-family:Montserrat,Segoe UI,sans-serif}.modal-content:has(.form-modal){padding:40px 24px 24px}.modal-content:has(.form-modal) .modal-close{top:16px;right:16px;width:32px;height:32px;display:grid;place-items:center;background:#f3f4f6;color:#9ca3af;font:300 22px/1 Segoe UI,sans-serif}.form-modal{text-align:left}.form-modal h2{margin:0 0 4px;font-size:22px;line-height:30px;letter-spacing:0}.form-modal>p{margin:0;color:#7c8494;font-size:13px;line-height:20px}.form-modal form{display:block;margin-top:25px}.form-modal .rsvp-name{display:grid;gap:8px;color:#374151;font-size:13px;font-weight:600}.form-modal .rsvp-name input{width:100%;height:50px;padding:0 16px;border:1px solid #d9dde5;border-radius:12px;color:#1f2937;font-size:14px}.form-modal .rsvp-name input::placeholder{color:#a7afbd}.form-modal fieldset{display:grid;gap:8px;margin:18px 0 16px;padding:0;border:0}.form-modal legend{margin-bottom:8px;color:#374151;font-size:13px;font-weight:600}.form-modal .rsvp-option{height:56px;display:flex;align-items:center;gap:12px;padding:0 13px;border:1px solid #e4e7ec;border-radius:12px;background:#fbfcfd;box-shadow:0 1px 2px #1018280d;color:#374151;cursor:pointer;font-size:14px;font-weight:500}.form-modal .rsvp-option input{appearance:none;width:34px;height:34px;flex:0 0 34px;margin:0;padding:0;border:0;border-radius:50%;background:#edf0f4}.form-modal .rsvp-option input:checked:after{content:"";display:grid;place-items:center;width:100%;height:100%;color:#8b95a5;font-size:17px}.form-modal form>.button{width:100%;height:50px;padding:0 20px;border-radius:12px;background:var(--wine);color:#fff;font-size:14px;letter-spacing:0;text-transform:none}.form-modal form>.button:disabled{background:#f8f4ef;color:#c5a4a4;box-shadow:none;cursor:not-allowed}.gift-modal{padding-block:12px;text-align:center}.gift-note{margin-top:24px;padding:30px 18px;border:1px solid var(--gold);font:1.5rem/1.5 var(--script)}.bank-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.bank-grid article{display:grid;gap:5px;justify-items:center;padding:14px 8px;border:1px solid #51141922}.bank-grid span,.bank-grid small{font-size:.7rem}.qr-code{width:120px;aspect-ratio:1;margin-bottom:8px;object-fit:contain;background:#fff}.save-qr{margin-top:8px;color:var(--wine);font-size:11px;text-underline-offset:3px}.lightbox{position:relative;display:grid;place-items:center;min-height:min(72vh,720px);margin:-28px;background:#1d0508}.lightbox img{width:100%;max-height:72vh;object-fit:contain}.lightbox-count{position:absolute;left:14px;top:8px;z-index:2;color:#fff}.lightbox-nav{position:absolute;top:50%;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:#0008;color:#fff;font-size:2rem;cursor:pointer}.lightbox-nav.previous{left:10px}.lightbox-nav.next{right:10px}.modal-close:has(+.lightbox){color:#fff;background:#0008}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.is-visible{opacity:1;transform:none}@keyframes float{50%{transform:translateY(-9px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cover-enter{0%{transform:translateY(-35px) scale(.96)}}@keyframes photo-float{50%{transform:translateY(-10px) rotate(3deg)}}@keyframes flower-sway{50%{transform:translate(-6px,-8px) rotate(-2deg)}}@keyframes gift-float{50%{transform:translateY(-8px) rotate(-1deg)}}@keyframes gift-card-rise{50%{transform:translate(-50%,-13px) rotate(2deg)}}@keyframes gift-spark{50%{opacity:.25;transform:scale(.35)}}@media(max-width:520px){.families{gap:10px}.family p{font-size:.72rem}.dark-panel{margin-inline:14px}.event-times{gap:30px}.section-flower{width:125px}.cover-scene{min-height:660px}.cover-envelope{height:420px}.cover-photo{height:320px}.carousel-slide{height:450px}.timeline time img{width:34px;margin-right:10px}}.invitation{width:100%;max-width:480px;background:#fff7eb url(/images/theme/paper.webp) center top / 100% auto repeat-y;color:var(--wine);font-weight:300}.cover-scene{min-height:675px;padding:60px 36px 56px;background:transparent;overflow-x:clip}.save-date{position:relative;z-index:5;margin:0;text-align:center;font:600 18px/27px Cormorant Garamond,serif;letter-spacing:2.4px;text-transform:uppercase}.cover-castle{top:26%;bottom:auto;width:170%;opacity:.1}.cover-envelope{z-index:10;width:82%;max-width:330px;height:auto;aspect-ratio:333 / 384;margin:96px auto 0}.envelope-back{inset:0 0 auto;width:100%}.cover-photo{left:33%;top:-2%;width:64%;height:auto;aspect-ratio:221 / 309;padding:0;transform:rotate(12deg)}.cover-flower{left:-16%;top:-18%;width:42%;transform:rotate(-17deg)}.envelope-front{bottom:0;width:100%}.cover-names{margin-top:64px;gap:18px;font:300 43px/1.12 var(--display)}.cover-names span{position:absolute;top:31%;left:50%;z-index:-1;transform:translate(-50%);color:var(--wine);font:300 58px/1 Ms Madi,cursive;opacity:.16}.dark-panel{width:88%;max-width:420px;margin:0 auto;padding:36px 20px 40px;border-radius:13px;background-color:#5b1118;background-image:url(/images/theme/paper.webp);box-shadow:none}.paper-section{background:transparent}.paper-section h2,.dark-panel h2{margin:0 0 24px;font:700 20px/30px var(--serif)}.ceremony{min-height:785.5px;display:flex;flex-direction:column;align-items:center}.ceremony .section-flower{top:285px;right:-70px;transform:none}.ceremony h2{margin-bottom:20px;font-size:20px;line-height:30px;text-transform:uppercase;letter-spacing:.48px}.ceremony .families{position:relative;width:100%;margin:0 auto 20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.ceremony .families:after{content:"";position:absolute;top:8px;bottom:8px;left:50%;width:1px;background:#f4ede266;transform:translate(-50%)}.ceremony .family{min-width:0;text-align:center}.ceremony .family+.family{border-left:0}.family-label{margin-bottom:2px!important;font:300 12px/18px var(--serif);text-transform:none}.family p{margin:0;font-size:12px;font-weight:700;line-height:20px}.family small{margin-top:2px;font-size:9px;line-height:14px}.ceremony-intro{margin:4px 0 11px;font-size:12px;line-height:18px}.ceremony h3{width:80%;min-height:80px;margin:0 auto;display:grid;place-items:center;font:400 43px/52px var(--display);white-space:nowrap;text-align:center}.ceremony-role{width:100%;height:18px;margin-top:10px;font-size:10px;line-height:15px;text-align:center}.ceremony .monogram{width:20px;height:52.5px;margin:11px auto 12px;border:0;color:var(--cream);font:300 35px/52.5px Ms Madi,cursive;transform:none}.ceremony-at{width:270px;margin:22px auto 14px;text-align:center;text-transform:uppercase;font-size:14px;line-height:22px}.ceremony-when{display:grid;grid-template-columns:1fr 1fr;width:190px;margin:0 auto;text-align:center;text-transform:uppercase;font:300 13px/20px Baskerville,var(--serif)}.ceremony .date-lockup{display:grid;grid-template-columns:58px 82px;width:156px;margin:10px auto;gap:16px}.ceremony .date-lockup strong{display:grid;place-items:center;text-align:center}.ceremony .date-lockup span{display:flex;flex-direction:column;justify-content:center;padding-left:16px}.ceremony .lunar{width:100%;text-align:center}.date-lockup strong{font:300 40px/1 var(--serif)}.date-lockup span{font-size:14px}.lunar{margin:7px 0;font-size:11px}.gallery{height:490px;padding:40px 24px;overflow-x:clip}.gallery h2{margin:0;text-transform:uppercase}.carousel{width:100%;max-width:380px;height:340px;margin:20px auto 0;overflow:visible;border-radius:0;box-shadow:none;perspective:1000px}.carousel-track{position:relative;height:100%;transform-style:preserve-3d}.carousel-slide{position:absolute;top:4%;left:15%;width:70%;height:92%;padding:0;overflow:hidden;border-radius:5px;box-shadow:0 10px 22px #3a0b104d;opacity:var(--gallery-opacity);transform:translate(var(--gallery-x)) translateZ(var(--gallery-z)) rotateY(var(--gallery-rotate)) scale(var(--gallery-scale));transition:transform 1.1s cubic-bezier(.22,.61,.36,1),opacity 1.1s ease}.carousel-slide:not(.is-active){cursor:pointer}.carousel-slide img{pointer-events:none}.carousel-nav{display:none}.carousel-dots{position:relative;z-index:110;gap:6px;margin-top:12px}.carousel-dots button{transition:width .3s,background .3s}.event{min-height:794px;margin-bottom:16px;padding:40px 20px 36px;border-radius:10px}.event .section-flower{top:245px;right:auto;left:-45px;width:101px;transform:none}.event h2{margin-bottom:14px;text-transform:uppercase;font:400 20px/30px Baskerville,var(--serif)}.event .date-lockup{margin:10px 0}.event-when{display:flex;width:130px;margin:14px auto 8px;justify-content:space-between;text-transform:uppercase;font:300 13px/20px Baskerville,var(--serif)}.event-times{margin:24px 0}.countdown-label{margin-top:20px}.event [data-calendar]{position:absolute;left:50%;bottom:100px;margin:0;font-size:14px;line-height:20px;transform:translate(-50%)}.event [data-open-rsvp]{position:absolute;left:50%;bottom:36px;padding:8px 24px;font:300 14px/20px Baskerville,var(--serif);letter-spacing:.35px;transform:translate(-50%);white-space:nowrap}.month-calendar{width:280px;height:261.5px;margin:89px auto 24px;padding:10px 16px 14px;border-radius:10px;background:#f3eadf;color:var(--wine)}.month-calendar>p{margin:0 0 14px;padding:10px 0;font:400 25px/37.5px The Nautigal,cursive}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);align-items:center}.weekdays{padding:9px 0;border-top:1px solid #64131b44;border-bottom:2px solid var(--wine);font-size:9px}.calendar-days span{display:grid;place-items:center;min-height:19px}.wedding-day{width:22px;margin:auto;border-radius:50% 50% 48% 52%;background:var(--wine);color:#fff;font-weight:700}.wedding-day:after{content:"♥";position:absolute;color:var(--wine);font-size:24px;z-index:-1}.map-section{height:467px;min-height:467px;padding:32px 24px;overflow:hidden}.map-section>:not(.map-castle){position:relative;z-index:1}.map-castle{position:absolute;left:50%;top:-1%;width:158%;max-width:none;opacity:.12;transform:translate(-50%)}.map-section h2{margin-bottom:8px;font-size:16px;line-height:24px;text-transform:uppercase}.map-section p{margin-bottom:12px;line-height:1.5;font-size:12px}.map-frame{height:268px;margin-bottom:16px;border:0;border-radius:0}.dress-code{min-height:194px;padding:40px 24px}.dress-code h2{margin-bottom:2px}.dress-code p{margin:0;font-family:Lora,serif;font-size:12px}.swatches{gap:16px;margin-top:20px}.swatches span{width:40px;border-color:#5114193d;box-shadow:0 2px 5px #51141914}.timeline{min-height:411px;margin:16px auto;padding:36px 24px;border-radius:10px}.timeline ol{margin-top:16px}.timeline li{min-height:57px;gap:8px}.timeline time{font-size:14px}.timeline time img{width:40px;margin-right:10px}.timeline li>span:last-child{font-size:12px}.timeline-dot:after{height:48px}.guestbook{height:918px;padding:73.6px 24px 32.4px;overflow:hidden;background:transparent;color:var(--wine)}.guestbook-paper{position:absolute;left:50%;top:-15px;width:120%;max-width:650px;transform:translate(-50%);opacity:.95;filter:drop-shadow(4px 4px 4px #0004)}.guestbook>:not(.guestbook-paper){position:relative;z-index:1}.guestbook-form-panel{height:270px}.guestbook h2{margin-bottom:24px;letter-spacing:.6px;text-transform:uppercase;transform:translateY(16px)}.guestbook form{width:280px;height:216px;margin:24px auto 0;padding:16px;display:block;background:transparent;box-shadow:none}.guestbook label{display:block}.guestbook label:first-child{margin-bottom:16px}.guestbook input,.guestbook textarea{border-color:var(--wine);background:#fffaf388}.guestbook input,.guestbook textarea{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:300;line-height:20px}.guestbook textarea{height:78px;min-height:78px;resize:none}.guestbook .button{background:var(--wine);color:var(--cream)}.guestbook .button{padding:8px 24px;font-size:14px;line-height:20px}.wish-actions{height:36px;margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}.magic-wish{width:38px;height:34px;display:grid;place-items:center;overflow:hidden;border:0;border-radius:7px;padding:0;background:#51141912;cursor:pointer}.magic-wish span{display:block;font-size:18px;line-height:1}.wishes{max-height:476px;margin-top:80.5px;overflow-y:auto;padding-right:8px}.wish{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:16px;border:1px solid #51141955;border-radius:8px;margin-bottom:12px;background:#ffffff8c;font-size:14px;font-weight:300;line-height:20px}.wish span{grid-column:1 / -1}.wish time{grid-column:2;grid-row:1;margin:0;font-size:10px;opacity:.65;white-space:nowrap}.gift{min-height:475px;padding:32px 24px;overflow-x:clip}.gift h2{position:relative;z-index:2;margin-bottom:16px;text-transform:uppercase}.gift-castle{position:absolute;left:50%;top:6%;width:155%;max-width:none;transform:translate(-50%)}.gift-envelope{position:relative;z-index:2;width:250px;height:357px;padding:0}.gift-visual{height:324px}.gift-visual img{bottom:0;width:200px;filter:drop-shadow(0 14px 12px #0003)}.gift-back{left:69px!important;z-index:1;transform:translate(20%,-10%) scale(-.8,.8) rotate(-15deg);animation:ienv-back-wave 4.2s ease-in-out infinite}.gift-front{left:-20px!important;z-index:2;transform:rotate(-10deg);animation:ienv-float-main 4s ease-in-out infinite}.gift-envelope>span:last-child{position:relative;z-index:3}.gift-envelope:hover .gift-visual{animation:gift-shake .55s ease-in-out infinite}.gift-envelope:hover .gift-visual img{animation-play-state:paused}footer{height:76px;min-height:76px;padding:18px 28px 8px}footer p{margin:0}footer strong{display:none}.branding{height:28px;display:grid;place-items:center;color:#64131b70;font-size:11px}@keyframes ienv-float-main{50%{transform:translateY(-8px) rotate(-7deg)}}@keyframes ienv-back-wave{50%{transform:translate(18%,-14%) scale(-.82,.82) rotate(-10deg)}}@keyframes gift-shake{0%,to{transform:scale(1.08) rotate(0)}25%{transform:scale(1.08) rotate(-3deg) translate(-3px)}75%{transform:scale(1.08) rotate(3deg) translate(3px)}}@media(min-width:640px){.carousel{height:520px}.gallery{height:670px}.carousel-nav{display:block}}.reveal{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.event{width:min(84%,352px);min-height:800px;margin:24px auto 16px;padding:36px 20px 40px;border-radius:10px;background-color:#5b1118;background-image:url(/images/theme/paper.webp);background-blend-mode:multiply}.event .section-flower{top:125px;right:auto;left:-43px;width:101px;transform:none}.event>.eyebrow:first-of-type{margin:0 0 24px;font:700 20px/30px var(--serif);letter-spacing:.48px}.event h2{margin:0 0 16px;text-transform:uppercase;font:400 20px/30px Baskerville,var(--serif)}.event-when{display:flex;width:130px;margin:0 auto 8px;justify-content:space-between;text-transform:uppercase;font:300 13px/20px Baskerville,var(--serif)}.event .date-lockup{margin:10px 0 0}.event .lunar{margin:7px 0 0}.event-times{gap:42px;margin:24px 0 0}.month-calendar{width:100%;height:285px;margin:31px auto 24px;padding:12px 16px 14px;border-radius:10px;background:#f3eadf;color:var(--wine)}.month-calendar>p{margin:0 0 14px;padding:7px 0 9px;font:400 25px/37.5px The Nautigal,cursive}.weekdays{padding:8px 0 9px;border-top:1px solid #64131b44;border-bottom:2px solid var(--wine);font-size:9px}.calendar-days{row-gap:8px;padding-top:10px;font-size:11px}.event [data-calendar]{bottom:100px;font-size:14px;line-height:20px}.event [data-open-rsvp]{bottom:36px;padding:8px 24px;font:300 14px/20px Baskerville,var(--serif);letter-spacing:.35px;white-space:nowrap}.gift{min-height:490px;padding:52px 24px 22px;overflow:hidden;background:transparent}.gift h2{margin:0 0 14px;font:700 20px/30px var(--serif);letter-spacing:.48px;text-transform:uppercase}.gift-castle{top:15%;width:155%;opacity:.12}.gift-envelope{width:330px;height:365px;max-width:100%;padding:0}.gift-visual{height:330px}.gift-visual img{width:210px;filter:drop-shadow(0 12px 10px #0002)}.gift-front{left:0!important;z-index:2;transform:rotate(-15deg);animation:ienv-float-main 4s ease-in-out infinite}.gift-back{left:122px!important;z-index:1;transform:scale(-.75,.75) rotate(-15deg);animation:ienv-back-wave 4.2s ease-in-out infinite}.gift-envelope>span:last-child{margin-top:8px;font-size:12px}.cover-flower{left:-8%;animation:cover-flower-float 5.5s ease-in-out infinite}@keyframes cover-flower-float{0%,to{transform:rotate(-17deg)}50%{transform:translateY(-7px) rotate(-17deg)}}.ceremony h3{width:100%;margin-inline:auto;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}.event{min-height:745px}.event [data-calendar]{bottom:38px}
