:root{--paper:#f8fafb;--ink:#333e43;--muted:#758187;--blue:#728e9e;--line:#d6dfe3;--serif:'Noto Serif KR',serif;--english:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#e9edef;color:var(--ink);font-family:'Noto Sans KR',sans-serif;font-size:14px;font-weight:300;line-height:1.8}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #53768a;outline-offset:5px}img{max-width:100%;display:block}p,h1,h2{margin:0}h2{font-family:var(--serif);font-size:23px;font-weight:400;letter-spacing:-.6px}main{max-width:480px;margin:auto;background:var(--paper);overflow:hidden;box-shadow:0 0 80px #34424c09}.skip{position:fixed;top:-80px;left:16px;padding:12px;background:white;z-index:100}.skip:focus{top:12px}.topline{display:flex;justify-content:space-between;padding:22px 26px 20px;font-size:9px;letter-spacing:2px;color:var(--muted)}.sample{font-size:8px;letter-spacing:.7px}.hero-photo{position:relative;height:540px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.hero-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,var(--paper))}.photo-note{position:absolute;top:25px;left:28px;font-size:8px;letter-spacing:2px;color:#fff;text-shadow:0 1px 5px #555}.hero-copy{position:relative;padding:8px 42px 58px;margin-top:-15px}.eyebrow{font-size:9px;font-weight:400;letter-spacing:3px;color:var(--blue);margin-bottom:22px}.hero h1{font-family:var(--serif);font-size:51px;font-weight:300;line-height:1.42;letter-spacing:3px}.hero h1 i{font-family:var(--english);font-weight:400;color:var(--blue);font-size:50px;letter-spacing:0;margin-left:12px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:27px}.hero-bottom p{font-size:11px;line-height:2.1;color:var(--muted)}.scroll-cue{font-size:23px;color:var(--blue);padding:10px}.section{position:relative;padding:85px 38px;text-align:center}.section-number{font-family:var(--english);font-size:86px;line-height:1;color:#6d89910e;position:absolute;top:39px;left:0;right:0;pointer-events:none}.intro{background:#eef3f6}.section .eyebrow,.section-heading .eyebrow{position:relative}.poem{font-family:var(--serif);font-size:13px;line-height:2.4;letter-spacing:-.25px;margin-top:30px}.family{margin:46px 0 28px}.family p{padding:17px 0;border-bottom:1px solid #b4c5cf;letter-spacing:.2px;font-size:13px}.family p:last-child{border-bottom:0}.family p>span{color:var(--muted);font-size:11px;padding-left:5px}.family strong{display:block;font-weight:400;font-size:16px;margin-top:7px}.family small{font-size:11px;color:var(--muted);margin-right:10px}.outline-button{border:1px solid var(--line);border-radius:2px;display:flex;width:100%;justify-content:center;align-items:center;gap:10px;padding:13px 8px;font-size:11px;transition:background .2s}.outline-button:hover{background:#e4ebef}.date-title{font-family:var(--english);font-size:39px;letter-spacing:0}.date-caption{font-family:var(--serif);font-size:13px;margin-top:5px;color:var(--muted)}.calendar{margin:37px 0 23px;padding:25px 0;border-block:1px solid var(--line)}.calendar-head,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);align-items:center;text-align:center}.calendar-head{font-size:8px;letter-spacing:1px;color:var(--muted);margin-bottom:14px}.calendar-days span{font-family:var(--english);font-size:18px;display:flex;align-items:center;justify-content:center;height:43px}.calendar-days .sunday{color:#b08483}.calendar-days .wedding-day{width:36px;height:36px;border-radius:50%;background:var(--blue);color:white;justify-self:center}.date-footer{font-size:11px;color:var(--muted)}.gallery-section{padding:70px 20px 65px}.section-heading{position:relative;text-align:center;margin-bottom:34px}.section-heading .section-number{top:-38px}.subtext{font-size:11px;color:var(--muted);margin-top:14px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gallery-photo{position:relative;padding:0;overflow:hidden;aspect-ratio:2/3}.gallery-photo.wide{grid-column:1/-1;aspect-ratio:1.1}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-photo:hover img{transform:scale(1.035)}.gallery-photo.wide img{object-position:center 52%}.gallery-photo span{position:absolute;bottom:0;left:0;right:0;padding:23px 20px 14px;background:linear-gradient(transparent,#16212480);color:#fff;font-size:9px;letter-spacing:2px;display:flex;justify-content:space-between}.gallery-photo b{font-size:17px;font-weight:300}.gallery-hint{font-size:10px;color:var(--muted);text-align:center;margin-top:20px}.location{padding-top:72px}.venue{font-family:var(--serif);font-size:18px;line-height:1.9;margin-top:31px}.venue span{font-size:13px}.address{font-size:11px;color:var(--muted);margin-top:13px}.text-button{font-size:10px;color:var(--blue);padding:10px}.map-wrap{height:230px;margin:21px -12px 0;background:#e7edef;border:1px solid var(--line);overflow:hidden}.map-wrap iframe{width:100%;height:100%;border:0;filter:saturate(.45)}.map-links{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);padding:16px 0;font-size:10px}.map-links a{display:flex;gap:7px;align-items:center;justify-content:center;min-height:35px}.map-links a+a{border-left:1px solid var(--line)}.map-brand{width:18px;height:18px;border-radius:4px;line-height:18px;font-weight:500;font-size:10px}.naver{background:#e2eee6;color:#35734d}.kakao{background:#eee9d4;color:#766b39}.directions{margin-top:16px}.location-note{font-size:10px;color:var(--muted);margin-top:22px;line-height:1.9}.gift{background:#eef3f6;padding-top:80px;padding-bottom:70px}.gift .poem{margin-top:24px;margin-bottom:32px}details{text-align:left;border:1px solid #cedbe2;margin-top:11px;background:#f8fafb80}summary{padding:15px 18px;cursor:pointer;font-size:12px;list-style:none;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}summary span{color:var(--blue);font-size:17px;line-height:1.3}details[open] summary span{transform:rotate(45deg)}.account{padding:17px 18px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px}.account strong{font-weight:400;font-size:12px}.account small{display:block;font-size:10px;margin-top:5px;color:var(--muted)}.account button{font-size:10px;border:1px solid var(--line);border-radius:3px;padding:8px 10px;white-space:nowrap}.sample-note{font-size:9px;line-height:1.9;color:var(--muted);margin-top:20px;text-align:center}footer{text-align:center;padding:65px 25px 35px}.closing{font-family:var(--english);font-size:61px;line-height:.95;font-weight:400;letter-spacing:-2px;color:#7c929e}.closing i{font-weight:400}.footer-names{font-family:var(--serif);font-size:15px;letter-spacing:3px;margin-top:32px}.footer-names span{color:var(--blue);font-family:var(--english);font-style:italic}.footer-date{font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:10px}.footer-rule{width:25px;height:1px;background:var(--line);margin:35px auto 24px}.demo-disclosure{font-size:9px;color:var(--muted);line-height:1.9}.back-top{display:inline-block;font-size:10px;color:var(--blue);padding:15px;margin-top:10px}dialog{border:none;padding:0;color:var(--ink);max-width:calc(100vw - 32px)}dialog::backdrop{background:#17242be8;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:10px;top:8px;width:44px;height:44px;font-size:29px;line-height:1;color:inherit;z-index:5;border-radius:50%}#gallery-dialog{width:min(90vw,620px);background:transparent;overflow:visible;color:white}#large-photo{max-height:78dvh;max-width:100%;width:auto;object-fit:contain;margin:auto}#gallery-dialog .dialog-close{background:#0005;color:white}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:42px;margin-top:15px;font-size:12px}.gallery-controls button{font-size:22px;width:44px;height:44px}#contact-dialog{width:380px;background:var(--paper);padding:45px 25px 24px}#contact-dialog h2{font-size:20px;text-align:center;margin-bottom:30px}#contact-dialog>.eyebrow{text-align:center}.contact-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0}.contact-row small{font-size:11px;color:var(--muted);margin-right:6px}.contact-row button{padding:8px 12px;border:1px solid var(--line);font-size:11px}.contact-row div{display:flex;gap:6px}#contact-message{font-size:11px;line-height:1.8;text-align:center;color:var(--blue);margin-top:15px;min-height:20px}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,16px);opacity:0;pointer-events:none;background:#334650;color:white;padding:12px 22px;border-radius:4px;z-index:100;font-size:12px;transition:.25s;max-width:calc(100vw - 30px);width:max-content}#toast.visible{opacity:1;transform:translate(-50%,0)}.reveal{transition:opacity .9s,transform .9s}.reveal.pending{opacity:0;transform:translateY(18px)}@media(max-width:390px){.topline{padding-inline:20px;font-size:8px}.hero-photo{height:480px}.hero-copy{padding-inline:32px}.section{padding-left:29px;padding-right:29px}.hero h1{font-size:47px}.hero-bottom p{font-size:10px}}@media(min-width:720px){body{padding:26px 0}main{border:1px solid #dfe6e9}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}
