@font-face{font-family:ChosunMyungjo;src:url(/fonts/ChosunMyungjo.woff) format("woff");font-weight:400;font-display:swap}@font-face{font-family:Nanum Myeongjo;src:url(/fonts/NanumMyeongjo.woff) format("woff");font-weight:400;font-display:swap}@import url("https://fonts.googleapis.com/css2?family=Old+Standard+TT:ital@0;1&display=swap");:root{--common-font-color:#383838;--point-color1:#6b5933;--point-color2:#b7a989;--font-family:"ChosunMyungjo","Nanum Myeongjo",serif;--font-en:"Old Standard TT",serif;--font-size:15px;--background:#ffffff;--main-section-background-color:#f5f3ed;--ivory:#f5f3ed;--grey:#595555;--light-grey:#8d8e90;--line-color:#e5e3de;--bg-grey:#f9f9f9;--box-shadow:1px 1px 4px 1px rgba(0,0,0,0.1);--section-margin:45px 0;--content-max-width:420px}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-size:var(--font-size)}body{font-family:var(--font-family);color:var(--common-font-color);background:#eceae4;line-height:1.7;word-break:keep-all;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit}ol,ul{list-style:none}.wrap{margin:0 auto;background:var(--background);box-shadow:0 0 20px rgba(0,0,0,.08);min-height:100dvh;overflow-x:hidden;position:relative}.petal-canvas,.wrap{max-width:var(--content-max-width)}.petal-canvas{position:fixed;top:0;left:50%;transform:translateX(-50%);width:100%;height:100vh;height:100dvh;pointer-events:none;z-index:50}.section{padding:60px 24px;text-align:center}.section-label{font-family:var(--font-en);font-size:.75rem;letter-spacing:.35em;color:var(--point-color2);text-transform:uppercase;margin-bottom:8px}.section-title{font-size:1.25rem;color:var(--point-color1);letter-spacing:.12em;margin-bottom:28px}.fade-in{opacity:0;transform:translate3d(0,100px,0);transition-property:opacity,transform;transition-duration:1.3s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);will-change:opacity,transform}.fade-in.aos-animate{opacity:1;transform:translateZ(0)}.cover{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--main-section-background-color)}.cover-photo-box{position:absolute;inset:0}.cover-photo{width:100%;height:100%;object-fit:cover}.cover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(60,45,30,.18) 0,rgba(0,0,0,0) 35%,rgba(0,0,0,0) 60%,rgba(60,45,30,.38))}.cover-title{top:7%;font-family:var(--font-en);font-size:3rem;line-height:1.15;color:#f7f0e0;text-shadow:0 1px 12px rgba(0,0,0,.18);font-weight:400}.cover-bottom,.cover-title{position:absolute;left:0;right:0;text-align:center}.cover-bottom{bottom:6%;color:#fdf9ef;text-shadow:0 1px 8px rgba(0,0,0,.35)}.cover-names{font-size:1.15rem;letter-spacing:.18em;margin-bottom:10px}.cover-date{font-family:var(--font-en);font-size:.95rem;letter-spacing:.14em;margin-bottom:12px}.cover-tagline{font-family:var(--font-en);font-style:italic;font-size:.78rem;letter-spacing:.06em;opacity:.92;line-height:1.6}.greeting{background:var(--background)}.greeting-text{font-size:.98rem;color:var(--grey);line-height:2.1;margin-bottom:36px}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-color);background:#fff;color:var(--grey);font-size:.88rem;padding:11px 26px;border-radius:4px;letter-spacing:.05em;transition:background .2s}.btn-outline:active{background:var(--bg-grey)}.btn-fill{display:inline-flex;align-items:center;justify-content:center;background:var(--point-color2);color:#fff;font-size:.88rem;padding:12px 30px;border-radius:4px;letter-spacing:.08em}.profiles{background:var(--bg-grey)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.profile-card{text-align:center}.profile-photo{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:4px;margin-bottom:16px}.profile-role-name{font-size:.98rem;letter-spacing:.06em;display:flex;align-items:center;justify-content:center;gap:6px}.profile-call{color:var(--point-color1);font-size:.9rem;text-decoration:none}.profile-relation{margin-top:10px;font-size:.88rem;color:var(--grey)}.profiles-contact{margin-top:30px}.ceremony{background:var(--background)}.ceremony-date{font-size:1rem;margin-bottom:4px}.ceremony-venue{font-size:.95rem;color:var(--grey);margin-bottom:28px}.ceremony-photo{width:100%;border-radius:6px;margin-bottom:40px}.calendar-month{font-size:1.15rem;color:var(--point-color1);margin-bottom:18px}.calendar{width:100%;border-collapse:collapse}.calendar th{font-size:.82rem;font-weight:400;color:var(--grey);padding:8px 0}.calendar th.sun{color:var(--point-color1)}.calendar td{font-size:.88rem;color:var(--grey);padding:10px 0;text-align:center}.calendar td .day{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%}.calendar td .day.wedding-day{background:var(--point-color2);color:#fff}.dday{position:relative;padding:0}.dday-photo{width:100%;display:block;aspect-ratio:544/747;object-fit:cover}.dday-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:34px;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.35));text-shadow:0 1px 8px rgba(0,0,0,.4)}.dday-heart{font-size:1.2rem;margin-bottom:4px}.dday-count{font-family:var(--font-en);font-size:2.2rem;line-height:1.2}.dday-date{font-size:.88rem}.gallery{background:var(--background)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.gallery-item{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:3px;background:var(--ivory);padding:0}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--point-color2);font-size:.75rem}.gallery-placeholder .ph-num{font-family:var(--font-en);font-size:1.05rem;color:var(--point-color1)}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:100;display:flex;align-items:center;justify-content:center}.lightbox img{max-width:100%;max-height:86vh;max-height:86dvh;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:20px;color:#fff;font-size:1.6rem;line-height:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:2rem;padding:20px 14px;opacity:.85}.lightbox-nav.prev{left:0}.lightbox-nav.next{right:0}.lightbox-counter{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:#fff;font-size:.85rem;letter-spacing:.1em}.info-tabs{background:var(--background)}.tab-bar{display:flex;border-bottom:1px solid var(--line-color);margin-bottom:28px}.tab-btn{flex:1 1;padding:12px 0;font-size:.95rem;color:var(--light-grey);border-bottom:2px solid transparent;margin-bottom:-1px;letter-spacing:.08em}.tab-btn.active{color:var(--point-color1);border-bottom-color:var(--point-color1)}.tab-photo{width:100%;border-radius:6px;margin-bottom:26px;aspect-ratio:4/5;object-fit:cover}.tab-text{font-size:.95rem;color:var(--grey);line-height:2}.hl{background:linear-gradient(0deg,#fdf0a4 55%,transparent 0);color:var(--common-font-color)}.parking-warning{margin-top:24px;background:var(--ivory);border-radius:6px;padding:18px 16px;font-size:.86rem;color:var(--grey);line-height:1.9}.directions{background:var(--bg-grey);text-align:center}.dir-venue{font-size:1.02rem;margin-bottom:2px}.dir-address{font-size:.88rem;color:var(--grey)}.dir-address-sub{font-size:.82rem;color:var(--light-grey);margin-bottom:22px}.map-box{width:100%;height:260px;border:1px solid var(--line-color);border-radius:6px;overflow:hidden;margin-bottom:14px;background:#fff}.map-box iframe{width:100%;height:100%;border:0;display:block}.nav-btns{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:40px}.nav-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:1px solid var(--line-color);border-radius:4px;padding:11px 0;font-size:.85rem;color:var(--common-font-color);text-decoration:none}.nav-btn .dot{width:15px;height:15px;border-radius:4px;display:inline-block;flex:none;background-size:cover}.transport{text-align:left;display:flex;flex-direction:column;gap:28px}.transport-item h4{font-size:1.02rem;font-weight:400;color:var(--point-color1);margin-bottom:8px;display:flex;align-items:center;gap:8px}.transport-item .t-first{color:var(--point-color2);font-size:.9rem;margin-bottom:4px}.transport-item p{font-size:.88rem;color:var(--grey);line-height:1.9}.accounts{background:var(--background)}.accounts-intro{font-size:.95rem;color:var(--grey);line-height:2;margin-bottom:32px}.account-group{border:1px solid var(--line-color);border-radius:6px;margin-bottom:12px;overflow:hidden;text-align:left}.account-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;font-size:.95rem;background:var(--bg-grey);letter-spacing:.05em}.account-toggle .chev{transition:transform .25s;color:var(--light-grey);font-size:.8rem}.account-toggle.open .chev{transform:rotate(180deg)}.account-list{border-top:1px solid var(--line-color)}.account-item{padding:14px 18px;border-bottom:1px solid var(--line-color);display:flex;justify-content:space-between;align-items:center;gap:10px}.account-item:last-child{border-bottom:none}.account-item .a-label{font-size:.92rem;margin-bottom:2px}.account-item .a-detail{font-size:.85rem;color:var(--grey);line-height:1.5}.account-actions{display:flex;flex-direction:column;gap:6px;flex:none}.btn-copy{border:1px solid var(--line-color);background:#fff;padding:5px 14px;color:var(--grey)}.btn-copy,.btn-pay{border-radius:4px;font-size:.78rem}.btn-pay{background:#fee500;padding:6px 12px;color:#191919;text-align:center;text-decoration:none;font-weight:700}.guestbook{background:var(--bg-grey)}.gb-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;text-align:left}.gb-card{background:#fff;border:1px solid var(--line-color);border-radius:6px;padding:16px 18px;position:relative}.gb-card .gb-head{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.gb-card .gb-name{font-size:.95rem;color:var(--point-color1)}.gb-card .gb-date{font-size:.72rem;color:var(--light-grey)}.gb-card .gb-msg{font-size:.9rem;color:var(--grey);line-height:1.8;white-space:pre-wrap}.gb-delete{position:absolute;top:10px;right:12px;color:var(--light-grey);font-size:.9rem;padding:4px}.gb-btns{display:flex;justify-content:space-between}.gb-empty{font-size:.9rem;color:var(--light-grey);padding:30px 0}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:90;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:#fff;border-radius:10px;width:100%;max-width:360px;max-height:80vh;max-height:80dvh;overflow-y:auto;padding:26px 22px;position:relative;text-align:center}.modal-title{font-size:1.05rem;color:var(--point-color1);margin-bottom:20px;letter-spacing:.1em}.modal-close{position:absolute;top:12px;right:14px;font-size:1.3rem;color:var(--light-grey);line-height:1}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px 10px;gap:18px 10px;margin-top:6px}.contact-side-title{font-size:.92rem;color:var(--point-color1);border-bottom:1px solid var(--line-color);padding-bottom:8px;margin-bottom:4px}.contact-person{font-size:.88rem;color:var(--grey)}.contact-links{display:flex;justify-content:center;gap:16px;margin-top:4px}.contact-links a{color:var(--common-font-color);text-decoration:none;font-size:1.05rem}.gb-form{display:flex;flex-direction:column;gap:10px;text-align:left}.gb-form input,.gb-form textarea{font-family:inherit;font-size:.9rem;border:1px solid var(--line-color);border-radius:5px;padding:10px 12px;color:var(--common-font-color);outline:none;resize:none}.gb-form input:focus,.gb-form textarea:focus{border-color:var(--point-color2)}.gb-form .form-error{color:#c0392b;font-size:.8rem}.bgm-btn{position:fixed;top:14px;right:max(14px,calc(50% - var(--content-max-width) / 2 + 14px));width:38px;height:38px;border-radius:50%;background:rgba(150,145,138,.45);color:#fff;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:85}.bgm-btn.on svg{animation:bgm-pulse 2.2s ease-in-out infinite}.bgm-hint{position:fixed;top:60px;right:max(14px,calc(50% - var(--content-max-width) / 2 + 14px));background:rgba(56,56,56,.82);color:#fff;font-size:.78rem;padding:8px 14px;border-radius:16px;z-index:85;animation:toast-in .4s ease;pointer-events:none}@keyframes bgm-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.floating{position:fixed;bottom:22px;right:max(14px,calc(50% - var(--content-max-width) / 2 + 14px));display:flex;flex-direction:column;align-items:flex-end;gap:12px;z-index:80}.floating-btn{width:46px;height:46px;border-radius:50%;background:rgba(150,145,138,.45);color:#fff;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 2px 8px rgba(0,0,0,.12);transition:opacity .3s,transform .3s,background .2s}.floating-btn:active{background:rgba(120,115,108,.6)}.floating-btn.top{opacity:0;transform:translateY(6px);pointer-events:none}.floating-btn.top.show{opacity:1;transform:translateY(0);pointer-events:auto}.floating-toast{background:rgba(56,56,56,.86);color:#fff;font-size:.82rem;padding:9px 16px;border-radius:18px;white-space:nowrap;animation:toast-in .25s ease}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.footer{background:var(--point-color1);color:rgba(255,255,255,.85);text-align:center;padding:40px 24px}.footer-names{font-family:var(--font-en);font-size:.95rem;letter-spacing:.2em;margin-bottom:6px}.footer-date{font-size:.8rem;opacity:.8;margin-bottom:14px}.footer-copy{font-size:.7rem;opacity:.5}