/* A quiet paper cover, drawn lettering, then a full photograph. */
.name-heart{width:21px;height:21px;color:#7d8b67;flex:none;vertical-align:middle}.hero{padding:0!important}.hero-photo{aspect-ratio:3/4.4!important;isolation:isolate}.hero-image{object-position:50% 47%}.hero-photo::after{height:63%;z-index:1;background:linear-gradient(180deg,transparent 0%,rgba(251,250,247,.04) 22%,rgba(251,250,247,.68) 62%,var(--paper) 100%)}.hero-overlay{position:absolute;left:0;right:0;bottom:25px;z-index:2;text-align:center}.hero-overlay h1{display:flex;justify-content:center;align-items:center;gap:24px;font:42px/1.5 var(--serif);letter-spacing:4px;margin:0;color:#34442d}.hero-overlay .name-heart{width:22px;height:22px}.hero-eyebrow{font:13px/1.7 var(--serif);letter-spacing:3px;margin:0 0 17px;color:#53634a}.hero-date{font:12px/1.8 Georgia,serif;letter-spacing:3px;margin:15px 0 0;color:#53634a}.hero-info{padding:1px 20px 34px;font:15px/1.9 var(--serif)}.hero-info p{margin:0!important}.hero-info p:first-child{margin-bottom:17px!important}.hero-info .hall{font-size:13px}.hero .sample-label{z-index:3;top:14px;bottom:auto;right:auto;left:13px;background:#23322170;border-radius:2px;font-size:8px}
.desktop-note{position:fixed;top:50%;left:calc(50% - 445px);width:170px;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;text-align:center;color:#6f785f}.side-label{font:9px/1.8 Georgia,serif;letter-spacing:2.1px}.side-names{font:12px/2 Georgia,serif;letter-spacing:1px;margin-top:15px}.side-line{width:1px;height:72px;background:#bfc6b1;margin:29px 0}.side-date{font:9px/1.8 Georgia,serif;letter-spacing:1.8px}
.venue-phone{font:12px/1.7 var(--sans);margin:9px auto 0;width:fit-content;min-height:28px;display:flex;align-items:center;color:#748168;text-decoration:none}.venue-phone::before{content:'문의';font-size:10px;margin-right:9px;color:#919985}.venue .text-button{margin-top:7px}.music-toggle{z-index:40;background:#fbfaf7e8;box-shadow:0 2px 16px #35422d15;backdrop-filter:blur(8px);border:1px solid #dce2d2}.closing-names{display:flex;align-items:center;justify-content:center;gap:16px}.closing-names .name-heart{width:17px;height:17px}.share-actions>button{display:flex;align-items:center;justify-content:center;gap:7px}.share-actions svg{width:15px;height:15px;flex:none}
.guestbook{background:#f1f2e9;padding-top:67px;padding-bottom:64px}.guestbook h2{margin-bottom:17px}.guestbook-intro{font:13px/1.9 var(--serif);color:#768168;margin:0 0 29px}.guestbook-list{display:grid;gap:12px;text-align:left}.guestbook-message{border:1px solid #dfe4d5;background:#fafbf6;padding:20px 21px;border-radius:3px}.guestbook-message header{display:flex;justify-content:space-between;align-items:center;gap:12px}.guestbook-message strong{font:16px/1.6 var(--serif);color:#485b3e;overflow-wrap:anywhere}.guestbook-message time{font:10px var(--sans);color:#959c89;white-space:nowrap}.guestbook-message p{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.95 var(--sans);color:#69745d;margin:12px 0 6px}.guestbook-message button{display:block;margin:5px -8px -8px auto;border:0;background:none;color:#919b86;font:10px var(--sans);min-height:32px;min-width:40px}.guestbook-status{font:12px/1.9 var(--sans);color:#808c71;margin:20px 0}.guestbook-status:empty{display:none}.guestbook-status button{border:0;background:transparent;text-decoration:underline;font:inherit;color:inherit;padding:8px}.guestbook-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}.guestbook-actions>button{margin:0;min-width:125px;padding:13px 18px;background:#f9faf4;font-size:12px}.guestbook-actions>#guestbook-write{background:#e6ecdc;border-color:#d0dbc1}.guestbook-dialog{width:min(410px,calc(100vw - 32px));max-height:90vh;max-height:90dvh;overflow:auto;border:1px solid #dfe4d5;border-radius:5px;background:#fbfaf7;margin:auto;padding:22px 24px 28px;color:#46563c}.guestbook-dialog::backdrop{background:#27312288;backdrop-filter:blur(3px)}.form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.form-heading h2{font-size:22px;margin:0}.form-heading>button{height:44px;width:44px;border:0;background:none;font-size:27px;color:#758269;margin-right:-9px}.guestbook-dialog form{display:grid;gap:19px;text-align:left}.guestbook-dialog label{display:grid;gap:9px;font:12px/1.6 var(--sans);color:#6d7c5d}.guestbook-dialog input,.guestbook-dialog textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:12px;border:1px solid #d8dfcc;border-radius:3px;background:#fffefa;color:#394b30;font:16px/1.65 var(--sans);outline:none}.guestbook-dialog input:focus,.guestbook-dialog textarea:focus{border-color:#84996c;box-shadow:0 0 0 2px #84996c20}.guestbook-dialog textarea{resize:vertical;min-height:125px}.solid-button{border:1px solid #687e54;border-radius:3px;background:#6e825d;color:#fffef8;min-height:47px;font:13px var(--sans);padding:13px 18px;cursor:pointer}.solid-button:disabled{opacity:.6;cursor:wait}.form-feedback{font:12px/1.8 var(--sans);color:#9b6454;min-height:0;margin:0}.form-feedback:empty{display:none}.form-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}.guestbook-dialog[open]{display:block}.guestbook-active{overflow:hidden}
@keyframes write-letter{to{stroke-dashoffset:0}}@keyframes paper-words{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes paper-reveal{0%,77%{opacity:1}100%{opacity:0}}@keyframes photo-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(max-width:1000px){.desktop-note{display:none}}@media(max-width:359px){.hero-overlay h1{font-size:36px;gap:18px}.hero-overlay{bottom:18px}.hero-eyebrow{font-size:12px;margin-bottom:11px}.hero-info{font-size:13px;padding-bottom:25px}.hero-date{font-size:10px;margin-top:12px}.guestbook{padding-inline:24px}.guestbook-message{padding:16px}.guestbook-dialog{padding-inline:20px}.intro-names{font-size:21px}.intro-sheet{width:92vw}}
@media(max-height:500px){.intro-sheet{width:min(280px,65vh);padding:0;transform:none}.intro-names{margin:7px 0;font-size:18px}.intro-date{gap:3px}}@media(prefers-reduced-motion:reduce){.lettering-opening[open],.intro-names,.intro-date,.hero-image{animation:none!important;opacity:1}.intro-lettering path{animation:none;stroke-dashoffset:0}}

/* Approved artwork: original curves and pressure contrast, revealed with pen-path masks. */
.approved-opening{position:fixed;inset:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:#fcfaf5;color:#697351;z-index:150}.approved-opening::backdrop{background:#fcfaf5}.approved-opening[open]{display:grid;place-items:center;animation:none!important}.opening-paper{width:min(100vw,calc(100dvh * 851 / 1847));height:100%;display:grid;place-items:center}.opening-art{display:block;width:100%;height:100%;overflow:visible}.approved-opening .ink-guide{stroke-dasharray:1;stroke-dashoffset:1}.approved-opening .ink-finish,.art-names,.art-date{opacity:0}.is-writing .ink-guide{animation:approved-ink var(--duration) cubic-bezier(.35,0,.45,1) var(--start) forwards}.is-writing .finish-one{animation:art-appear .12s linear 1.32s forwards}.is-writing .finish-two{animation:art-appear .14s linear 2.25s forwards}.is-writing .art-names{animation:art-appear .55s ease 2.15s forwards}.is-writing .art-date{animation:art-appear .55s ease 2.32s forwards}.approved-opening.is-writing{animation:approved-dissolve 3.45s ease both!important}#opening-skip{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));right:max(20px,calc((100vw - 440px)/2));height:44px;min-width:74px;padding:0 10px;background:transparent;border:0;font:10px/1 -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:2px;color:#6e785b;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;z-index:2}#opening-skip span{font-size:14px;letter-spacing:0}#opening-skip:focus-visible{outline:1px solid #72835c;outline-offset:2px;border-radius:3px}.opening-active{overflow:hidden}.opening-active .hero-image{animation:photo-settle 4.1s ease both}@keyframes approved-ink{to{stroke-dashoffset:0}}@keyframes art-appear{to{opacity:1}}@keyframes approved-dissolve{0%,84%{opacity:1}100%{opacity:0}}@media(max-aspect-ratio:851/1847){.opening-paper{width:100vw;height:calc(100vw * 1847 / 851)}}@media(prefers-reduced-motion:reduce){.approved-opening.is-writing{animation:none!important}.approved-opening .ink-guide{stroke-dashoffset:0;animation:none}.approved-opening .ink-finish,.art-names,.art-date{opacity:1;animation:none}}
