@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_5972bc34-module__OU16Qa__className{font-family:Inter,Inter Fallback;font-style:normal}
@font-face{font-family:Makina;src:url(/fonts/29lt-makina-regular.otf)format("opentype");font-weight:400;font-style:normal}@font-face{font-family:AR RomanMinchoJP;src:url("/fonts/AR RomanMinchoJP UL.ttc")format("truetype");font-weight:400;font-style:normal}@font-face{font-family:ChenYuluoyan;src:url(/fonts/ChenYuluoyan-2.0-Thin.ttf)format("truetype");font-weight:700;font-style:normal}@font-face{font-family:OpenHuninn;src:url(/fonts/jf-openhuninn-2.1.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:naikaifont;src:url(https://cdn.jsdelivr.net/gh/max32002/naikaifont@1.0/webfont/NaikaiFont-Regular-Lite.woff2)format("woff2");font-weight:400;font-style:normal}*{box-sizing:border-box;font-family:var(--main-font,"Makina",Arial,sans-serif);margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--main-font,"Makina",Arial,sans-serif);background-color:#f5f3f0;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding:2rem;font-weight:400;display:flex}.invitation-cover-container{z-index:1000;width:100%;height:100%;position:fixed;top:0;left:0}.invitation-gif-fade{animation:4s ease-in-out forwards fadeOut}@keyframes fadeOut{0%{opacity:1}to{opacity:.1}}.main-container{flex-direction:column;justify-content:center;align-items:center;width:100vw;display:flex}.language-switcher{z-index:1000;color:#2c2c2c;cursor:pointer;background-color:#f1eee3;border:1px solid #daa3a3;border-radius:5px;padding:4px 8px;font-size:12px;font-weight:400;position:fixed;top:9px;right:12px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-animation{animation:3s ease-in-out infinite float}.wedding-container{background-color:#f1eee3;background-image:url(/bg.png);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:12px;align-items:center;gap:4rem;width:100%;max-width:1200px;height:600px;display:flex;overflow:hidden;box-shadow:0 15px 35px #0000001a}.wedding-container-2{background-color:#f1eee3;background-image:url(/bg-2.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;justify-content:center;align-items:flex-start;gap:4rem;width:100%;max-width:1200px;min-height:600px;margin-top:2rem;padding:3rem;display:flex;overflow:hidden;box-shadow:0 15px 35px #0000001a}.rsvp-title{text-align:center;color:#2c2c2c;letter-spacing:1px;margin-top:1rem;margin-bottom:5rem;padding-top:0;font-size:2.5rem;font-weight:400}.photo-section{flex:1;justify-content:center;align-items:center;max-width:500px;display:flex}.couple-photo{object-fit:cover;border-radius:8px;width:100%;max-width:400px;height:auto;box-shadow:0 10px 30px #0000001a}.selfie-image-1{position:absolute;top:20px;right:10px}.selfie-image-2{position:absolute;bottom:10px;right:32%}.text-section{flex:1;padding-left:2rem}.couple-names{color:#2c2c2c;letter-spacing:1px;margin-bottom:1rem;font-family:Makina;font-size:6rem;font-weight:400;line-height:1.1}.name-span{margin-left:120px;font-family:Makina}.announcement{color:#2c2c2c;margin-bottom:2.5rem;font-family:Makina;font-size:3.2rem;font-weight:400}.wedding-details{color:#555;width:90%;margin-bottom:3rem;font-size:2rem;line-height:1.2}.rsvp-form-container{width:100%;max-width:720px;margin-top:12rem;padding:0;position:relative}.rsvp-header{text-align:center;margin-bottom:1rem}.rsvp-form{grid-template-columns:1fr;gap:1.25rem;display:grid}.span-2{grid-column:1/-1}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#2c2c2c;letter-spacing:.5px;font-size:2rem;font-weight:400}.form-group input,.form-group textarea{background-color:#0000;border:none;border-bottom:1.5px solid #b38b8b;padding:0;font-size:1.5rem;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus{background-color:#0000;border:none;border-bottom:2px solid #2c2c2c;outline:none}.form-group textarea{resize:vertical;min-height:50px}.submit-button{color:#fff;cursor:pointer;letter-spacing:2px;text-transform:uppercase;background-color:#2c2c2c;border:none;border-radius:8px;align-self:center;margin-top:.5rem;padding:12px 28px;font-size:2rem;transition:all .3s}.submit-button:hover{background-color:#444;transform:translateY(-2px);box-shadow:0 5px 15px #0003}.rsvp-button{color:#fff;cursor:pointer;letter-spacing:2px;text-transform:uppercase;z-index:999;background-color:#2c2c2c;border:none;border-radius:6px;min-width:120px;padding:12px 30px;font-size:1rem;transition:all .3s;position:fixed;bottom:24px}.rsvp-button:hover{background-color:#444}.rsvp-button-link{text-transform:uppercase;border-radius:6px;text-decoration:none;display:inline-block;box-shadow:10px 10px 30px #0000001a}.form-actions{justify-content:center;margin-top:.5rem;display:flex}@media (max-width:480px){body{padding:12px}.wedding-container{text-align:center;background-image:url(/mobile-bg.png);background-position:50%;background-size:cover;flex-direction:column;justify-content:center;gap:1.5rem;width:95vw;height:auto;min-height:100vh;padding:2rem 1rem}.photo-section{display:none}.text-section{text-align:center;flex-direction:column;align-items:center;width:100%;padding:1rem;display:flex}.couple-names{margin-bottom:0;margin-left:-60px;font-size:3.2rem;line-height:1}.name-span{margin-left:185px}.announcement{margin-bottom:1rem;font-size:3rem;font-weight:400}.wedding-details{width:100%;min-width:330px;margin-bottom:3.5rem;font-size:1.4rem;line-height:1.2}.rsvp-button{letter-spacing:2px;align-self:center;padding:12px 30px;font-size:1rem}.wedding-container-2{justify-content:center;align-items:center;width:95vw;min-height:500px;margin-top:1rem;padding:2rem}.rsvp-form-container{max-width:100%;margin-top:3rem;padding:0}.rsvp-form{gap:1.2rem}.rsvp-title{margin-bottom:2rem!important;font-size:1.5rem!important}.submit-button{font-size:1rem}.form-group label{font-size:1.5rem}.form-group input,.form-group textarea{font-size:1.2rem}.selfie-image-1{width:160px;position:absolute;top:30px;left:20px}.selfie-image-2{bottom:20px;right:20px}}@media (max-width:768px) and (min-width:481px){body{padding:1.5rem}.wedding-container{text-align:center;background-image:url(/mobile-bg.png);background-position:0;background-size:cover;flex-direction:column;gap:2rem;height:auto;min-height:100vh;padding:2rem}.text-section{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:1.5rem;display:flex}.couple-names{margin-bottom:1.5rem;font-size:3rem;line-height:1.1}.announcement{margin-bottom:2.5rem;font-size:1.8rem;font-weight:400}.wedding-details{width:100%;margin-bottom:2.5rem;font-size:1.1rem;line-height:1.6}.rsvp-button{letter-spacing:2px;align-self:center;padding:12px 28px;font-size:1rem}.wedding-container-2{justify-content:center;align-items:center;min-height:550px;margin-top:1.5rem;padding:2.5rem}.rsvp-form-container{max-width:100%;padding:0}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s ease-out fadeIn;position:fixed;top:0;left:0;overflow-x:hidden}.modal-content{text-align:center;background:linear-gradient(135deg,#f5f3f0 0%,#f1eee3 100%);border:2px solid #b38b8b33;border-radius:16px;width:100%;max-width:400px;padding:2.5rem;animation:.4s ease-out slideIn;position:relative;overflow-x:hidden;box-shadow:0 20px 40px #00000026}.modal-icon{margin-bottom:1rem;font-size:3rem;animation:.6s ease-out bounceIn}.modal-content h2{color:#2c2c2c;letter-spacing:1px;margin-bottom:1rem;font-size:2.8rem;font-weight:400}.modal-content p{color:#555;margin-bottom:2rem;font-size:1.5rem;line-height:1.6}.modal-button{color:#fff;cursor:pointer;letter-spacing:2px;text-transform:uppercase;background-color:#2c2c2c;border:none;border-radius:8px;padding:12px 32px;font-size:1.5rem;transition:all .3s;box-shadow:0 4px 12px #0000001a}.modal-button:hover{background-color:#b38b8b;transform:translateY(-2px);box-shadow:0 8px 20px #b38b8b4d}.error-modal .modal-content{background:linear-gradient(135deg,#ffeaea 0%,#fcc 100%);border-color:#ff6b6b}.error-modal .modal-icon{color:#ff6b6b}.video-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background-color:#000000f2;justify-content:center;align-items:center;width:100%;height:100%;position:fixed;top:0;left:0}.sorting-gif{border-radius:12px;width:auto;max-width:90%;height:auto;max-height:90%;box-shadow:0 20px 60px #00000080}.rsvp-modal-content{text-align:left;width:90%;max-width:720px;min-height:85vh;max-height:95vh;padding:3rem 2.5rem;overflow-y:auto}.modal-close{color:#b38b8b;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:2.5rem;line-height:1;transition:color .3s;display:flex;position:absolute;top:1rem;right:1.5rem}.modal-close:hover{color:#2c2c2c}.rsvp-modal-content .rsvp-title{margin-top:0;margin-bottom:2rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:scale(.8)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleInBounce1{0%{opacity:0;transform:scale(2.5)rotate(9deg)}to{opacity:1;transform:scale(1)rotate(9deg)}}@keyframes scaleInBounce2{0%{opacity:0;transform:scale(2.5)rotate(-9deg)}to{opacity:1;transform:scale(1)rotate(-9deg)}}.animate-scale-in-1{animation:.8s ease-out forwards scaleInBounce1}.animate-scale-in-2{animation:.8s ease-out .3s both scaleInBounce2}@media (max-width:480px){.modal-content{border-radius:12px;margin:1rem;padding:2rem 1.5rem}.rsvp-modal-content{max-height:70vh;padding:2rem 1.5rem}.modal-content p{margin-bottom:1.5rem}.modal-icon{font-size:2.5rem}.modal-button{padding:10px 28px}}.wedding-container-3{background-color:#f1eee3;background-image:url(/bg-3.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;justify-content:center;align-items:center;gap:4rem;width:100%;max-width:1200px;min-height:600px;margin-top:2rem;padding:3rem;display:flex;overflow:hidden;box-shadow:0 15px 35px #0000001a}.reception-info{text-align:center;color:#2c2c2c;flex-direction:column;align-items:center;width:100%;display:flex}.section-title{color:#2c2c2c;letter-spacing:1px;width:75%;margin-top:5rem;font-size:3.2rem;font-weight:400}.reception-description{height:12rem}.reception-grid{grid-template-columns:repeat(3,1fr);max-width:1000px;display:grid}.reception-column{padding:2rem}.reception-column h3{color:#b38b8b;letter-spacing:.5px;margin-bottom:1rem;font-size:2.5rem;font-weight:400}.reception-column p{color:#555;margin:0;font-size:1.5rem}.reception-image{width:auto;max-width:400px;height:120px}@media (max-width:768px){.wedding-container-3{flex-direction:column;gap:2rem;min-height:auto;padding:2rem 1rem}.section-title{font-size:2rem}.reception-grid{grid-template-columns:1fr;gap:1.5rem}.reception-column{padding:1.5rem}.reception-column h3{font-size:1.3rem}.reception-column p{font-size:.95rem}}@media (max-width:480px){.wedding-container-3{width:95vw;padding:1.5rem 1rem}.section-title{font-size:3.2rem}.reception-column{padding:1.25rem}.reception-column p{font-size:1.5rem}.reception-column h3{font-size:2rem}}.wedding-container-4{background-color:#f1eee3;background-image:url(/bg-4.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;justify-content:flex-start;align-items:flex-start;gap:4rem;width:100%;max-width:1200px;min-height:600px;margin-top:2rem;padding:3rem;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #0000001a}.party-info,.party-info-en{text-align:left;color:#2c2c2c;width:53%;margin-left:1rem}.party-info p,.party-info-en p{width:80%;padding-block:1rem;font-size:1.8rem}.section-title{margin-top:6rem;margin-bottom:2rem}@media (max-width:768px){.wedding-container-4{flex-direction:column;gap:2rem;min-height:auto;padding:2rem 1rem}.party-info{width:40%;margin-bottom:2.5rem}}@media (max-width:480px){.wedding-container-4{background-position:50%;background-size:cover;width:95vw;padding:1.5rem 1rem}.party-info{width:100%;margin-block:12rem}.party-info-en{margin-block:12rem;align-items:center;width:100%;margin-left:0;display:grid}.party-info-en p{width:100%;padding:1rem;font-size:1.8rem}.party-info p{font-size:1.8rem}.section-title{margin-top:3rem;margin-bottom:1rem;padding:1rem}}.wedding-container-5{text-align:center;background-color:#f1eee3;background-image:url(/bg-5.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;gap:4rem;width:100%;max-width:1200px;height:100%;min-height:600px;margin-top:2rem;padding:1rem;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #0000001a}.event-info{width:100%}.event-info span{font-size:2rem}.event-info-title{color:#2c2c2c;letter-spacing:1px;margin-top:1.5rem;margin-bottom:1rem;font-size:3.2rem;font-weight:400}.event-grid{background-color:#f1eee3;background-image:url(/bg-5-a.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;gap:5px;width:100%;height:100%;margin:0;padding:3rem;overflow:hidden}.event-column{text-align:center;color:#2c2c2c;justify-content:center;width:100%;margin-top:3rem;font-size:2.5rem}.wedding-container-6{text-align:center;padding:1rem;background-color:#f1eee3;background-image:url(/bg-6.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;gap:4rem;width:100%;max-width:1200px;min-height:600px;margin-top:2rem;padding-bottom:3rem;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #0000001a}.reminder-info{text-align:center;color:#2c2c2c;width:100%;margin-bottom:1rem;padding-inline:10%}.reminder-info-title{color:#2c2c2c;letter-spacing:1px;margin-top:15rem;margin-bottom:2rem;font-size:3.2rem;font-weight:400}.reminder-info-column{letter-spacing:1px;opacity:0;justify-content:space-around;align-items:center;gap:2rem;margin:5rem;font-size:2.2rem;font-weight:400;display:flex}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.reminder-slide-left.in-view{animation:.8s ease-out forwards slideInFromLeft}.reminder-slide-right.in-view{animation:.8s ease-out forwards slideInFromRight}.reminder-slide-left-delay-1.in-view{animation:.8s ease-out .1s forwards slideInFromLeft}.reminder-slide-right-delay-1.in-view{animation:.8s ease-out .1s forwards slideInFromRight}.reminder-slide-left-delay-2.in-view{animation:.8s ease-out .2s forwards slideInFromLeft}.reminder-slide-right-delay-2.in-view{animation:.8s ease-out .2s forwards slideInFromRight}.reminder-slide-left-delay-3.in-view{animation:.8s ease-out .3s forwards slideInFromLeft}.reminder-slide-right-delay-3.in-view{animation:.8s ease-out .3s forwards slideInFromRight}.reminder-slide-left-delay-4.in-view{animation:.8s ease-out .4s forwards slideInFromLeft}.reminder-slide-right-delay-4.in-view{animation:.8s ease-out .4s forwards slideInFromRight}.reminder-slide-left-delay-5.in-view{animation:.8s ease-out .5s forwards slideInFromLeft}.reminder-slide-right-delay-5.in-view{animation:.8s ease-out .5s forwards slideInFromRight}@media (max-width:480px){.wedding-container-5,.wedding-container-6{width:95vw}.reminder-info{padding-inline:0}.reminder-info-title{margin-top:6rem;margin-bottom:0;font-size:3rem;line-height:.7}.reminder-info-column{gap:1rem;margin-block:3rem;margin-inline:1rem;font-size:1.5rem}.event-info-title{font-size:3rem}.event-column{margin-top:1rem;font-size:1.3rem}.event-grid{background-size:contain;height:500px;padding:1rem}.event-info span{font-size:1rem}}.footer{text-align:center;width:100%;margin-top:1.5rem;padding:1rem}.footer-text{color:#2c2c2c;font-size:.9rem;font-weight:400}.sakura-container{pointer-events:none;z-index:1;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.sakura-petal{opacity:.3;animation:linear infinite sakura-float-down;position:absolute}.sakura-petal.up{animation:linear infinite sakura-float-up}.petal-blossom{background:linear-gradient(45deg,#ffb3ba,#ffdfba);border-radius:50%/60% 60% 40% 40%;width:12px;height:16px;position:relative;transform:rotate(45deg);box-shadow:inset -2px -2px 4px #ffb3ba4d,0 0 8px #ffdfba66}.petal-blossom:before{content:"";background:linear-gradient(45deg,#ff9a9e,#fecfef);border-radius:50%/60% 60% 40% 40%;width:8px;height:12px;position:absolute;top:2px;left:2px;transform:rotate(45deg);box-shadow:inset -1px -1px 2px #ff9a9e4d}.map-container{text-align:center;background-color:#f1eee3;background-image:url(/bg-5.png);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:12px;gap:4rem;width:100%;max-width:1200px;margin-top:2rem;padding:2rem 1rem;position:relative;overflow:hidden;box-shadow:0 15px 35px #0000001a}.map-title{color:#2c2c2c;margin-bottom:1rem;font-size:3.2rem;font-weight:400}.map-location{color:#2c2c2c;margin-bottom:1rem;font-size:2rem;font-weight:400;line-height:1}.map-iframe{aspect-ratio:16/9;border-radius:12px;width:100%;height:100%;min-height:300px;margin-top:1rem;overflow:hidden;box-shadow:0 15px 35px #0000001a}@keyframes sakura-float-down{0%{opacity:0;transform:translateY(-10vh)rotate(0)}10%{opacity:.3}90%{opacity:.3}to{opacity:0;transform:translateY(100vh)rotate(360deg)}}@keyframes sakura-float-up{0%{opacity:0;transform:translateY(100vh)rotate(0)}10%{opacity:.3}90%{opacity:.3}to{opacity:0;transform:translateY(-10vh)rotate(360deg)}}
