@import"https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700&display=swap";html{font-size:62.5%;-webkit-tap-highlight-color:transparent}a,button,input,label,select,textarea,summary,[role=button]{-webkit-tap-highlight-color:transparent}@media (min-width: 390px){html{font-size:65%}}@media (min-width: 412px){html{font-size:68.75%}}@media (min-width: 430px){html{font-size:71.25%}}@media (min-width: 600px){html{font-size:75%}}@media (min-width: 768px){html{font-size:81.25%}}@media (min-width: 1024px){html{font-size:87.5%}}@media (min-width: 1440px){html{font-size:93.75%}}@media (min-width: 1920px){html{font-size:100%}}@font-face{font-family:OngleipRyuryu;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2405-2@1.0/Ownglyph_ryurue-Rg.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Cafe24MeongiWhite;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2405-3@1.1/Cafe24Meongi-W-v1.0.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:MapoFlowerIsland;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/MapoFlowerIslandA.woff) format("woff");font-weight:400;font-display:swap}@font-face{font-family:Cafe24Gowoonbam;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff) format("woff");font-weight:400;font-display:swap}@font-face{font-family:GowoonDodum;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff) format("woff");font-weight:400;font-display:swap}:root{--warm-accent: #d78fa3;--section-inline-padding: 45px}.wrap{width:100%;max-width:450px;margin:0 auto;background:#fff;position:relative}body{margin:0;font-family:Nanum Myeongjo,serif;scroll-behavior:smooth;overflow-x:hidden;display:flex;justify-content:center;background:#f8f8f8}.intro{position:relative;height:100vh;height:100svh;height:var(--intro-height, 100svh);display:flex;justify-content:center;align-items:center;box-sizing:border-box;padding:0 24px;isolation:isolate;background-color:#d9d0c7;overflow:hidden}.intro-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1}.intro:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:10%;background:linear-gradient(to bottom,#fff0,#f8f8f880 70%,#f8f8f8);z-index:1;pointer-events:none}.intro .fade-in-text{position:relative;z-index:2}.fade-in-text{position:relative;padding-bottom:7rem;margin-top:0;margin-bottom:7rem;color:#fff;opacity:0;animation:fadeIn 3s ease-in forwards}@keyframes fadeIn{to{opacity:1}}#introGlowCanvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;mix-blend-mode:screen}.intro:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 18%,#ffffff47,#fff0 38%),radial-gradient(circle at 82% 22%,#ffe9ce42,#ffe9ce00 34%),linear-gradient(to bottom,#4a382b4d,#6c523d29 36%,#ffffff0d 62%,#f8f8f82e);z-index:0;pointer-events:none}.intro:after{height:14%;background:linear-gradient(to bottom,#fff0,#f8f8f873 68%,#f8f8f8)}.intro-content{position:relative;z-index:2;width:100%;display:flex;justify-content:center;align-items:center}.intro-copy{position:relative;display:flex;justify-content:center;width:100%;padding:2.5rem 1.25rem}.intro-copy:before{content:"";position:absolute;top:12%;right:7%;bottom:12%;left:7%;border-radius:999px;background:radial-gradient(circle,#ffffff47,#fff7ee24 40%,#fff0 72%);filter:blur(18px);animation:introBreath 6s ease-in-out infinite;z-index:-1}@keyframes introBreath{0%,to{transform:scale(.96);opacity:.72}50%{transform:scale(1.04);opacity:1}}.section{background-color:#fff;color:#444;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:50px var(--section-inline-padding);font-family:GowoonDodum}.section{opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.section.visible{opacity:1;transform:translateY(0)}.section h2{font-size:1.6rem;margin-bottom:.5rem}.section p{font-size:1.4rem;line-height:1.8}.section span{display:block;font-size:1.3rem}.parents{display:block;font-size:1.4rem}button{font-family:GowoonDodum}#address span{font-size:1rem}#info,#address,#gallery-section{padding-left:0;padding-right:0}#info>h2,#info>p,#address>h2,#address>p,#address>span,#gallery-section>h2,#gallery-section>.more-container{width:100%;box-sizing:border-box;padding-left:var(--section-inline-padding);padding-right:var(--section-inline-padding)}#address{text-align:left}#address>h2,#address>p,#address>span{text-align:center}.icon-heading{display:inline-flex;align-items:center;gap:.5rem;line-height:1;vertical-align:middle}.way-icon{display:block;height:1.2em;width:auto;margin:0;padding:0;object-fit:contain}.icon-heading.fullwidth{display:flex;width:100%;align-items:center}.parking-tip{display:block;white-space:normal;word-break:keep-all;overflow-wrap:break-word;font-size:1.3rem!important}.wedding-title{font-family:OngleipRyuryu,cursive;font-size:7em;text-align:center;color:#fff}.wedding-title-eng{font-family:Cafe24MeongiWhite,cursive;font-size:7em;text-align:center;color:#fff}.soft-blue{color:var(--warm-accent);font-weight:600}.way-icon.soft-blue{filter:sepia(.78) saturate(.72) brightness(.86) hue-rotate(-8deg)}#floatingButtons{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:12px;opacity:0;pointer-events:none;transition:opacity .35s ease;z-index:9999}#floatingButtons.show-buttons{opacity:1;pointer-events:auto}.circle-btn{width:55px;height:55px;border-radius:50%;background:#ffffff8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;display:flex;justify-content:center;align-items:center;cursor:pointer;box-shadow:0 3px 10px #00000026;transition:background .25s}.circle-btn:hover{background:#ffffffd9}.circle-btn img{width:26px;height:26px}.handwrite{width:100%;max-width:420px;height:auto}.handwrite text{font-family:Alex Brush,cursive;font-size:70px;fill:none;stroke:#fff;stroke-width:2;stroke-dasharray:300;stroke-dashoffset:300;animation:write .6s ease forwards;animation-delay:var(--d)}.handwrite{position:relative;z-index:1;filter:drop-shadow(0 10px 28px rgba(51,33,20,.28))}@media (max-width: 480px){.intro{padding:0 18px}.intro-copy{padding:2rem .5rem}.handwrite text{font-size:62px}}@keyframes write{to{stroke-dashoffset:0}}#gallery-section{width:100%;max-width:100%;margin:0;padding:50px 0;box-sizing:border-box}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:100%;padding:0;background-color:#fff}.gallery-item{aspect-ratio:1 / 1;overflow:hidden;cursor:pointer;background-color:#f8f8f8;position:relative}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease;display:block}@media (hover: hover){.gallery-item:hover img{transform:scale(1.05)}}.more-container{text-align:center;margin:30px 0}.load-more-btn{background:none;border:1px solid #eee;padding:10px 25px;border-radius:20px;font-size:14px;color:#888;cursor:pointer;transition:all .2s}.load-more-btn:active{background-color:#f9f9f9;transform:scale(.98)}.lightbox{display:none;position:fixed;top:0;left:0;width:100%;height:100%;height:var(--lightbox-viewport-height, 100dvh);background:#fffffffa;z-index:2000;justify-content:center;align-items:center;flex-direction:column;box-sizing:border-box;overflow:hidden;overscroll-behavior:none;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.lightbox-content-wrapper{position:relative;width:100vw;max-width:none;display:flex;justify-content:center;align-items:center;overflow:hidden;touch-action:none;overscroll-behavior:contain}.lightbox-content-wrapper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;z-index:1;background:linear-gradient(110deg,#ededed 8%,#f7f7f7 18%,#ededed 33%);background-size:200% 100%;animation:lightbox-skeleton-shimmer 1.2s linear infinite;transition:opacity .18s ease}.lightbox-content{width:100%;max-width:100vw;max-height:80vh;max-height:min(80vh,var(--lightbox-max-image-height, 80vh));object-fit:contain;will-change:transform;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;position:relative;z-index:0;transition:opacity .18s ease}.lightbox-content.lightbox-incoming-layer{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;pointer-events:none;visibility:hidden}.lightbox-content.lightbox-incoming-layer.is-active{visibility:visible}.lightbox-content-wrapper.is-photo-loading:before{opacity:1}.lightbox-content-wrapper.is-photo-loading .lightbox-content{opacity:0}.lightbox-content-wrapper.is-photo-loading .arrow,.lightbox-content-wrapper.is-target-photo-loading .arrow{pointer-events:none;opacity:.48}.lightbox .arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;color:#999;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:2100;opacity:.82;transition:opacity .2s ease}.lightbox .arrow-icon{width:2rem;height:2rem;display:block}.lightbox .arrow-icon path{stroke:currentColor;stroke-width:.65}.lightbox .prev .arrow-icon{transform:rotate(180deg)}.lightbox .arrow:hover{opacity:1}.lightbox .prev{left:0}.lightbox .next{right:0}.close-btn{position:absolute;top:25px;right:25px;font-size:35px;color:#333;cursor:pointer;line-height:1;z-index:2200}.caption{margin-top:25px;font-size:13px;letter-spacing:1px;color:#999;font-family:sans-serif}html.lightbox-open,body.lightbox-open{overscroll-behavior:none}body.lightbox-open{overflow:hidden;touch-action:none}@keyframes lightbox-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.attendance-button{background-color:var(--warm-accent)!important}.attendance-button:hover{background-color:#c77b92!important}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;display:none}.popup-container{background-color:#fff;width:90%;max-width:400px;border-radius:8px;box-shadow:0 4px 15px #0003;overflow:hidden;font-family:Malgun Gothic,맑은 고딕,sans-serif}.popup-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eeeeee}.popup-title{font-size:18px;font-weight:700;color:#333}.close-button{background:none;border:none;font-size:24px;color:#aaa;cursor:pointer;padding:0;line-height:1}.popup-body{padding:20px;max-height:70vh;overflow-y:auto}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:10px;font-size:14px;color:#333}.form-group label span.required{color:#e74c3c;margin-left:2px}.input-text{width:100%;padding:12px;border:1px solid #dddddd;border-radius:4px;box-sizing:border-box;font-size:15px}textarea.input-text{resize:none;height:100px}.radio-group,.select-group{display:flex;border:1px solid #dddddd;border-radius:4px;overflow:hidden;width:100%}.radio-item,.select-item{flex-grow:1;text-align:center;position:relative}.radio-item input[type=radio],.select-item input[type=radio]{position:absolute;opacity:0;width:0;height:0}.radio-item label,.select-item label{display:block;padding:12px 0;margin:0;font-size:15px;cursor:pointer;color:#333;background-color:#f9f9f9;transition:background-color .2s,color .2s}.radio-item:not(:last-child) label,.select-item:not(:last-child) label{border-right:1px solid #dddddd}.radio-item input[type=radio]:checked+label,.select-item input[type=radio]:checked+label{background-color:#d1b69d;color:#fff;font-weight:700}.agreement-group{display:flex;align-items:center;font-size:13px;color:#777;margin-top:15px}.agreement-group input[type=checkbox]{margin-right:5px;accent-color:#d1b69d}.agreement-container{padding:15px;border:1px solid #e0e0e0;border-radius:4px;margin-top:15px}.agreement-title{font-size:16px;font-weight:700;color:#333;margin-top:0;margin-bottom:10px}.agreement-description{font-size:11px;color:#555;line-height:1.5;margin-bottom:15px}.agreement-check{display:flex;align-items:center}.agreement-check input[type=checkbox]{margin-right:5px;accent-color:#d1b69d;width:18px;height:18px}.agreement-check label{display:inline;font-size:14px;color:#333;font-weight:700;margin:0}.submit-button-container{padding:15px 20px;border-top:1px solid #eeeeee}.submit-button{width:100%;padding:15px;background-color:var(--warm-accent);color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s}.submit-button:hover{background-color:#c77b92}.attendance-button{background-color:#4682b4;color:#fff;padding:12px 30px;font-size:16px;font-weight:700;border:none;border-radius:6px;box-shadow:none;cursor:pointer;transition:background-color .2s ease}.attendance-button:hover{background-color:#5a9bcf}.write-button{background-color:var(--warm-accent)!important}.write-button:hover{background-color:#c77b92!important}#guestbook-list-container{margin-top:20px;padding-bottom:0;position:relative;width:100%;margin-left:auto;margin-right:auto}.guestbook-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:15px;margin-bottom:10px;position:relative;box-shadow:0 1px 3px #0000000d;width:100%;box-sizing:border-box}.guestbook-name{font-weight:700;font-size:16px;color:#333;margin-bottom:8px;display:block;text-align:left}.guestbook-message{font-size:14px;color:#555;line-height:1.6;white-space:pre-wrap;text-align:left}.guestbook-delete-btn{position:absolute;top:10px;right:10px;background:none;border:none;font-size:18px;color:#aaa;cursor:pointer;line-height:1}.write-button{position:relative;display:block;margin:20px auto 0;padding:12px 30px;background-color:var(--warm-accent);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:700;cursor:pointer;box-shadow:none;transition:background-color .2s}.write-button:hover{background-color:#5a9bcf}.guestbook-popup-container{max-width:350px}#guestbookForm .form-group{margin-bottom:20px}#guestbookForm .form-group label{font-weight:700;font-size:15px;margin-bottom:5px}#guestbookForm textarea.input-text{height:120px;resize:vertical}.submit-button-container.black-bg{padding:0;border-top:none}.submit-button.black-button{background-color:var(--warm-accent);color:#fff;border-radius:0;padding:18px 15px;font-size:16px}.submit-button.black-button:hover{background-color:#c77b92}.required{color:#e74c3c;margin-left:2px}.delete-popup-container{max-width:300px;padding:20px;text-align:center}.delete-popup-container p{margin-bottom:15px;font-size:15px}.delete-popup-container input{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.delete-popup-buttons{display:flex;justify-content:space-between;gap:10px}.delete-popup-buttons button{flex:1;padding:10px;border:none;border-radius:4px;cursor:pointer;font-weight:700}.delete-cancel-btn{background-color:#ccc;color:#333}.delete-confirm-btn{background-color:#e74c3c;color:#fff}#countdown-section{position:relative;height:30vh;display:flex;justify-content:flex-start;align-items:center;text-align:center;padding:30px 20px;background:linear-gradient(#00000080,#00000080),url(/assets/gallery/KYK_1612.jpg);background-size:cover;background-position:center;color:#fff}.thanks-msg{font-size:1.2rem!important;line-height:1.6;margin-bottom:15px;color:#fdfdfd;font-weight:400}.mini-divider{font-size:.8rem;letter-spacing:2px;margin-bottom:25px;opacity:.8}.heart{font-size:1rem}.countdown-title{font-family:GowoonDodum;font-size:1.4rem!important;margin-bottom:20px!important;color:#fff!important}#countdown{display:flex;justify-content:center;align-items:baseline;gap:10px;font-size:1.8rem;font-weight:700;color:#fff}#countdown span{display:inline-block;min-width:1.8em;color:#fff}#countdown-section.visible{opacity:1;transform:translateY(0)}wedding-map{display:block;width:100%}wedding-map>.navigation-buttons,wedding-map>h2,wedding-map>p{width:100%;box-sizing:border-box;padding-left:var(--section-inline-padding, 45px);padding-right:var(--section-inline-padding, 45px)}.map-container{width:100%;max-width:100%;margin:20px 0;box-sizing:border-box;border-radius:0;overflow:hidden;box-shadow:0 4px 8px #0000001a;position:relative;height:300px}#map{width:100%;height:100%}.static-map-image{width:100%;height:auto;display:block}.map-overlay-text{position:absolute;bottom:10px;left:10px;background:#fffc;padding:5px 10px;border-radius:4px;font-size:1rem;color:#333}.navigation-buttons{display:flex;justify-content:space-between;gap:10px;width:100%;margin:20px 0 40px;padding:0}.nav-btn{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;padding:10px 5px;border:1px solid #ddd;border-radius:8px;background-color:#fff;cursor:pointer;font-size:.8rem;color:#333;transition:background-color .2s}.nav-btn:hover{background-color:#f7f7f7}.nav-btn img{width:20px;height:20px;margin-right:5px;margin-bottom:0}.nav-btn span{font-weight:700;white-space:nowrap;word-break:keep-all}.tmap-btn{color:#0080ff}.kakao-btn{color:#ffcd00}.naver-btn{color:#03c75a}wedding-calendar{display:block;width:100%;max-width:100%;margin:0;box-sizing:border-box;padding:0 10px}#calendar,.calendar-container{font-family:Pretendard,sans-serif;width:100%;max-width:none;margin:0 auto;text-align:center;color:#9a7f76}#calendar table,.calendar-container table{width:100%;border-collapse:collapse;table-layout:fixed}#calendar th,.calendar-container th{padding:8px 0;font-weight:500;color:#c5a9a3}#calendar td,.calendar-container td{padding:10px 0;font-size:1.2rem}.month-title{text-align:center;font-size:calc(1.4rem + 4px);font-weight:600;margin-bottom:8px;color:var(--warm-accent);font-family:GowoonDodum}.wedding-calendar .sun,.wedding-calendar .sunday span{color:#d28a9b}.wedding-calendar td span{display:inline-block;width:32px;height:32px;line-height:32px;text-align:center}.wedding-calendar td.highlight span{background:var(--warm-accent);color:#fff;border-radius:50%}account-group{display:block;width:100%}.account-box{background:#fff;border:1px solid #e6e6e6;width:100%;border-radius:8px;margin:15px 0;overflow:hidden;font-family:GowoonDodum,sans-serif}.acc-header{position:relative;width:100%;padding:15px;font-size:1.2rem;text-align:left;background:#fff;border:none;border-bottom:1px solid #e6e6e6;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.blue{color:#4a6fa5}.pink{color:#d28a9b}.arrow{position:absolute;top:50%;right:20px;transform:translateY(-50%);font-size:20px;color:#333;transition:transform .35s ease;-webkit-user-select:none;user-select:none}.acc-header.active .arrow{transform:translateY(-50%) rotate(180deg)}.acc-body{background:#fff;padding:0;max-height:0;overflow:hidden;transition:max-height .35s ease}.acc-item{padding:15px;border-bottom:1px solid #f0f0f0;position:relative}.acc-item div{text-align:left}.acc-name{font-size:1.1rem;font-weight:600;margin-bottom:3px}.acc-num{font-size:1rem;font-weight:700}.acc-bank{font-size:.9rem;color:#777;margin-bottom:10px}.copy-btn{position:absolute;right:15px;top:15px;background:#fff;border:1px solid #ccc;padding:5px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.copy-btn:hover{background:#f2f2f2}.acc-item:last-child{border-bottom:none}#text{font-size:34px;font-family:Nanum Pen Script,cursive;letter-spacing:.05em}
