/* Comfortable Korean reading rhythm and unobtrusive floating contact. */
body{line-height:1.75;letter-spacing:-.018em;padding-bottom:110px}
p{word-break:keep-all;overflow-wrap:anywhere;text-wrap:pretty}
h1,h2,h3{word-break:keep-all;text-wrap:balance}
.hero .intro{font-size:16px;line-height:2;margin-block:24px}.hero .micro{line-height:1.9;margin-top:24px}
.section-head{gap:28px}.section-head p{max-width:36ch;line-height:1.9}
.program p{font-size:15px;line-height:1.95;margin-block:18px}.program li{font-size:14px;padding-block:5px}.program ul{padding-block:12px}
.service-price{font-family:inherit;font-variant-numeric:tabular-nums;font-size:46px;font-weight:650;letter-spacing:-.045em}.service-price span{font-family:inherit;line-height:1.8}
.questions details{padding-block:24px}.questions summary{line-height:1.65;padding-right:24px;font-weight:600}.questions p,.questions .reading-paragraph{font-size:15px;line-height:1.95;margin:16px 0 0;max-width:64ch;color:#675d59}.questions a{display:inline-block;margin-top:8px;text-underline-offset:5px}
.manual-payment{max-width:1200px;box-sizing:border-box;margin:80px auto;padding:56px;gap:48px;border:1px solid #e8ddd5;border-radius:28px;background:#f6f1ec;align-items:start;scroll-margin-top:112px}
.payment-heading h2{margin:20px 0 28px;line-height:1.4}.payment-label,.payment-caption{display:block}.payment-label{font-size:14px;color:#786860}.payment-total{display:block;font-size:34px;letter-spacing:-.04em;line-height:1.5;margin:10px 0 24px}.payment-total small{display:block;font-size:12px;letter-spacing:0;font-weight:400;color:#786860;margin-top:4px}.payment-caption{font-size:15px;line-height:1.9;color:#6e605b}.tax-note{display:inline-block;font-size:.85em;font-weight:400}
.payment-card{padding:32px;border-radius:20px;box-shadow:0 14px 36px #44332806}.payment-card>p{margin:14px 0}.payment-card .account-number{line-height:1.4;margin:20px 0 12px}.payment-small{margin-top:22px!important;padding-top:20px;border-top:1px solid #eee4dc}.payment-details{max-width:100%;border-top:1px solid #ddd0c7;padding-top:8px}.payment-details details{padding:24px 0}.payment-details details:first-child{border-top:0}.payment-details summary{line-height:1.7;padding-right:12px}.payment-details p{margin:18px 0 0;max-width:76ch;font-size:14px;line-height:1.95;color:#675b55}.payment-details ol{margin-top:22px;max-width:76ch}.payment-details li{padding-left:8px;margin:18px 0;line-height:1.95;font-size:14px}.payment-details li::marker{color:#8a5365;font-weight:600}
.contact-section{padding:48px;gap:40px}.contact-section .kakao-contact{background:#fffaf4}.kakao-contact .contact-icon{background:#eee3e5;color:#703446}.contact-options p{font-size:13px}.business-line{display:block;margin-top:12px}.footer-note{line-height:1.9!important}footer{padding-bottom:70px!important}
.floating-service{position:fixed;inset:0;z-index:80;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .35s ease,visibility .35s ease}.floating-service.is-visible{opacity:1;visibility:visible}.review-float,.dm-float{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));pointer-events:auto;transform:translateY(18px);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.is-visible .review-float,.is-visible .dm-float{transform:translateY(0)}
.review-float{left:28px;width:260px;box-sizing:border-box;padding:22px 24px;background:#fffdf9f5;backdrop-filter:blur(16px);border:1px solid #e9ddd5;border-radius:18px;box-shadow:0 10px 36px #42243212}.float-kicker{display:block;color:#976b7a;font-size:9px;letter-spacing:.15em;font-weight:600;margin-bottom:10px}.review-float strong{font-size:16px;font-weight:600}.review-float p{font-size:12px;line-height:1.9;color:#7b6c65;margin:10px 0 14px}.review-status{display:flex;gap:7px;align-items:center;color:#8a7872;font-size:10px}.review-status i{width:5px;height:5px;border-radius:50%;background:#b6a29b}.float-dismiss{position:absolute;right:7px;top:5px;border:0;background:transparent;color:#9b8981;font-size:21px;padding:6px;width:36px;height:36px}
.dm-float{right:28px}.dm-toggle{display:flex;align-items:center;gap:12px;min-height:58px;border:1px solid #ffffff24;border-radius:100px;padding:16px 23px;background:#6b3449;color:#fff;box-shadow:0 8px 30px #56263b24;font:600 14px/1.5 inherit;cursor:pointer}.dm-toggle svg{width:22px;height:22px}.dm-toggle-arrow{font-size:20px;font-weight:400;margin-left:6px}.dm-toggle:hover{background:#552538}.dm-panel{box-sizing:border-box;width:330px;max-width:calc(100vw - 32px);padding:28px;margin-bottom:14px;border-radius:22px;border:1px solid #e5d9d1;background:#fffdf9;box-shadow:0 18px 55px #4429371c;animation:dm-enter .22s ease}.dm-panel[hidden]{display:none}.dm-panel h2{font-size:21px;line-height:1.5;margin:8px 0 14px}.dm-panel p{font-size:13px;line-height:1.9;color:#75655e}.dm-account{font-size:14px;margin:22px 0;color:#703446}.dm-account small{display:block;margin-top:7px;font-size:11px;color:#8a7971}.dm-panel>a{display:block;padding:14px 12px;border-radius:10px;background:#703446;color:#fff;text-align:center;font-size:12px;text-decoration:none;min-height:44px;box-sizing:border-box}.dm-panel .dm-footnote{font-size:11px;margin:18px 0 0;color:#8a7971}.dm-toggle:focus-visible,.float-dismiss:focus-visible{outline:3px solid #b78598;outline-offset:4px}
.dm-float{display:flex;flex-direction:column;align-items:flex-end}.dm-toggle{font-family:inherit;font-size:14px;font-weight:600;line-height:1.5}.floating-service.panel-open .review-float{opacity:0;pointer-events:none}
.example-review{width:300px}.example-review .float-kicker{font-size:11px;letter-spacing:0;color:#703446;background:#f4e9ed;display:inline-block;padding:4px 8px;border-radius:5px;margin-right:10px}.example-review strong{display:block;font-size:14px}.example-review p{font-size:13px;line-height:1.85;min-height:72px}.review-next{background:none;color:#703446;border:0;padding:8px 0;min-height:36px;font:inherit;font-size:12px;margin-top:5px}.example-review .review-status{display:block}.example-review .float-dismiss{top:0;right:0}@media(max-width:700px){.example-review{width:205px;padding:15px}.example-review .float-kicker{font-size:9px;padding:3px 5px;margin-bottom:8px}.example-review strong{font-size:11px}.example-review p{font-size:11px;min-height:0;max-height:100px;overflow:auto;margin:9px 0}.example-review .review-status{font-size:9px;margin-top:9px}.review-next{font-size:10px;padding:4px 0;min-height:30px;margin-top:0}}
@keyframes dm-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1240px){.manual-payment{margin-inline:24px;padding:40px;gap:32px}}
@media(max-width:700px){.manual-payment{margin:48px 20px;padding:28px 22px;gap:28px;border-radius:20px;grid-template-columns:1fr}.payment-heading h2{font-size:28px}.payment-total{font-size:32px}.payment-card{padding:24px 20px}.payment-details{grid-column:auto}.payment-details summary{font-size:15px}.payment-details p,.payment-details li{font-size:13px;line-height:1.95}.contact-section{padding:30px 24px}.questions p,.questions .reading-paragraph{font-size:14px;line-height:1.95}.hero .intro{font-size:15px}.program p{font-size:14px}.review-float{left:12px;bottom:max(14px,env(safe-area-inset-bottom));width:185px;padding:14px 16px;border-radius:14px}.review-float .float-kicker{font-size:8px;margin-bottom:5px}.review-float strong{font-size:13px}.review-float p{font-size:10px;line-height:1.75;margin:7px 0 0}.review-status{display:none}.float-dismiss{right:2px;top:1px;width:30px;height:30px;font-size:18px}.dm-float{right:14px;bottom:max(16px,env(safe-area-inset-bottom))}.dm-toggle{padding:15px;min-width:56px;min-height:56px;justify-content:center}.dm-toggle span{display:none}.dm-toggle:after{content:'DM';font-size:11px}.dm-toggle{gap:7px}.dm-panel{padding:24px;width:300px}.dm-panel h2{font-size:20px}body{padding-bottom:145px}}
@media(prefers-reduced-motion:reduce){.floating-service,.review-float,.dm-float{transition:none}.dm-panel{animation:none}}
