.guestbook-intro{padding-top:65px;padding-bottom:40px}.guestbook-intro h1{font-size:clamp(48px,7vw,90px);line-height:1.05;letter-spacing:-.055em;margin:18px 0 25px}.guestbook-intro .intro{max-width:700px}.guestbook-intro .text-link{margin-top:18px;display:inline-block}.book-section{padding-bottom:75px}.book-stage{padding:24px 10px 35px;perspective:2000px;outline-offset:8px;touch-action:pan-y}.guest-book{position:relative;max-width:960px;min-height:480px;margin:auto;perspective:1800px;isolation:isolate}.guest-book.is-closed{max-width:440px}.book-pages{display:grid;grid-template-columns:1fr 1fr;min-height:480px;border-radius:4px 11px 11px 4px;background:#f0e6cf;box-shadow:0 2px 0 #c9bca2,0 5px 0 #eee3cb,0 7px 0 #b7a991,0 10px 0 #e3d7bd,0 14px 0 #675942,0 24px 45px #0005;overflow:hidden}.book-pages:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:40px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#0002 48%,#fff4 52%,transparent);pointer-events:none;z-index:2}.book-page{padding:42px 38px 45px;color:#39352b;min-width:0;min-height:480px;display:flex;flex-direction:column;position:relative;background:radial-gradient(ellipse at top,#fff7e6aa,transparent 80%)}.book-page+.book-page{border-left:1px solid #b8aa8f}.page-kicker{font:10px/1.5 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.16em;color:#7c705b;margin:0 0 27px}.entry-message{font:clamp(16px,1.5vw,19px)/1.7 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 28px}.entry-signature{margin:auto 0 0;padding-top:20px;font:italic 23px/1.3 Georgia,serif;overflow-wrap:anywhere}.entry-date{font:10px/1.5 ui-monospace,monospace;color:#746850;margin:9px 0 0}.page-number{position:absolute;bottom:16px;left:0;width:100%;text-align:center;color:#8f8066;font:10px/1.5 Georgia,serif}.page-welcome{font:italic 32px/1.2 Georgia,serif;margin:35px 0 25px}.page-empty-copy{font:18px/1.65 Georgia,serif;max-width:260px}.book-cover{position:absolute;inset:0;z-index:5;width:100%;border:0;border-radius:4px 12px 12px 4px;text-align:center;padding:34px;background:radial-gradient(ellipse at 30% 15%,#45524544,transparent),repeating-linear-gradient(25deg,#ffffff02 0 1px,transparent 1px 4px),#35413b;color:#dfc596;box-shadow:inset 9px 0 9px #0006,inset 15px 0 0 #ffffff08,inset 18px 0 2px #0003,2px 4px 0 #1e2b24,0 20px 50px #0005;display:flex;flex-direction:column;align-items:center;cursor:pointer;transform-origin:left center}.book-cover:after{content:"";position:absolute;inset:20px 20px 20px 29px;border:1px solid #cab18066;border-radius:2px;pointer-events:none}.cover-top{font:10px/1.4 ui-monospace,monospace;letter-spacing:.3em;padding-top:12px}.cover-title{font:52px/1.05 Georgia,serif;letter-spacing:-.04em;margin-top:48px}.cover-flower{font:50px Georgia,serif;margin:auto}.cover-bottom{font:12px/1.8 Georgia,serif;margin-top:25px}.cover-bottom strong{display:block;margin-top:14px;font:10px/1.5 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em}.guest-book.is-closed .book-pages{visibility:hidden}.guest-book:not(.is-closed) .book-cover{display:none}.turning-page{display:none;position:absolute;top:0;bottom:0;left:50%;width:50%;z-index:4;background:linear-gradient(90deg,#ddd0b3,#f7edda 12%,#f0e6cf);box-shadow:8px 0 24px #0003;transform-origin:left;backface-visibility:visible;pointer-events:none}.is-turning .turning-page{display:block;animation:page-turn .62s ease-in-out both}.is-backward .turning-page{animation-direction:reverse}.book-controls{max-width:960px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 auto}.book-controls button,.book-feedback button{border:1px solid #64645e;color:#f2eee6;background:transparent;border-radius:40px;padding:12px 20px;cursor:pointer;font:inherit;font-size:13px;min-height:44px}.book-controls button:disabled{opacity:.35;cursor:default}.book-controls p{font:11px/1.6 ui-monospace,monospace;text-align:center;color:#bbb9af}.book-help,.book-feedback{font-size:12px;line-height:1.7;text-align:center;color:#aaa89e}.book-help{margin-top:22px}.book-feedback{min-height:25px}.book-feedback p:empty{display:none}.sign-book{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:60px;padding-bottom:90px;border-top:1px solid #44443f}.sign-book h2{font-size:clamp(38px,4.5vw,58px);letter-spacing:-.045em;line-height:1.05;margin:20px 0 28px}.sign-book h2 em{font-family:Georgia,serif;font-weight:400}.sign-book p{max-width:360px;font-size:15px;line-height:1.75;color:#bdbbb1}.guestbook-manage{font-size:12px;display:inline-block;color:#a5a399;margin-top:28px;text-underline-offset:4px}.guestbook-form label{display:block;font-size:13px;margin-bottom:9px}.guestbook-form input,.guestbook-form textarea{display:block;width:100%;box-sizing:border-box;padding:15px 17px;border:1px solid #5a5a53;border-radius:10px;background:#2d2d2a;color:#f4f0e6;font:16px/1.5 inherit;font-family:inherit;font-size:16px;resize:vertical}.guestbook-form input{margin-bottom:24px}.guestbook-form textarea{min-height:160px}.guestbook-form :is(input,textarea):focus{outline:2px solid #bed9ff;outline-offset:3px}.guestbook-form .message-count{text-align:right;font:11px/1.5 ui-monospace,monospace;max-width:none;margin:9px 0 22px}.guestbook-submit{cursor:pointer;border:0;background:#f0e9d9!important;color:#282a24!important;border-radius:50px!important;padding:16px 28px!important;font-size:14px!important;min-height:48px}.guestbook-submit:disabled{opacity:.55;cursor:wait}.guestbook-form .form-status{font-size:13px;min-height:48px;max-width:none;margin:15px 0 0}.guestbook-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.guestbook-form [data-error="true"]{color:#f1b5ab}.book-section button:focus-visible,.guestbook-submit:focus-visible{outline:2px solid #bed9ff;outline-offset:5px}.book-cover:focus-visible{outline-offset:10px}.book-feedback [hidden]{display:none}
@keyframes page-turn{0%{transform:rotateY(0deg)}100%{transform:rotateY(-180deg)}}
@media(max-width:640px){.guestbook-intro{padding-top:42px}.guestbook-intro .intro{font-size:16px}.book-stage{padding:12px 4px 30px}.guest-book,.book-pages,.book-page{min-height:470px}.book-pages{grid-template-columns:1fr}.book-page{padding:34px 28px 46px}.book-page:nth-child(2),.book-pages:after{display:none}.entry-message{font-size:17px}.book-controls{gap:8px}.book-controls button{padding:11px 13px;font-size:11px}.book-controls p{font-size:10px}.book-help{font-size:11px}.turning-page{left:0;width:100%}.cover-title{font-size:48px}.sign-book{grid-template-columns:1fr;gap:32px;padding-top:42px;padding-bottom:55px}.guestbook-manage{margin-top:12px}.guestbook-form .form-status{min-height:35px}.book-section{padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){.is-turning .turning-page{animation-duration:.001s}}
