@import "https://fonts.googleapis.com/css2?family=Goudy+Bookletter+1911&family=Gowun+Batang:wght@400;700&family=Noto+Sans+KR:wght@400;500;600&display=swap";:root{--paper:#f7f4ee;--ink:#2b2926;--muted:#777169;--line:#d9d2c8;--wine:#6f3136;--white:#fffdf9}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#e9e6e0;margin:0;font-family:Gowun Batang,serif}body.modal-open{overflow:hidden}button,a{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}main{background:var(--paper);width:100%;max-width:480px;margin:0 auto;overflow:hidden;box-shadow:0 0 35px #302a2214}.hero{text-align:center;background:radial-gradient(circle at 50% 22%,#fffc,#0000 38%),linear-gradient(#faf8f3 0%,#f3eee6 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:62px 28px 48px;display:flex;position:relative}.hero:after{content:"";pointer-events:none;border:1px solid #6f313640;position:absolute;inset:18px}.hero-rule{background:var(--wine);width:1px;height:52px;margin-bottom:20px}.eyebrow{font-family:"Goudy Bookletter 1911",serif}.section-kicker{font-family:Gowun Batang,serif}.eyebrow,.section-kicker{letter-spacing:.24em;color:var(--wine);font-size:14px}.hero h1{letter-spacing:.12em;align-items:center;gap:14px;margin:42px 0 34px;font-size:30px;font-weight:400;display:flex}.hero h1 i{color:var(--muted);letter-spacing:.02em;font-size:12px;font-style:normal}.date-mark{align-items:center;gap:12px;margin-bottom:25px;display:flex}.date-mark strong{color:var(--wine);font-family:"Goudy Bookletter 1911",serif;font-size:62px;font-weight:400;line-height:.8}.date-mark span{text-align:left;border-left:1px solid var(--line);letter-spacing:.12em;color:var(--muted);padding-left:12px;font:11px/1.5 Noto Sans KR,sans-serif}.hero-date{letter-spacing:.04em;margin:0 0 8px;font-size:15px}.hero-place{color:var(--muted);margin:0;font-size:14px}.calendar-button{border-bottom:1px solid var(--ink);align-items:center;gap:8px;margin-top:32px;padding:8px 2px;font-size:13px;display:flex}.calendar-button svg{width:16px}.type-intro{background:radial-gradient(circle at 50% 42%,#ffffffe6,#0000 38%),linear-gradient(#faf8f3 0%,#f1ebe2 100%);justify-content:space-between;height:800px;min-height:800px;max-height:800px;padding:96px 28px 64px;transform:scale(1)!important}.type-intro:after{display:none}.intro-frame{pointer-events:none;border:1px solid #6f313661;border-radius:20px;position:absolute;inset:54px 26px}.intro-frame-cap{border:1px solid #6f313661;height:37px;position:absolute;left:24px;right:24px}.intro-frame-cap-top{background:#faf8f3;border-bottom:0;border-radius:20px 20px 0 0;top:-37px}.intro-frame-cap-bottom{background:#f1ebe2;border-top:0;border-radius:0 0 20px 20px;bottom:-37px}.intro-heading{z-index:1;color:var(--wine);position:relative}.intro-ornament{margin-bottom:22px;font-size:32px;line-height:1;display:block}.intro-heading p{letter-spacing:.34em;margin:0;font:16px/2.1 "Goudy Bookletter 1911",serif}.type-intro h1{z-index:1;color:var(--ink);flex-direction:column;gap:16px;margin:20px 0;display:flex;position:relative}.type-intro h1 strong{letter-spacing:.14em;color:var(--wine);font:200 50px/1.2 "Goudy Bookletter 1911",serif}.type-intro h1 i{color:var(--wine);font:38px/1 "Goudy Bookletter 1911",serif}.wedding-countdown{letter-spacing:.14em;color:#777169;font-variant-numeric:tabular-nums;margin-top:6px;font:16px/1.2 "Goudy Bookletter 1911",serif}.intro-details{z-index:1;position:relative}.intro-details>p{letter-spacing:.04em;margin:7px 0;font-size:14px}.intro-details>p:first-child{color:var(--wine);letter-spacing:.08em;font-family:"Goudy Bookletter 1911",Gowun Batang,serif;font-size:15px}.type-intro .calendar-button{width:max-content;margin:24px auto 0}.section{text-align:center;padding:86px 28px}.section-kicker{margin:0 0 24px}.section h2{letter-spacing:-.03em;margin:0 0 32px;font-size:22px;font-weight:400;line-height:1.65}.invitation{background:var(--white)}.invitation h2{letter-spacing:.03em;font-family:"Goudy Bookletter 1911",serif;font-size:28px}.body-copy{color:#55504a;margin:0;font-size:16px;line-height:2.1}.family{border-top:1px solid var(--line);margin-top:48px;padding-top:30px;font-size:16px;line-height:2}.family p{margin:4px 0}.family span{color:var(--muted)}.family strong{margin-left:5px;font-size:18px}.gallery{background:var(--paper)}.gallery .section-kicker{margin-bottom:38px;font-size:14px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.gallery-grid button{cursor:pointer;aspect-ratio:1;background:0 0;border:0;padding:0;overflow:hidden}.gallery-grid img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.gallery-grid button:focus-visible{outline:2px solid var(--wine);outline-offset:3px}.gallery-grid button:hover img{transform:scale(1.04)}.photo-modal{z-index:100;background:#181614eb;justify-content:center;align-items:center;padding:66px 20px 24px;display:flex;position:fixed;inset:0}.photo-modal>img{object-fit:contain;width:auto;max-width:min(92vw,720px);height:auto;max-height:82vh;display:block;box-shadow:0 12px 45px #00000059}.modal-close{color:#fff;letter-spacing:.14em;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffffb8;padding:7px 2px;font:14px "Goudy Bookletter 1911",serif;position:absolute;top:22px;right:22px}.modal-nav{z-index:1;color:#fff;cursor:pointer;background:#ffffff1f;border:0;flex-direction:column;justify-content:center;align-items:center;width:46px;height:64px;font-size:34px;line-height:.7;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.modal-nav span{margin-top:8px;font:11px Gowun Batang,serif}.modal-prev{left:8px}.modal-next{right:8px}.modal-close:focus-visible,.modal-nav:focus-visible{outline-offset:4px;outline:2px solid #fff}@media (width<=520px){.modal-nav{flex-direction:row;gap:7px;width:72px;height:44px;font-size:27px;top:auto;bottom:24px;transform:none}.modal-nav span{margin:0}.modal-prev{left:24px}.modal-next{right:24px}.photo-modal{padding-bottom:84px}.photo-modal>img{max-height:74vh}}.location{background:var(--white)}.location h2{margin-bottom:12px}.address{color:var(--muted);font-size:14px;line-height:1.8}.quick-actions{grid-template-columns:1fr 1fr;gap:10px;margin:28px 0;display:grid}.quick-actions a{border:1px solid var(--line);background:#fff6;border-radius:40px;justify-content:center;align-items:center;gap:7px;height:48px;font-family:Noto Sans KR,sans-serif;font-size:14px;display:flex}.map-card{background:#fff;border-block:1px solid #d2ccbf;margin:12px -28px 0;overflow:hidden}.map-card>img{width:100%;height:auto;display:block}.road{background:#faf8f2;border:1px solid #d8d1c4;position:absolute}.road-a{width:130%;height:44px;top:118px;left:-15%;transform:rotate(-5deg)}.road-b{width:130%;height:34px;top:52px;left:-10%;transform:rotate(12deg)}.road-c{width:120%;height:40px;top:120px;left:110px;transform:rotate(86deg)}.subway-line{background:#8a8261;width:130%;height:5px;position:absolute;top:192px;left:-10%;transform:rotate(2deg)}.station{color:#fff;z-index:2;background:#8a8261;border-radius:12px;padding:4px 7px;font:10px Noto Sans KR,sans-serif;position:absolute}.station-a{top:180px;left:30px}.station-b{top:196px;right:30px}.map-label{color:#8b857c;z-index:2;font:10px Noto Sans KR,sans-serif;position:absolute}.label-a{top:52px;left:55%}.label-b{top:114px;left:18%}.venue-pin{z-index:3;background:var(--wine);border-radius:50% 50% 50% 0;width:42px;height:42px;position:absolute;top:115px;left:54%;transform:rotate(-45deg);box-shadow:0 4px 10px #6f31364a}.venue-pin span{color:#fff;margin:9px 0 0 12px;display:block;transform:rotate(45deg)}.venue-label{z-index:3;background:var(--white);padding:5px 8px;font-size:11px;position:absolute;top:166px;left:43%;box-shadow:0 2px 8px #736b5d33}.map-links{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);margin:0 -28px;display:grid}.map-links a{border-right:1px solid #eee;justify-content:center;align-items:center;gap:5px;padding:18px 2px;font:12px Noto Sans KR,sans-serif;display:flex}.map-links b{color:#fff;border-radius:6px;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.naver{background:#20c46a}.kakao{background:#f5d914;color:#292929!important}.tmap{background:#4860d6}.transport{text-align:left;margin-top:46px}.transport article{border-bottom:1px solid var(--line);grid-template-columns:35px 1fr;gap:15px;padding:23px 0;display:grid}.transport article>svg{color:var(--wine);width:23px;height:23px;margin-top:2px}.transport h3{margin:0 0 8px;font-size:16px}.transport p,.transit-copy{color:var(--muted);word-break:keep-all;margin:0;font-size:13px;line-height:1.85}.transit-label{color:var(--ink);margin:0 0 4px;font-weight:600;display:block}.transit-label:not(:first-child){margin-top:20px}.transit-copy ul{margin:0;padding:0;list-style:none}.transit-copy li{padding-left:10px;position:relative}.transit-copy li:before{content:"-";position:absolute;left:0}.account{background:#eee7dc}.account-list{gap:10px;display:grid}.account-list button{text-align:left;cursor:pointer;background:#ffffff8c;border:1px solid #d5cdc1;justify-content:space-between;align-items:center;width:100%;padding:17px 18px;display:flex}.account-list span{font:12px Noto Sans KR,sans-serif}.account-list small{color:var(--wine);margin-bottom:6px;font-size:10px;display:block}.account-list svg{width:18px;color:var(--muted)}footer{text-align:center;color:#eee9e0;background:#302e2a;padding:60px 28px 40px}footer p{letter-spacing:.08em;margin:0 0 28px;font-size:18px}footer button{color:#eee9e0;cursor:pointer;background:0 0;border:1px solid #68645e;border-radius:40px;align-items:center;gap:8px;padding:13px 25px;font-size:13px;display:inline-flex}footer small{color:#8f8b84;letter-spacing:.22em;margin-top:35px;font-family:"Goudy Bookletter 1911",serif;display:block}.toast{color:#fff;opacity:0;pointer-events:none;z-index:10;white-space:nowrap;background:#292723;border-radius:30px;padding:11px 17px;font:12px Noto Sans KR,sans-serif;transition:all .25s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=380px){.type-intro h1 strong{letter-spacing:.1em;font-size:44px}}@media (width<=360px){.hero h1{gap:10px;font-size:26px}.section{padding-inline:22px}.map-card,.map-links{margin-inline:-22px}}@media (width>=700px){body{padding:30px 0}main{border-radius:3px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
