:root{--cream:#faf5e9;--olive:#74724f;--ink:#443f32;--gold:#b99c65;--burgundy:#783e3d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#e5dfd0;color:var(--ink);font-family:'Malgun Gothic',sans-serif;font-size:15px;line-height:1.9}main{max-width:520px;margin:auto;background:var(--cream);box-shadow:0 0 70px #4a43231a}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #b67a35;outline-offset:4px}header{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;font-size:10px;letter-spacing:2px;background:#f8f3e8}header button{border:1px solid #c9b995;border-radius:30px;background:transparent;padding:6px 12px;font-size:12px;letter-spacing:0}section{padding:65px 30px;text-align:center}h1,h2,.tagline,.year,.date{font-family:Batang,'Times New Roman',serif}h1{font-size:54px;line-height:1.22;color:var(--burgundy);margin:24px 0;font-weight:bold;letter-spacing:-3px}h2{font-size:28px;line-height:1.55;margin:12px 0 30px;font-weight:normal}h3{font-size:17px;margin:0 0 10px}.hero{position:relative;min-height:760px;padding:30px 28px 40px;background:radial-gradient(ellipse at 10% 0%,#c1bd9c70,transparent 43%),radial-gradient(ellipse at 100% 100%,#d3bd9380,transparent 40%),#fbf6e9;border:10px double #b7a477;margin:10px}.ornament{font-family:Georgia,serif;color:var(--gold);font-size:62px;line-height:1.2}.hero .eyebrow{margin:25px 0 0;font-size:13px;letter-spacing:2px}.year{font-size:25px;letter-spacing:10px;margin:12px 0}.tagline{font-size:20px;line-height:1.7;color:var(--olive)}.rule{height:1px;width:45px;background:var(--gold);margin:30px auto}.date{font-size:35px;line-height:1.2;margin:20px 0}.date small{font:12px sans-serif;letter-spacing:3px}.eyebrow{font-size:11px;letter-spacing:4px;color:var(--olive);font-weight:bold}.outline{display:inline-block;border:1px solid #b7a477;background:transparent;padding:10px 18px;border-radius:2px;color:var(--ink)}.hero .outline{margin-top:18px;font-size:13px}.quiet{display:block;font-size:12px;margin-top:17px;color:var(--olive)}.bottom{font-size:40px;margin-top:24px}.letter p{margin:28px 0;font-size:14px;line-height:2.25}.letter .eyebrow{font-size:11px}.signature{padding-top:24px}.signature strong{font-size:20px;margin-left:10px}.schedule{background:#eeecdf}.schedule article{display:flex;text-align:left;gap:22px;padding:25px 0;border-bottom:1px solid #d1cbb7}.part{color:var(--gold);font-family:Georgia,serif;font-size:32px}.time{color:var(--olive);font-size:13px;letter-spacing:1px;margin:0}.schedule article p{margin-top:3px;font-size:14px}.schedule h3{font-size:21px}dl{margin-bottom:0;font-size:14px}dt{color:var(--olive);font-size:12px;margin-top:14px}dd{margin:0}.note{font-size:11px;line-height:1.8;color:#746e60;margin-top:20px}.rsvp{background:var(--olive);color:#fffcef}.rsvp .eyebrow,.rsvp .note{color:#eee8d3}.period{font-family:Georgia,serif;font-size:35px;line-height:1.6}.period small{font:14px 'Malgun Gothic',sans-serif;margin-left:12px}.primary{display:block;padding:15px 12px;border:0;background:var(--olive);color:white;border-radius:3px;margin-top:24px;width:100%;font:inherit}.rsvp .primary{background:#faf4e4;color:#4c4b33;font-weight:bold}.location .outline{font-size:12px;padding:6px 16px}.transport{text-align:left;border-top:1px solid #d4c7aa;margin-top:35px;padding-top:30px;font-size:14px}.transport h3{font-size:16px;color:var(--olive);margin-top:18px}.poster{padding-top:20px}.poster img{width:100%;height:auto;border:1px solid #d2c09e}footer{text-align:center;padding:15px 30px 120px;font-size:13px}footer strong,footer a{display:block;margin:14px 0}footer .outline{font-size:12px;margin-top:15px}.dock{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);display:grid;grid-template-columns:1fr 1fr 1.5fr;background:#fffdf8;border-top:1px solid #d9d0bd;padding-bottom:env(safe-area-inset-bottom);z-index:5;box-shadow:0 -4px 20px #00000009}.dock a,.dock button{font-size:14px;text-align:center;padding:16px 6px;background:none;border:0;color:var(--ink)}.dock a:last-child{background:var(--olive);color:white}dialog{width:min(94%,500px);padding:24px;border:0;border-radius:14px;color:var(--ink);background:#fffdf8}dialog::backdrop{background:#26241980}.dialoghead{display:flex;justify-content:space-between;align-items:center}.dialoghead h3{font-size:15px}.dialoghead button{border:0;background:none;padding:10px}.apps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:25px 0}.apps a{font-size:11px;text-align:center}.apps b{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;margin:0 auto 9px;font:bold 29px Arial}.tmap{background:linear-gradient(135deg,#ff58b3,#4c72ef,#00d4bc);color:white}.kakao{background:#fee500;color:#3267c2}.naver{background:#03c75a;color:white}.google{background:#f0f2f6;color:#4285f4}#toast{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);padding:9px 18px;background:#38372b;color:white;border-radius:8px;font-size:13px;z-index:10;display:none;width:max-content;max-width:90%}@media(max-width:360px){section{padding-left:22px;padding-right:22px}h1{font-size:46px}.letter p{font-size:13px}.apps{gap:3px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.venue-map{display:block;margin-top:28px;border:1px solid #d4c7aa;border-radius:5px;overflow:hidden;background:white}.venue-map img{display:block;width:100%;height:auto}
