:root{--wbook-bg:#fff8ec;--wbook-bg-soft:#f5ecd6;--wbook-paper:#fffdf5;--wbook-text:#5b4636;--wbook-text-soft:#8b7960;--wbook-apricot:#e89b6f;--wbook-sage:#7aa095;--wbook-border:#5b46362e;--wbook-font-script:"Caveat", "Pretendard", cursive;--wbook-font-display:"Fraunces", "Cormorant Garamond", serif;--wbook-font-body:"Pretendard", -apple-system, sans-serif;--wbook-max-width:1180px;--wbook-section-pad-y:100px}@media (width<=767px){:root{--wbook-section-pad-y:64px}}.wedding-storybook{box-sizing:border-box}.wedding-storybook *,.wedding-storybook :before,.wedding-storybook :after{box-sizing:inherit}.wedding-storybook h1,.wedding-storybook h2,.wedding-storybook h3,.wedding-storybook h4,.wedding-storybook h5,.wedding-storybook h6,.wedding-storybook p,.wedding-storybook ul,.wedding-storybook ol,.wedding-storybook figure,.wedding-storybook blockquote{margin:0;padding:0}.wedding-storybook ul,.wedding-storybook ol{list-style:none}.wedding-storybook img,.wedding-storybook picture,.wedding-storybook video,.wedding-storybook svg{max-width:100%;height:auto;display:block}.wedding-storybook a{color:inherit;text-decoration:none}.wedding-storybook button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.wedding-storybook input,.wedding-storybook select,.wedding-storybook textarea{font:inherit;color:inherit}.wedding-storybook :focus-visible{outline:2px solid var(--wbook-apricot);outline-offset:4px}.wedding-storybook{background:var(--wbook-bg);color:var(--wbook-text);font-family:var(--wbook-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.005em;background-image:radial-gradient(circle at 20% 30%,#e89b6f0a 0%,#0000 50%),radial-gradient(circle at 80% 70%,#7aa0950a 0%,#0000 50%);min-height:100vh;font-size:16px;line-height:1.85}.wedding-storybook .wbook-script{font-family:var(--wbook-font-script);font-weight:600;line-height:1.1}.wedding-storybook .wbook-display{font-family:var(--wbook-font-display);font-weight:500}.wedding-storybook .wbook-eyebrow{font-family:var(--wbook-font-script);color:var(--wbook-apricot);align-items:center;gap:12px;font-size:22px;font-weight:600;display:inline-flex}.wedding-storybook .wbook-eyebrow:before,.wedding-storybook .wbook-eyebrow:after{content:"";background:currentColor;width:28px;height:1px}.wedding-storybook [data-wbook-reveal]{opacity:0;transition:opacity .85s,transform .85s;transform:translateY(28px)}.wedding-storybook [data-wbook-reveal].is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.wedding-storybook [data-wbook-reveal]{opacity:1;transition:none;transform:none}}.wedding-storybook .wbook-container{width:100%;max-width:var(--wbook-max-width);margin:0 auto;padding:0 24px}@media (width>=768px){.wedding-storybook .wbook-container{padding:0 40px}}.wedding-storybook .wbook-section{padding-top:var(--wbook-section-pad-y);padding-bottom:var(--wbook-section-pad-y)}.wedding-storybook .wbook-chapter-mark{text-align:center;margin-bottom:36px}.wedding-storybook .wbook-chapter-num{font-family:var(--wbook-font-display);color:var(--wbook-apricot);letter-spacing:.18em;margin-bottom:6px;font-size:18px;font-style:italic}.wedding-storybook .wbook-chapter-title{font-family:var(--wbook-font-script);color:var(--wbook-text);margin-bottom:6px;font-size:clamp(38px,5vw,56px);font-weight:600;line-height:1}.wedding-storybook .wbook-chapter-title-kr{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);font-size:14px;font-style:italic}.wedding-storybook .wbook-page{background:var(--wbook-paper);border:1px solid var(--wbook-border);overflow:hidden;box-shadow:0 24px 60px #5b463624}:root{--demo-bar-bg:#fff8eceb;--demo-bar-text:#5b4636;--demo-bar-border:#e89b6f66;--demo-fab-bg:#e89b6f;--demo-fab-icon:#fff8ec}.wedding-storybook .wbook-cover{justify-content:center;align-items:center;min-height:100vh;padding:120px 24px 80px;display:flex;position:relative}.wedding-storybook .wbook-cover-book{aspect-ratio:4/5;background:var(--wbook-paper);border:1px solid var(--wbook-border);width:100%;max-width:720px;box-shadow:0 32px 80px #5b46362e, inset 8px 0 0 var(--wbook-apricot);text-align:center;flex-direction:column;padding:48px 56px;display:flex;position:relative}@media (width<=600px){.wedding-storybook .wbook-cover-book{padding:40px 28px}}.wedding-storybook .wbook-cover-publisher{font-family:var(--wbook-font-display);letter-spacing:.18em;color:var(--wbook-text-soft);margin-bottom:18px;font-size:12px;font-style:italic}.wedding-storybook .wbook-cover-image{border:1px solid var(--wbook-border);background:var(--wbook-bg-soft);flex:1;margin:14px 0 22px;overflow:hidden}.wedding-storybook .wbook-cover-image img{object-fit:cover;width:100%;height:100%}.wedding-storybook .wbook-cover-title{font-family:var(--wbook-font-display);color:var(--wbook-text);margin-bottom:8px;font-size:clamp(34px,5vw,52px);font-weight:500;line-height:1}.wedding-storybook .wbook-cover-author{font-family:var(--wbook-font-script);color:var(--wbook-apricot);margin-bottom:14px;font-size:22px}.wedding-storybook .wbook-cover-tagline{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);font-size:14px;font-style:italic}.wedding-storybook .wbook-cover-book:after{content:"";background:linear-gradient(90deg,#0000,#5b463633);width:4px;position:absolute;top:0;bottom:0;right:0}.wedding-storybook .wbook-chapter-spread{background:var(--wbook-paper);border:1px solid var(--wbook-border);grid-template-columns:1fr;gap:0;display:grid;box-shadow:0 24px 60px #5b463624}@media (width>=880px){.wedding-storybook .wbook-chapter-spread{grid-template-columns:1fr 1fr}}.wedding-storybook .wbook-chapter-page{padding:44px;position:relative}.wedding-storybook .wbook-chapter-page--image{background:var(--wbook-bg-soft);aspect-ratio:1;padding:0;overflow:hidden}@media (width>=880px){.wedding-storybook .wbook-chapter-page--image{aspect-ratio:auto}}.wedding-storybook .wbook-chapter-page--image img{object-fit:cover;width:100%;height:100%}@media (width>=880px){.wedding-storybook .wbook-chapter-spread--reverse .wbook-chapter-page--image{order:2}.wedding-storybook .wbook-chapter-page--text:before{content:"";width:8px;position:absolute;top:0;bottom:0}.wedding-storybook .wbook-chapter-spread:not(.wbook-chapter-spread--reverse) .wbook-chapter-page--text:before{background:linear-gradient(90deg,#5b46362e,#0000);left:0}.wedding-storybook .wbook-chapter-spread--reverse .wbook-chapter-page--text:before{background:linear-gradient(-90deg,#5b46362e,#0000);right:0}}.wedding-storybook .wbook-chapter-roman{font-family:var(--wbook-font-display);letter-spacing:.16em;color:var(--wbook-apricot);margin-bottom:6px;font-size:14px;font-style:italic}.wedding-storybook .wbook-chapter-text-title{font-family:var(--wbook-font-script);color:var(--wbook-text);margin-bottom:6px;font-size:clamp(36px,5vw,52px);line-height:1}.wedding-storybook .wbook-chapter-text-title-kr{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);margin-bottom:28px;font-size:13px;font-style:italic}.wedding-storybook .wbook-chapter-body p{font-family:var(--wbook-font-script);color:var(--wbook-text);font-size:22px;line-height:1.85}.wedding-storybook .wbook-chapter-body p+p{margin-top:14px}.wedding-storybook .wbook-chapter-page-num{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);font-size:12px;font-style:italic;position:absolute;bottom:24px;right:32px}.wedding-storybook .wbook-gallery-grid{grid-template-columns:1fr;gap:28px;display:grid}@media (width>=720px){.wedding-storybook .wbook-gallery-grid{grid-template-columns:repeat(3,1fr)}}.wedding-storybook .wbook-gallery-card{background:var(--wbook-paper);border:1px solid var(--wbook-border);text-align:center;transition:transform .4s,box-shadow .4s;overflow:hidden;box-shadow:0 14px 32px #5b46361f}.wedding-storybook .wbook-gallery-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px #5b463633}.wedding-storybook .wbook-gallery-image{aspect-ratio:4/5;background:var(--wbook-bg-soft);overflow:hidden}.wedding-storybook .wbook-gallery-image img{object-fit:cover;width:100%;height:100%}.wedding-storybook .wbook-gallery-body{border-top:1px solid var(--wbook-border);padding:18px 22px 22px}.wedding-storybook .wbook-gallery-num{font-family:var(--wbook-font-display);color:var(--wbook-apricot);margin-bottom:4px;font-size:18px;font-style:italic}.wedding-storybook .wbook-gallery-caption{font-family:var(--wbook-font-script);color:var(--wbook-text);font-size:20px}.wedding-storybook .wbook-venue{background:var(--wbook-bg)}.wedding-storybook .wbook-venue-card{background:var(--wbook-paper);border:1px solid var(--wbook-border);text-align:center;max-width:720px;margin:0 auto 40px;padding:44px 40px;box-shadow:0 18px 44px #5b46361f}.wedding-storybook .wbook-venue-eyebrow{font-family:var(--wbook-font-display);color:var(--wbook-apricot);margin-bottom:12px;font-size:14px;font-style:italic}.wedding-storybook .wbook-venue-date{font-family:var(--wbook-font-script);color:var(--wbook-text);margin-bottom:6px;font-size:clamp(34px,5vw,48px);line-height:1}.wedding-storybook .wbook-venue-time{font-family:var(--wbook-font-display);color:var(--wbook-sage);margin-bottom:24px;font-size:16px;font-style:italic}.wedding-storybook .wbook-venue-name{font-family:var(--wbook-font-display);color:var(--wbook-text);margin-bottom:4px;font-size:18px}.wedding-storybook .wbook-venue-name-kr{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);margin-bottom:6px;font-size:13px;font-style:italic}.wedding-storybook .wbook-venue-address{color:var(--wbook-text-soft);font-size:13px}.wedding-storybook .wbook-venue-map{aspect-ratio:16/9;border:1px solid var(--wbook-border);background:var(--wbook-paper);max-width:880px;margin:0 auto;overflow:hidden}.wedding-storybook .wbook-venue-map iframe{border:0;width:100%;height:100%}.wedding-storybook .wbook-rsvp{background:var(--wbook-bg-soft)}.wedding-storybook .wbook-rsvp-form{background:var(--wbook-paper);border:1px solid var(--wbook-border);text-align:center;max-width:480px;margin:0 auto;padding:40px 40px 44px;box-shadow:0 18px 44px #5b46361f}.wedding-storybook .wbook-rsvp-label{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);margin-bottom:14px;font-size:14px;font-style:italic;display:block}.wedding-storybook .wbook-rsvp-input{border:1px solid var(--wbook-border);background:var(--wbook-bg);width:100%;color:var(--wbook-text);font-family:var(--wbook-font-script);text-align:center;margin-bottom:22px;padding:14px 18px;font-size:22px}.wedding-storybook .wbook-rsvp-input:focus{border-color:var(--wbook-apricot);outline:none}.wedding-storybook .wbook-rsvp-submit{background:var(--wbook-apricot);color:var(--wbook-paper);font-family:var(--wbook-font-display);border:1px solid var(--wbook-apricot);align-items:center;gap:8px;padding:14px 32px;font-size:15px;font-style:italic;transition:background .2s;display:inline-flex}.wedding-storybook .wbook-rsvp-submit:hover{background:var(--wbook-text);border-color:var(--wbook-text)}.wedding-storybook .wbook-rsvp-modal{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#5b46368c;justify-content:center;align-items:center;padding:24px;transition:opacity .3s;display:flex;position:fixed;inset:0}.wedding-storybook .wbook-rsvp-modal.is-open{opacity:1;pointer-events:auto}.wedding-storybook .wbook-rsvp-modal-dialog{background:var(--wbook-paper);border:1px solid var(--wbook-border);border-left:6px solid var(--wbook-apricot);text-align:center;width:100%;max-width:440px;padding:44px 40px;transition:transform .35s cubic-bezier(.2,.8,.2,1);position:relative;transform:translateY(14px);box-shadow:0 24px 60px #5b46364d}.wedding-storybook .wbook-rsvp-modal.is-open .wbook-rsvp-modal-dialog{transform:translateY(0)}.wedding-storybook .wbook-rsvp-modal-close{border:1px solid var(--wbook-border);width:30px;height:30px;color:var(--wbook-text-soft);position:absolute;top:12px;right:12px}.wedding-storybook .wbook-rsvp-modal-eyebrow{font-family:var(--wbook-font-display);color:var(--wbook-apricot);margin-bottom:14px;font-size:14px;font-style:italic}.wedding-storybook .wbook-rsvp-modal-title{font-family:var(--wbook-font-script);color:var(--wbook-text);margin-bottom:16px;font-size:38px;line-height:1}.wedding-storybook .wbook-rsvp-modal-desc{font-family:var(--wbook-font-display);color:var(--wbook-text);font-size:14px;font-style:italic;line-height:1.85}.wedding-storybook .wbook-rsvp-modal-name{color:var(--wbook-apricot);font-weight:600}.wedding-storybook .wbook-accounts{grid-template-columns:1fr;gap:18px;max-width:720px;margin:56px auto 0;display:grid}@media (width>=720px){.wedding-storybook .wbook-accounts{grid-template-columns:1fr 1fr}}.wedding-storybook .wbook-account{background:var(--wbook-paper);border:1px solid var(--wbook-border);text-align:center;padding:22px 24px}.wedding-storybook .wbook-account-side{font-family:var(--wbook-font-display);color:var(--wbook-apricot);margin-bottom:6px;font-size:12px;font-style:italic}.wedding-storybook .wbook-account-role{font-family:var(--wbook-font-script);color:var(--wbook-text);margin-bottom:6px;font-size:22px}.wedding-storybook .wbook-account-bank{color:var(--wbook-text);font-size:13px}.wedding-storybook .wbook-account-number{color:var(--wbook-text-soft);margin-top:2px;font-size:12px}.wedding-storybook .wbook-footer{text-align:center;border-top:1px solid var(--wbook-border);padding:80px 24px 56px}.wedding-storybook .wbook-footer-end{font-family:var(--wbook-font-script);color:var(--wbook-apricot);margin-bottom:14px;font-size:clamp(48px,8vw,76px);line-height:.95}.wedding-storybook .wbook-footer-sub{font-family:var(--wbook-font-display);color:var(--wbook-text-soft);margin-bottom:32px;font-size:14px;font-style:italic}.wedding-storybook .wbook-footer-disclaimer{text-align:center;max-width:580px;color:var(--wbook-text-soft);border-top:1px solid var(--wbook-border);margin:24px auto 0;padding-top:22px;font-size:11px;line-height:1.85}
