:root{color-scheme:dark;--ink:#f3f6f5;--blue:#00ffa3;--line:#29352f;--muted:#adbcb5;--paper:#0b100e;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:var(--ink);background:#080b09;font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:1rem;line-height:1.75}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}p,h1,h2,h3{margin-top:0;overflow-wrap:anywhere;word-break:keep-all}p{color:var(--muted)}.preview-note{background:#0b1711;color:#b8d1c5;text-align:center;padding:10px 20px;font-size:.875rem;border-bottom:1px solid var(--line)}.header,main,footer{width:100%;max-width:460px;margin:auto;padding-inline:22px}.header{min-height:104px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-weight:800;letter-spacing:-.045em;font-size:1.375rem;color:var(--blue)}nav{display:flex;gap:30px;flex-wrap:wrap}nav a{padding:10px 0;border-bottom:2px solid transparent}nav a[aria-current]{color:var(--blue);border-color:var(--blue)}.hero{padding:60px 0 50px;border-top:1px solid var(--line)}.home-hero{padding:90px 0 76px}.eyebrow,.number{display:block;color:var(--blue);font-size:.875rem;font-weight:650;letter-spacing:.12em;margin-bottom:24px}h1{font-size:2.35rem;line-height:1.16;letter-spacing:-.065em;max-width:960px;margin-bottom:32px;white-space:pre-line}h2{font-size:1.9rem;line-height:1.4;letter-spacing:-.04em}h3{font-size:1.35rem;letter-spacing:-.03em}.lead{font-size:1.125rem;max-width:640px;margin-bottom:30px}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:14px 24px;background:var(--blue);color:#001c11;font-weight:750;border:1px solid var(--blue);border-radius:6px;text-align:center}.button:hover{background:#74ffcc}.button.secondary{background:transparent;color:var(--ink);border-color:#56655e}.button.secondary:hover{background:#15231c}.button:disabled{opacity:.5;cursor:not-allowed}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.hero-note{margin:24px 0 0;font-size:.875rem}.section{padding:48px 0;border-top:1px solid var(--line)}.section-heading{margin-bottom:26px}.number{margin-bottom:10px}.course-grid,.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.course-panel{padding:32px;background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--blue);border-radius:6px}.course-panel h3{font-size:1.65rem;margin-bottom:6px}.course-panel>.eyebrow{margin-bottom:12px}.course-panel>p{font-size:.875rem}.course-list{list-style:none;padding:0;margin:26px 0 0}.course-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-top:1px solid var(--line);flex-wrap:wrap}.course-list li div{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.course-list span{color:var(--muted)}.course-list b{font-size:1.5rem;font-variant-numeric:tabular-nums}.course-list small{font-size:.875rem;margin-left:5px;font-weight:400}.policy{margin-top:24px;padding:26px;border-left:2px solid var(--blue);background:var(--paper)}.policy p{margin:10px 0 0}.policy .contact-links{margin-top:24px}.facts{margin:32px 0}.facts>div{padding:24px 0;border-block:1px solid var(--line)}.overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.overview-item,.cards li{padding:28px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.overview-item:hover{border-color:var(--blue)}.text-link{color:var(--blue);text-decoration:underline;text-underline-offset:5px}.empty{display:flex;align-items:center;gap:20px;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:6px;margin:24px 0}.empty p{margin:0}.marker{width:24px;height:2px;background:var(--blue);flex-shrink:0}.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cards a{display:block}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.contact-note{font-size:.875rem;margin-top:20px}.article{max-width:760px;min-height:240px}.byline{font-size:.875rem}footer{margin-top:40px;padding-block:32px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}.footer-brand{font-weight:750;color:var(--ink)}footer p{margin:12px 0}.text-button{border:0;padding:10px 0;background:none;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.skip{position:fixed;top:8px;left:12px;padding:10px 20px;background:#000;z-index:10;transform:translateY(-180%)}.skip:focus{transform:translateY(0)}#age-status:empty{display:none}.age-locked,.age-locked body{overflow:hidden}.age-locked #site-content{visibility:hidden;pointer-events:none}#age-gate{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:32px 24px;overflow:auto;overscroll-behavior:contain;background:#000;color:var(--ink);z-index:100}#age-gate[open]{display:flex}#age-gate[hidden]{display:none}#age-gate::backdrop{background:#000}.age-panel{width:100%;max-width:412px;margin:auto;text-align:center;padding:24px 0}.age-mark{display:flex;width:86px;height:86px;border:2px solid var(--blue);color:var(--blue);border-radius:50%;align-items:center;justify-content:center;font-size:2.5rem;font-weight:750;margin:0 auto 28px}.age-panel h2{font-size:1.65rem;margin-bottom:26px}.age-panel p{margin-bottom:18px}.age-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px}.age-actions .button{width:100%;flex-wrap:wrap}.age-actions span{font-size:.875rem;font-weight:500}.age-panel noscript p{font-size:.875rem;margin-top:24px}.header,main,footer{padding-inline:22px}.header{display:block;padding-block:22px;min-height:auto}nav{gap:26px;margin-top:12px}nav a{min-height:44px}.home-hero,.hero{padding:44px 0}.overview,.cards,.course-grid,.facts{grid-template-columns:1fr}.overview-item,.cards li,.course-panel{padding:24px}.contact-links{flex-direction:column}.contact-links .button{flex-wrap:wrap}.empty{padding:24px;align-items:flex-start}.section{padding:34px 0}.policy{padding:22px}.age-panel{padding:8px 0}.age-panel h2{font-size:1.65rem}.age-mark{width:70px;height:70px;font-size:2rem;margin-bottom:22px}@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,color .15s}}

/* One mobile-width surface at every viewport size. */
#site-content{width:100%;max-width:460px;min-height:100dvh;margin-inline:auto;background:#000;box-shadow:0 0 0 1px #17231c}h2{font-size:1.65rem}.preview-note{padding-inline:16px}.skip{left:max(12px,calc(50% - 218px))}.age-panel{max-width:412px}@media(max-width:350px){h1{font-size:2.05rem}.header,main,footer{padding-inline:18px}.course-panel{padding:20px}}

/* Compact mobile editorial sections. */
.home-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 28px}.home-shortcuts a{padding:12px 5px;min-height:48px;border:1px solid var(--line);border-radius:8px;text-align:center;font-size:.875rem;background:var(--paper)}.home-shortcuts a:hover{border-color:var(--blue)}.section{scroll-margin-top:20px}.section>p,.reading-block p{line-height:1.9}.service-summary{margin:24px 0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.service-summary>div{padding:16px 18px;background:var(--paper)}.service-summary>div+div{border-top:1px solid var(--line)}.service-summary dt{font-size:.875rem;color:var(--blue);margin-bottom:4px}.service-summary dd{margin:0;font-size:1rem}.reading-block{margin-top:28px}.reading-block h3{margin-top:24px;font-size:1.125rem}.outline-link{display:block;text-align:center;min-height:48px;padding:12px 18px;border:1px solid var(--line);border-radius:6px;color:var(--blue);margin-top:22px}.area-labels{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.area-labels span{border:1px solid #2c6650;border-radius:24px;padding:6px 20px;color:var(--blue);font-size:.875rem}.booking-steps{list-style:none;margin:0;padding:0}.booking-steps li{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.step-number{color:var(--blue);font-size:.875rem;flex:0 0 26px;padding-top:3px}.booking-steps h3{font-size:1.125rem;margin-bottom:10px}.booking-steps p{margin:0}.preparation-list{padding-left:22px;color:var(--muted)}.preparation-list li{margin:12px 0}.policy h3{font-size:1.125rem;margin:0}.faqs details{border-bottom:1px solid var(--line)}.faqs summary{cursor:pointer;padding:20px 24px 20px 0;position:relative;list-style:none;font-size:1rem;font-weight:600}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'+';position:absolute;right:2px;top:20px;color:var(--blue)}.faqs details[open] summary:after{content:'−'}.faqs details>div{padding:0 0 16px}.faqs details p{margin:0;line-height:1.9}.faqs summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px}

/* Requested Todagi section geometry; independent brand palette and content. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}#site-content{padding-bottom:calc(12rem + env(safe-area-inset-bottom))}.header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;padding:14px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.logo-slot{display:block;width:110px;min-height:44px;flex:0 1 110px}.header nav{display:flex;flex-wrap:wrap;margin:0 0 0 auto;gap:16px;font-size:.875rem}.header nav a{white-space:nowrap;padding:10px 0}main{padding:0}.hero,.home-hero{padding:28px 24px 20px;border-top:0;background:#090e0b}.home-hero .eyebrow{margin-bottom:0}.hero-mood{margin:22px 0 10px;font-size:1rem;color:#b4d0c2}.home-hero h1{font-size:1.8rem;line-height:1.5;font-weight:600;margin:12px 0 14px;letter-spacing:-.04em}.home-hero .lead,.hero-copy,.hero-location{font-size:1rem;line-height:1.85;margin:12px 0}.hero-foot{display:flex;justify-content:space-between;gap:10px;font-size:.75rem;letter-spacing:.06em;color:var(--muted);margin-top:24px}.media-slot{display:grid;place-items:center;text-align:center;border:1px dashed #345244;background:#080c0a;color:#8da398;border-radius:10px;padding:20px;font-size:.875rem;overflow-wrap:anywhere}.media-brand{aspect-ratio:16/9;margin-top:18px}.media-profile{aspect-ratio:3/4;max-width:290px;width:100%;margin:22px auto}.media-pricing,.media-regions{aspect-ratio:900/1599;width:100%;margin:22px 0}.service-strip{display:flex;flex-wrap:wrap;justify-content:space-around;gap:8px;padding:14px 12px;border-bottom:1px solid var(--line);background:#102019;font-size:.875rem;color:#bfdfcf}.trust-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 12px;gap:8px;text-align:center}.trust-summary strong,.trust-summary span{display:block}.trust-summary strong{color:var(--blue);font-size:1rem}.trust-summary span{font-size:.875rem;color:var(--muted);margin-top:5px}.home-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 12px 0;gap:8px;margin:0}.home-shortcuts a{border:0;background:none;padding:4px 0;font-size:.875rem}.shortcut-symbol{display:grid;place-items:center;width:48px;height:48px;border:1px solid #345244;border-radius:14px;background:#0d1712;color:var(--blue);margin:0 auto 8px;font-size:1.4rem}.section{margin-top:32px;padding:0 16px;border-top:0}.section+.section{border-top:8px solid #0b100d;padding-top:30px}.section-heading{margin-bottom:14px}.section h2{font-size:1.4rem;font-weight:650;line-height:1.5;margin-bottom:0}.section h3{font-size:1.05rem}.section .number{font-size:.75rem;margin-bottom:7px}.section p{line-height:1.9}.text-links,.guide-hub{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.text-links a,.guide-hub a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.course-group{margin-top:24px}.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:12px}.course-panel{padding:18px 14px;border-radius:12px}.course-panel h3{font-size:1rem}.course-duration{font-size:2.5rem!important;line-height:1.4!important;color:var(--ink);margin:20px 0 12px}.course-duration small,.course-price small{font-size:.875rem;margin-left:5px}.course-price{font-size:1.3rem;color:var(--blue);font-weight:650;border-top:1px solid var(--line);padding-top:14px;margin:0;overflow-wrap:anywhere}.region-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.region-list article{display:flex;align-items:center;gap:12px;padding:18px 14px;flex-wrap:wrap}.region-list article+article{border-top:1px solid var(--line)}.region-list h3,.region-list p{margin:0}.region-list p,.region-tag,.region-number{font-size:.875rem;color:var(--muted)}.region-tag{margin-left:auto;color:var(--blue);border:1px solid #345244;border-radius:20px;padding:3px 8px}.inquiry-list{padding:0;list-style:none}.inquiry-list li{padding:14px 0;border-bottom:1px solid var(--line)}.inquiry-list span{display:block;font-size:.875rem;color:var(--muted)}footer{margin-top:38px;padding:28px 20px;background:#090e0b}.contact-dock{position:fixed;z-index:20;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:460px;padding:10px 10px calc(12px + env(safe-area-inset-bottom));background:#07110bf5;border-top:1px solid #345244}.contact-dock>p{text-align:center;font-size:.875rem;color:var(--blue);margin:0 0 8px}.contact-dock .contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.contact-dock .button{font-size:.875rem;padding:10px 4px;min-width:0;min-height:56px;overflow-wrap:anywhere;line-height:1.5}.contact-dock .button span{display:none}.contact-dock .button.kakao-inquiry{background:var(--blue);color:#001c11;border-color:var(--blue)}@media(max-width:350px){.logo-slot{width:76px;flex-basis:76px}.header{padding-inline:16px;gap:8px}.header nav{gap:12px}.home-hero h1{font-size:1.7rem}}

/* Shared secondary-page hierarchy and navigation. */
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;padding:22px 16px 0;font-size:.875rem;color:var(--muted);margin:0}.breadcrumbs a{color:var(--blue)}.subpage-heading{padding:28px 16px 0}.subpage-heading .eyebrow{font-size:.75rem;margin-bottom:12px}.subpage-heading h1{font-size:1.8rem;line-height:1.5;margin:0 0 16px;letter-spacing:-.04em}.subpage-heading .lead{font-size:1rem;margin-bottom:0}.answer-summary{padding:20px;border:1px solid #345244;border-radius:10px;background:#0b1710;margin-bottom:26px}.answer-summary strong{color:var(--blue)}.answer-summary p{margin:8px 0 0}.blog-section{margin-top:32px}.blog-section h2{margin-bottom:16px}.article-media{aspect-ratio:16/9;margin:24px 0}.article-toc{display:flex;flex-direction:column;gap:10px;padding:20px 0;border-block:1px solid var(--line)}.article-toc a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.related-links{display:flex;flex-direction:column;margin-top:28px}.draft-label{display:inline-block;font-size:.875rem;padding:4px 10px;border:1px solid var(--line);border-radius:5px;margin-bottom:18px;color:var(--muted)}.blog-toc{padding:0;list-style:none;margin:22px 0}.blog-toc li{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.blog-toc h3{margin:0 0 8px}.blog-toc p{margin:0;font-size:.875rem}.blog-toc a{color:var(--ink)}.guide-cards article{padding:22px 18px;border:1px solid var(--line);background:var(--paper);border-radius:10px;margin-top:18px}.cost-list{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:20px 0}.cost-list>div{padding:16px}.cost-list>div+div{border-top:1px solid var(--line)}.cost-list strong,.cost-list span{display:block}.cost-list strong{font-size:1rem}.cost-list span{color:var(--blue);margin-top:6px}.footer-links{display:flex;flex-wrap:wrap;gap:8px 14px;margin:24px 0}.footer-links a{font-size:.875rem;line-height:1.8;text-decoration:underline;text-underline-offset:3px}.prose .blog-section a{color:var(--blue)}.section:empty{display:none}
.region-search{margin:24px 0}.region-search label{display:block;margin-bottom:8px}.region-search input{width:100%;min-height:48px;border:1px solid #345244;border-radius:6px;padding:12px;background:#080d0a;color:var(--ink);font:inherit}.region-search input:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.region-search p{font-size:.875rem;margin-top:10px}.region-hub [hidden]{display:none}
.footer-contact{font-style:normal;margin:16px 0;line-height:1.9}.footer-contact a{color:var(--blue)}.footer-groups{margin:24px 0}.footer-groups section{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.footer-groups h2{font-size:1rem;color:var(--ink);margin-bottom:12px}.footer-groups .footer-links{margin:0 0 12px;gap:10px 16px}
.record-list{display:grid;gap:18px;margin-top:20px}.record-list article{padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.record-list .text-link{display:inline-block;margin:8px 16px 0 0}.home-profile-grid{display:grid;gap:20px}.home-profile-grid article{border:1px solid var(--line);border-radius:10px;padding:16px}.home-profile-grid .media-profile{margin-top:0}

/* 번호별 관리사 사진 목록: 상세 페이지로 이동하는 일반 링크 */
.therapist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.therapist-card{display:block;min-width:0;padding:0 0 16px;border:1px solid #253b32;border-radius:12px;overflow:hidden;text-decoration:none}.therapist-card .media-profile{width:100%;max-width:none;margin:0;border:0;border-radius:0;aspect-ratio:3/4}.therapist-card h2,.therapist-card h3{font-size:1rem;margin:16px 12px 8px}.therapist-card .text-link{display:block;margin:0 12px;font-size:.8rem}.therapist-card:focus-visible{outline:3px solid #00FFA3;outline-offset:4px}.therapist-detail-photo{width:100%;max-width:none}.profile-checks{margin:28px 0}.profile-checks ul{padding-left:22px}@media(max-width:350px){.therapist-grid{gap:10px}}

.therapist-card .media-profile{background:#080b09;padding:0;display:flex;align-items:center;justify-content:center}
.therapist-card img{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:3/4}
.therapist-detail-media{margin:0 0 28px}.therapist-detail-media video,.therapist-detail-media img{display:block;width:100%;height:auto;max-height:75svh;object-fit:contain;background:#080b09;border-radius:12px}.therapist-detail-media figcaption{font-size:.8rem;color:#abb9b1;margin-top:10px}

/* Preserve the top edge, removing 168px from the 848px frame in page playback. */
.therapist-detail-media video.video-trim-bottom{aspect-ratio:464/680;height:auto;max-height:none;object-fit:cover;object-position:center top}

.site-banner{margin:22px 0;width:100%}.site-banner img{display:block;width:100%;height:auto;border-radius:10px}.banner-main{margin:18px 0 0}.banner-note{font-size:.875rem;color:var(--muted)}

/* Compact footer: brand, service summary, divider, operating details, policy links. */
footer{padding:27px 20px 10px;font-size:.75rem;line-height:1.65}
footer .footer-brand{display:inline-block;margin-bottom:11px;font-size:1.3rem;letter-spacing:-.04em;color:var(--ink)}
footer p{margin:0}footer p+p{margin-top:4px}
.footer-rule{height:1px;background:var(--line);margin:18px 0}
.footer-copyright{display:block;font-size:.65rem;letter-spacing:.04em;margin-top:18px}
footer .footer-links{justify-content:center;gap:8px 14px;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
footer .footer-links a{font-size:.75rem;text-decoration:none;padding:4px 0}
footer .footer-links a:hover{color:var(--blue)}
footer .text-button{display:block;margin:8px auto 0;font-size:.75rem}

/* Selection stays available in editable fields. */
body{-webkit-user-select:none;user-select:none}
input,textarea,[contenteditable]:not([contenteditable="false"]){-webkit-user-select:text;user-select:text}
img{-webkit-user-drag:none}

.logo-slot{display:flex;align-items:center}.logo-slot img{display:block;width:100%;height:auto}footer .footer-brand{display:block;width:200px;max-width:100%}footer .footer-brand img{display:block;width:100%;height:auto}

/* Blend the footer into the black page and give the header logo more room. */
footer{background:#000;border-top:0}
.header{padding-inline:16px;gap:8px}
.header .logo-slot{width:clamp(120px,calc(100vw - 200px),200px);flex:0 0 clamp(120px,calc(100vw - 200px),200px)}
.header nav{gap:12px;font-size:.75rem}

/* Shift both brand images left without moving navigation or footer text. */
.header .logo-slot img,footer .footer-brand img{position:relative;left:-14px}

.review-author{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.review-author strong{color:var(--blue)}.review-author span{font-size:.75rem;color:var(--muted)}.record-body{white-space:pre-line}

.record-image{display:block;max-width:100%;width:auto;height:auto;margin:16px auto;object-fit:contain}

.contact-dock .contact-links.has-kakao-reviews{grid-template-columns:repeat(4,minmax(0,1fr))}

.therapist-topic{display:block;margin:0 12px 10px;font-size:.8rem;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
