@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Italianno&family=Noto+Sans+KR:wght@400;500;600&display=swap";:root{color:#171717;background:#f5f5f3;font-family:Noto Sans KR,Apple SD Gothic Neo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f5f5f3;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.page{background:#fff;width:100%;max-width:430px;min-height:100vh;margin:28px auto;padding-top:38px;overflow-x:hidden;box-shadow:0 8px 28px #1c1c1c16}section{text-align:center;padding:70px 29px}.muted{background:#f8f8f7}h2,p{margin-top:0}h2{color:#1d1d1d;letter-spacing:0;margin-bottom:23px;font-family:Noto Sans KR,sans-serif;font-size:21px;font-weight:500}h2:after{content:"";background:#adadad;width:19px;height:1px;margin:17px auto 0;display:block}.eyebrow{color:#393939;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:11px;font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-weight:500}.sub{color:#898989;word-break:keep-all;font-size:13px;line-height:1.8}.toolbar{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border-bottom:1px solid #ededed;justify-content:flex-end;align-items:center;width:min(100%,430px);min-height:38px;padding:9px 15px 6px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #1c1c1c0a}.toolbar-actions{gap:14px;display:flex}.toolbar button{color:#777;background:0 0;border:0;padding:2px 0;font-size:10px}.toolbar button+button{border-left:1px solid #dedede;padding-left:14px}.intro-shell{background:#fff;height:108vh;padding:0}.intro-stage{perspective:1100px;background:#fff;height:calc(100vh - 38px);min-height:590px;position:sticky;top:38px;overflow:hidden}.invitation-reveal{z-index:1;text-align:center;flex-direction:column;justify-content:space-between;align-items:center;padding:62px 32px 48px;display:flex;position:absolute;inset:0}.reveal-script{color:#151515;margin:0 0 22px;font-family:Italianno,cursive;font-size:38px;line-height:.65}.invitation-reveal h1{color:#161616;letter-spacing:.8px;max-width:310px;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:31px;font-weight:500;line-height:1.15}.invitation-reveal h1 span{margin:4px 0;font-size:25px;display:block}.reveal-bottom{flex-direction:column;align-items:center;display:flex}.reveal-copy{color:#252525;letter-spacing:.3px;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:10px;line-height:1.45}.reveal-date{color:#161616;margin:33px 0 0;font-family:Italianno,cursive;font-size:29px;line-height:.75}.intro-fixed-photo{z-index:3;object-fit:cover;object-position:center;pointer-events:none;width:min(224px,62vw);height:min(224px,62vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.intro-curtains{z-index:2;pointer-events:none;transform-style:preserve-3d;display:flex;position:absolute;inset:0}.curtain-panel{width:50%;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;background:#fff;position:relative;overflow:hidden;box-shadow:0 0 18px #473e2a12}.curtain-left{transform-origin:0}.curtain-right{transform-origin:100%}.curtain-face{background:#fff;width:200%;position:absolute;top:0;bottom:0}.curtain-left .curtain-face{left:0}.curtain-right .curtain-face{right:0}.intro-mark{object-fit:contain;width:37px;height:37px;position:absolute;top:26%;left:50%;transform:translate(-50%)}.curtain-face p{color:#222;white-space:nowrap;margin:0;font-family:Italianno,cursive;font-size:40px;line-height:.8;position:absolute;top:67%;left:50%;transform:translate(-50%)}.invitation-copy{padding-top:91px;padding-bottom:78px}.message-copy{color:#222;word-break:keep-all;margin:0 0 37px;font-size:16px;font-weight:400;line-height:2.25}.families{color:#222;gap:14px;font-size:15px;display:grid}.families b{color:#111;margin-left:9px;font-size:17px;font-weight:600}.plain-action{color:#111;background:#e8e8e8;border:0;width:258px;height:55px;margin-top:45px;font-size:14px;font-weight:500}.wedding-day{padding-top:72px;padding-bottom:76px}.wedding-day .eyebrow{letter-spacing:0;margin-bottom:40px;font-size:26px}.date-line{color:#222;margin:0 0 41px;font-size:15px}.month-number{color:#111;margin-bottom:43px;font-family:Cormorant Garamond,Georgia,serif;font-size:56px;font-weight:400;line-height:.8;display:block}.calendar{background:0 0;width:292px;margin:0 auto;padding:0}.week,.dates{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.week{color:#111;margin-bottom:15px;font-size:13px;font-weight:600}.dates span{color:#222;place-items:center;height:32px;font-size:14px;display:grid}.dates .day{color:#111;background:#e2e2e2;border-radius:50%;font-weight:600}.calendar-note{color:#222;margin:43px 0 0;font-size:14px;line-height:1.9}.calendar-note b{font-size:17px}.gallery-section{padding:72px 0 70px}.gallery-section .eyebrow{letter-spacing:0;margin-bottom:46px;font-size:24px}.gallery-carousel{overflow:hidden}.gallery-track{scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;width:min(306px,100% - 64px);margin:0 auto;display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{aspect-ratio:2/3;scroll-snap-align:start;background:#eee;border:0;flex:0 0 100%;padding:0;overflow:hidden}.gallery-slide img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.gallery-slide:hover img{transform:scale(1.03)}.gallery-thumbnails{scrollbar-width:none;gap:5px;margin-top:29px;padding:0 max(16px,50% - 153px);display:flex;overflow-x:auto}.gallery-thumbnails::-webkit-scrollbar{display:none}.gallery-thumbnails button{opacity:.4;background:#eee;border:0;border-radius:7px;flex:0 0 60px;height:60px;padding:0;overflow:hidden}.gallery-thumbnails button.active{opacity:1}.gallery-thumbnails img{object-fit:cover;width:100%;height:100%}.map-frame{filter:grayscale(.2);border:0;width:100%;height:auto;display:block}.place{color:#292929;margin:25px 0 7px;font-family:Gowun Batang,serif;font-size:16px;font-weight:700}.address{color:#777;margin:0;font-size:13px}.venue-phone{color:#333;align-items:center;gap:7px;margin-top:13px;font-size:13px;text-decoration:none;display:inline-flex}.venue-phone span{color:#999}.venue-phone strong{font-weight:500}.parking-guide{text-align:left;background:#fff;border-top:1px solid #bfbfbf;border-bottom:1px solid #ddd;margin-top:24px}.parking-summary{background:#f1f1f0;padding:17px 16px}.parking-summary p,.meal-guide p{color:#666;margin:0 0 5px;font-size:12px}.parking-summary b{color:#2e2e2e;font-family:Gowun Batang,serif;font-size:14px;font-weight:700;display:block}.parking-summary span{color:#777;margin-top:5px;font-size:12px;display:block}.parking-notice{padding:16px}.parking-notice b{color:#674747;font-size:12px}.parking-notice p{color:#666;margin:7px 0 4px;font-size:12px;line-height:1.6}.parking-notice small{color:#999;font-size:11px}.meal-guide{text-align:left;background:#f1f1f0;border-bottom:1px solid #ddd;padding:17px 16px}.meal-guide b{color:#2e2e2e;font-family:Gowun Batang,serif;font-size:14px;font-weight:700;display:block}.map-buttons{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:22px;display:grid}.map-buttons button{color:#333;background:#fff;border:1px solid #dadada;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:70px;font-size:12px;display:flex}.map-buttons img{object-fit:contain;border-radius:5px;width:25px;height:25px}.map-buttons small{color:#999;font-size:10px}.accounts-section .sub{color:#888;margin:0;font-size:14px;line-height:1.9}.accounts-list{margin-top:43px}.account-group{text-align:left;background:#fff;margin-top:10px}.account-group:first-child{margin-top:0}.account-trigger{color:#222;background:#e9e9e9;border:0;justify-content:center;align-items:center;gap:8px;width:100%;min-height:58px;padding:0;font-size:14px;font-weight:600;display:flex}.account-trigger i{font-size:19px;font-style:normal;font-weight:300;line-height:1;transition:transform .36s cubic-bezier(.22,1,.36,1)}.account-group:not(.open) .account-trigger i{transform:rotate(180deg)}.account-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.22,1,.36,1),opacity .24s;display:grid;overflow:hidden}.account-group.open .account-panel{opacity:1;grid-template-rows:1fr}.account-entries{min-height:0;transition:transform .36s cubic-bezier(.22,1,.36,1);overflow:hidden;transform:translateY(-7px)}.account-group.open .account-entries{transform:translateY(0)}.account{text-align:left;border-bottom:1px solid #ededed;justify-content:space-between;align-items:center;gap:12px;min-height:74px;padding:11px 16px;display:flex}.account>div:first-child{min-width:0}.account:last-child{border-bottom:0}.account p{color:#777;margin:0 0 4px;font-size:12px}.account b{color:#222;font-size:14px;font-weight:600}.account b+span{color:#555;overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.account-tools{flex-shrink:0;align-items:center;gap:7px;display:flex}.account-tools a,.account-copy{color:#999;background:0 0;border:0;place-items:center;width:22px;height:24px;padding:0;display:grid}.account-tools svg,.account-copy svg{stroke-width:1.35px;width:16px;height:16px}.account-copy:disabled{cursor:not-allowed;opacity:.3}.faq{text-align:left}.faq .eyebrow,.faq h2{text-align:center}.faq-list{border-top:1px solid #c9c9c9;margin-top:33px}.faq-item{border-bottom:1px solid #d9d9d9}.faq-trigger{color:#222;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:62px;padding:0;font-size:15px;font-weight:500;display:flex}.faq-trigger i{color:#555;font-size:22px;font-style:normal;font-weight:300;line-height:1;transition:transform .36s cubic-bezier(.22,1,.36,1)}.faq-item.open .faq-trigger i{transform:rotate(45deg)}.faq-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.22,1,.36,1),opacity .24s;display:grid;overflow:hidden}.faq-item.open .faq-panel{opacity:1;grid-template-rows:1fr}.faq-answer{color:#666;min-height:0;padding:0;font-size:14px;line-height:1.8;transition:transform .36s cubic-bezier(.22,1,.36,1),padding .36s cubic-bezier(.22,1,.36,1);overflow:hidden;transform:translateY(-7px)}.faq-item.open .faq-answer{padding:2px 0 23px;transform:translateY(0)}.faq-answer>p{margin:0}.faq-route{background:#fff;padding:15px 16px}.faq-route+.faq-route{margin-top:7px}.faq-route b{color:#222;font-size:13px}.faq-route p{color:#777;margin:5px 0 1px;font-size:13px}.faq-route strong{color:#222;font-size:14px;font-weight:500}footer{color:#777;text-align:center;background:#f1f1ef;padding:46px 20px 50px;font-size:10px}footer .footer-emblem{object-fit:contain;width:34px;height:34px;margin:0 auto 13px;display:block}footer p{margin:0}.modal{z-index:100;background:#111d;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-inner{width:min(100%,560px);position:relative}.modal img{object-fit:contain;width:100%;max-height:80vh;display:block}.modal button{color:#fff;background:0 0;border:0;font-size:24px;position:absolute;top:-37px;right:0}.toast{z-index:120;color:#fff;white-space:nowrap;background:#292929;padding:9px 14px;font-size:10px;position:fixed;bottom:25px;left:50%;transform:translate(-50%)}@media (width<=430px){body{background:#fff}.page{box-shadow:none;margin:0}}
