/* E's contact choices: a small desktop dock and a thumb-friendly mobile bar. */
.e-contact-dock{position:fixed;z-index:90;right:24px;bottom:24px;display:flex;flex-direction:column;width:136px;overflow:hidden;border:1px solid #cfc1b1;border-radius:13px;background:#fffaf3;box-shadow:0 4px 20px #24180f1a;transition:opacity .18s,visibility .18s}
.e-contact-dock>a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 10px;color:#292722;font-size:12px;font-weight:600;white-space:nowrap}
.e-contact-dock svg{width:20px;height:20px;flex:0 0 20px}
.e-contact-dock .e-dock-kakao{background:#fee500;color:#191919}
.e-contact-dock .e-dock-phone:hover{background:#f2ece3}
.e-contact-dock .e-dock-kakao:hover{background:#f6dc00}
.e-contact-dock a:focus-visible{outline:2px solid #70422a;outline-offset:-4px}
.theme-e:has(.mobile-nav.is-open) .e-contact-dock{visibility:hidden;pointer-events:none}
.theme-e .back-to-top{bottom:196px}
.theme-e .e-consult-contacts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;width:100%;max-width:520px;margin-top:28px}
.theme-e .e-consult-contacts>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;min-width:0;min-height:94px;margin:0;padding:16px 18px;border:1px solid #ffffff50;border-radius:10px;text-decoration:none}
.theme-e .e-consult-contacts>a>span:not(.sr-only){font-size:12px;line-height:1.5;opacity:.85}
.theme-e .e-consult-contacts .e-phone{width:auto;color:#fffaf3}
.theme-e .e-consult-contacts strong{font-size:clamp(17px,1.5vw,21px);line-height:1.5;font-weight:550;white-space:nowrap;letter-spacing:-.03em}
.theme-e .e-consult-contacts .e-phone strong{font-size:clamp(17px,1.5vw,21px)}
.theme-e .e-consult-contacts .e-phone:hover{background:#ffffff0a}
.theme-e .e-consult-contacts .e-kakao-consult{background:#fee500;border-color:#fee500;color:#191919}
.theme-e .e-consult-contacts .e-kakao-consult:hover{background:#f6dc00;border-color:#f6dc00}
.e-kakao-consult:focus-visible{outline:2px solid #fffaf3;outline-offset:4px}
@media(min-width:761px){
 .theme-e.e-at-footer .e-contact-dock{opacity:0;visibility:hidden;pointer-events:none}
 .theme-e.e-motion .e-story-footer{right:max(5%,184px)}
}
@media(max-width:760px){
 .theme-e{--e-contact-bar-height:calc(58px + env(safe-area-inset-bottom,0px));padding-bottom:var(--e-contact-bar-height)}
 html:has(.theme-e){scroll-padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
 .e-contact-dock{left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:auto;padding-bottom:env(safe-area-inset-bottom,0px);border:0;border-top:1px solid #d5cabb;border-radius:0;background:linear-gradient(90deg,#fffaf3 0 33.333%,#edf8f0 33.333% 66.666%,#fee500 66.666%);box-shadow:0 -3px 14px #24180f12}
 .e-contact-dock>a{min-width:0;min-height:57px;padding:14px 8px;font-size:13px;gap:6px}.e-contact-dock svg{width:18px;height:18px;flex-basis:18px}
 .theme-e .back-to-top{bottom:calc(var(--e-contact-bar-height) + 12px)}
 .theme-e .toast{bottom:calc(var(--e-contact-bar-height) + 12px)}
 .theme-e.e-motion .e-stage{height:calc(100svh - 104px - var(--e-contact-bar-height));min-height:min(520px,calc(100svh - 104px - var(--e-contact-bar-height)))}
 .theme-e .e-consult-contacts{margin-top:24px;gap:10px}
 .theme-e .e-consult-contacts>a{min-height:90px;padding:14px 12px;gap:7px}
 .theme-e .e-consult-contacts strong,.theme-e .e-consult-contacts .e-phone strong{font-size:clamp(16px,4.4vw,19px)}
 .theme-e .e-consult-contacts>a>span:not(.sr-only){font-size:11px}
}
@media(prefers-reduced-motion:reduce){.e-contact-dock{transition:none}}

/* Naver Place is a verified clinic listing; booking remains on the existing channels. */
.e-contact-dock .e-dock-naver{background:#edf8f0;color:#165e35;border-block:1px solid #d4e8d9}
.e-contact-dock .e-dock-naver:hover{background:#e0f2e5}
.theme-e .e-consult-contacts>.e-phone{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;min-height:70px}
.theme-e .e-consult-contacts>.e-naver-consult{background:#edf8f0;border-color:#edf8f0;color:#165e35}
.theme-e .e-consult-contacts>.e-naver-consult:hover{background:#e0f2e5;border-color:#e0f2e5}
.e-naver-consult:focus-visible{outline:2px solid #fffaf3;outline-offset:4px}
@media(max-width:760px){.e-contact-dock .e-dock-naver{border-block:0;border-inline:1px solid #d4e8d9}.theme-e .e-consult-contacts>.e-phone{min-height:66px}.theme-e .e-consult-contacts>a:not(.e-phone) strong{font-size:clamp(14px,3.8vw,18px)}}
@media(max-width:360px){.e-contact-dock>a{font-size:12px;gap:5px;padding-inline:6px}.e-contact-dock svg{width:16px;height:16px;flex-basis:16px}}
