@font-face{font-family:Roboto;src:url(/assets/fonts/roboto-regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:PlayfairDisplay;src:url(/assets/fonts/playfairdisplay.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:BrikeyMoura Regular;src:url(/assets/fonts/brikeymoura-regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:HoaTay1;src:url(/assets/fonts/hoatay1.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Chetta Vissto;src:url(/assets/fonts/chetta-vissto.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Lora;src:url(/assets/fonts/lora-regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Ergisa;src:url(/assets/fonts/1ftv-vip-ergisa.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:UVN Hoa Tay;src:url(/assets/fonts/uvn-hoa-tay.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/fonts/fraunces.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Sloop Script Pro;src:url(/assets/fonts/sloop-script-pro.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Be Vietnam Pro;src:url(/assets/fonts/be-vietnam-pro.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Brown Sugar;src:url(/assets/fonts/brown-sugar.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{margin:0;background:#5e0c12;color:#f2efe7;font-family:Georgia,serif}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d7be82;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default}.app{min-height:100vh}.invitation{max-width:800px;margin:auto;overflow:hidden}.scene{position:relative;width:100%;overflow:hidden}.scene__canvas{position:relative;transform-origin:top left}.element-content{width:100%;height:100%}.template-element img{display:block}.cover-seal__center{position:absolute;top:50%;left:50%;width:90%;height:auto;transform:translate(-50%,-50%);clip-path:circle(35%);pointer-events:none}.countdown{display:flex;gap:5px;width:100%;height:100%;font-family:Ergisa,Georgia,serif;color:#fff}.countdown__box{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;align-items:center;background:#892a2a;border-radius:4px;padding:8px 5px;gap:5px}.countdown__box>span{font-size:25px;line-height:1.15}.countdown__box>small{font-size:25px;line-height:1.4}.countdown--flow{gap:9px;margin:28px auto;height:96px;max-width:420px}.countdown--flow .countdown__box>span{font-size:30px}.countdown--flow .countdown__box>small{font-size:15px}.rsvp-section{padding:20px 18px 50px;background:#f2efe7;color:#680909}.rsvp-section>h2{font: 74px UVN Hoa Tay,Georgia,serif;text-align:center;margin:0 0 25px}.rsvp-section--desktop{padding-top:0}.rsvp-section--desktop .rsvp{max-width:100%}.invitation-footer{text-align:center;padding:30px 20px 50px;display:flex;gap:10px;flex-direction:column;letter-spacing:2px;border-top:1px solid #ffffff18}.invitation-footer>span{font:clamp(20px,7.8vw,36px) "UVN Hoa Tay",Georgia,serif;letter-spacing:.055em}.invitation-footer>span>span{display:inline-block;width:max-content;max-width:100%;overflow-wrap:anywhere}.invitation-footer>small{font-size:12px}.sample-badge{position:fixed;top:18px;left:14px;z-index:1001;background:#41090dd4;border:1px solid #e7d8b62b;border-radius:20px;padding:9px 12px;max-width:calc(100% - 128px);font:10px/1.4 Be Vietnam Pro,sans-serif;letter-spacing:.2px}.edit-button{position:fixed;right:16px;top:72px;z-index:1002;color:#5e0c12;background:#f2efe7;border:1px solid #ac8f58;border-radius:22px;min-height:44px;padding:8px 18px;font:12px Be Vietnam Pro,sans-serif}.draft-warning{position:fixed;bottom:70px;left:20px;right:20px;z-index:2000;background:#f2efe7;color:#5e0c12;padding:10px;border-radius:6px}.loading-screen{min-height:100vh;display:flex;gap:25px;align-items:center;justify-content:center;flex-direction:column;font-size:34px;padding:24px;text-align:center}.flow-copy{max-width:650px;margin:auto;padding:15px 28px 30px;text-align:center;font:15px/1.9 Lora,Georgia,serif}.flow-copy p{margin:0 0 28px}.flow-copy p:last-child{margin-bottom:0}.flow-intro{padding-block:20px 36px;font-size:clamp(15px,2.4vw,19px);text-wrap:balance}.flow-intro p:first-child{max-width:29ch;margin-inline:auto;margin-bottom:18px;font:400 clamp(19px,3.5vw,28px)/1.5 Fraunces,Georgia,serif;white-space:pre-line}.flow-countdown{text-align:center;padding:12px 22px 55px}.flow-countdown h2{font: 37px/1.35 UVN Hoa Tay,Georgia,serif;margin:20px 0}.flow-countdown>p{font:16px Ergisa,Georgia,serif}.event-details{padding-top:12px}.event-details .eyebrow{font:12px Be Vietnam Pro,sans-serif;letter-spacing:2px;margin:0 0 15px}.event-details h2{font:34px Fraunces,Georgia,serif;font-weight:400;letter-spacing:3px;margin:0 0 24px}.event-details h3{font:13px/1.6 Be Vietnam Pro,sans-serif;letter-spacing:1px;margin:32px 0 15px}.event-details h3:first-of-type{font:21px/1.5 Lora,serif;letter-spacing:0}.outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 25px;border:1px solid #e8dbc3;border-radius:25px;color:inherit;text-decoration:none;font-size:13px;margin:4px 0 10px}.dress-swatches{display:flex;justify-content:center;gap:15px;margin:24px 0}.dress-swatches i{width:35px;height:35px;border:1px solid #d4c5a3;border-radius:50%;background:#ede8dc}.dress-swatches i:nth-child(2){background:#292723}.dress-swatches i:nth-child(3){background:#8a0a12}.dress-swatches i:nth-child(4){background:#a49e82}.flow-timeline{padding:35px 35px 30px;text-align:center;background:#f2efe7;color:#4b2525;margin:15px 18px 35px;box-shadow:0 4px 20px #0002;transform:rotate(-1deg)}.flow-timeline h2{font: 45px UVN Hoa Tay,serif;margin:0 0 30px}.flow-timeline ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:30px 18px}.flow-timeline li{display:flex;flex-direction:column;gap:9px;align-items:center;font:11px Be Vietnam Pro,sans-serif}.timeline-heart{font:32px Georgia,serif;color:#680909}.flow-timeline time{font:21px Fraunces,serif}.story-copy>h2{font: 48px UVN Hoa Tay,serif;margin:20px 0}.story-copy .story-subtitle{font:25px Ergisa,serif;margin-bottom:30px}@media(max-width:600px){.sample-badge{font-size:8px;top:20px;padding:8px 10px;max-width:calc(100% - 125px)}.flow-copy{font-size:15px}.invitation-footer{padding-bottom:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}.opening{background:var(--opening-color, #5e0c12)}.invitation:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
