@charset "UTF-8";
:root{color-scheme:dark;--bg:#111113;--surface:#1b1b1f;--pink:#f1bfd0;--text:#f5f2f3;--muted:#aaa5ac;--line:#303035}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-bottom:130px}body{margin:0;background:#050505;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;font-size:14px;line-height:1.6;word-break:keep-all;overflow-wrap:break-word}a{color:inherit;text-decoration:none}button{font:inherit}svg{width:22px;height:22px;flex-shrink:0}h1,h2,h3,p{margin:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid var(--pink);outline-offset:5px}a:hover{color:var(--pink)}.page{width:100%;max-width:460px;margin:0 auto;background:var(--bg);min-height:100vh;padding-bottom:calc(128px + env(safe-area-inset-bottom));position:relative}.skip{position:absolute;top:-100px;z-index:5;padding:12px;background:var(--pink);color:#171317}.skip:focus{top:0}header{height:76px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #252528}.brand{display:flex;align-items:center;gap:8px;font-size:27px;font-weight:800;letter-spacing:-1.5px}.brand svg{color:var(--pink);width:25px;height:25px}.brand-dot{color:var(--pink)}header nav{display:flex;gap:20px;font-size:12px;color:#c9c3ca}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:422px;padding:35px 24px 19px;background:radial-gradient(ellipse at 94% 58%,#4c313e55,transparent 57%),linear-gradient(125deg,#202023,#171519 68%,#262027)}.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:1.8px;color:#d2b7c3}.eyebrow>span{width:5px;height:5px;background:var(--pink);border-radius:50%}.hero h1{font-size:43px;font-weight:400;line-height:1.28;letter-spacing:-2px;margin-top:24px}.hero em{font-style:normal;color:var(--pink)}.hero-copy{margin-top:17px;color:#c4bcc4;line-height:1.8;font-size:13px}.hero-location{display:flex;align-items:center;gap:5px;margin-top:20px;font-size:11px;color:#ded2d9}.hero-location svg{width:14px;height:14px}.hero-link{display:inline-flex;align-items:center;gap:23px;margin-top:21px;padding:10px 15px;border:1px solid #71606b;border-radius:5px;font-size:12px;color:var(--pink);background:#241d24aa}.hero-link svg{width:17px}.hero-foot{display:flex;justify-content:space-between;margin-top:28px;font-size:8px;letter-spacing:1.5px;color:#968691}.hero-art{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.hero-art i{position:absolute;right:-91px;top:59px;width:220px;height:300px;border:1px solid #d6a2b92b;border-radius:50%;transform:rotate(-33deg)}.hero-art i:nth-child(2){right:-72px;top:69px;width:210px;height:295px}.hero-art i:nth-child(3){right:-52px;top:80px;width:200px;height:290px}.service-strip{display:flex;justify-content:space-around;gap:6px;background:#211d22;border-bottom:1px solid #342b32;padding:14px 12px;color:#e3ccd7;font-size:11px}.service-strip span+span{border-left:1px solid #55434f;padding-left:16px}.shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:24px 16px 2px;gap:10px}.shortcuts a{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:11px;color:#d8d3d9}.shortcuts a>span{display:grid;place-items:center;width:51px;height:51px;border:1px solid #333038;border-radius:17px;background:linear-gradient(145deg,#28242b,#1d1b20);color:var(--pink)}.shortcuts a:hover>span{border-color:var(--pink)}.section{margin-top:32px;padding:0 16px;scroll-margin-top:20px}.section+.section{border-top:8px solid #0c0c0e;padding-top:30px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.section-head>svg{color:#a08393}.kicker{font-size:9px;letter-spacing:2px;color:var(--pink);margin-bottom:7px;font-weight:600}h2{font-size:22px;letter-spacing:-.9px;font-weight:650;line-height:1.4}.micro{font-size:8px;color:#968992;letter-spacing:1px}.section-intro{color:var(--muted);font-size:12px;margin-top:7px}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.course-card{padding:18px 16px 17px;border-radius:12px;border:1px solid #39343c;background:linear-gradient(145deg,#25232a,#1c1b20)}.course-card.rose{border-color:#614451;background:linear-gradient(145deg,#382830,#211c22)}.course-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#dfd3dd}.course-top svg{width:15px;height:15px;color:#a996a6}.duration{font-size:43px;line-height:1.3;font-weight:300;letter-spacing:-1.5px;margin-top:17px}.duration small{font-size:14px;letter-spacing:0;margin-left:5px;color:#b4aab3}.course-sub{font-size:10px;color:#aea2af;margin-top:4px}.price{border-top:1px solid #ffffff13;margin-top:21px;padding-top:15px;font-size:24px;letter-spacing:-1px;font-weight:650;color:var(--pink);white-space:nowrap}.price small{font-size:12px;font-weight:400;margin-left:4px}.extension{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;padding:15px 0 13px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}.extension b{font-weight:500;color:#ded5de;margin-left:4px}.extension strong{font-weight:500;color:var(--text)}.note{font-size:11px;color:#aaa1ac;line-height:1.9;margin-top:12px}.note p+p{margin-top:3px}.region-list{margin-top:21px;border:1px solid #302c33;border-radius:12px;overflow:hidden;background:#1a191d}.region{display:flex;align-items:center;gap:15px;padding:18px 16px}.region+.region{border-top:1px solid #302c33}.region-number{font-size:10px;color:#9f7c8d}.region h3{font-size:16px;font-weight:600}.region h3 span{font-size:8px;color:#958b98;letter-spacing:1.3px;margin-left:7px;font-weight:400}.region p{color:#ada3b0;font-size:11px;margin-top:3px}.region-tag{margin-left:auto;white-space:nowrap;font-size:9px;color:#d6b1c2;border:1px solid #57434e;border-radius:20px;padding:3px 8px}.small-note{color:#a59ba7;font-size:10px;margin-top:12px}.steps{list-style:none;padding:0;margin:23px 0 0}.steps li{display:flex;gap:15px;position:relative;padding-bottom:21px}.steps li:not(:last-child):before{content:"";position:absolute;left:15px;top:33px;bottom:0;border-left:1px solid #42313d}.step-number{display:grid;place-items:center;width:31px;height:31px;flex-shrink:0;border:1px solid #55404e;border-radius:50%;font-size:10px;color:var(--pink);background:#241d25}.steps h3{font-size:13px;font-weight:500;margin-top:3px}.steps p{font-size:11px;color:#aaa0ad;margin-top:4px}.payment-note{display:flex;align-items:center;gap:12px;border-radius:10px;background:#282029;padding:16px;color:var(--pink)}.payment-note strong{font-size:12px;font-weight:500}.payment-note p{font-size:10px;color:#bbacba;margin-top:3px}.faqs{margin-top:19px}.faqs details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0;font-size:12px}summary::-webkit-details-marker{display:none}summary b{font-weight:500;color:var(--pink);margin-right:7px}.plus{color:#ac98a8;font-size:19px;line-height:1}.faqs details[open] .plus{transform:rotate(45deg)}.faqs details>p{font-size:12px;color:#bbb0be;line-height:1.9;padding:0 20px 19px}footer{margin-top:38px;padding:27px 20px 10px;background:#0e0e10;color:#8e8792;font-size:10px}.footer-brand{font-size:23px;letter-spacing:-1px;color:#c4b6c3;font-weight:700;display:inline-block;margin-bottom:11px}footer p+p{margin-top:4px}.footer-rule{height:1px;background:#27232b;margin:18px 0}footer small{display:block;font-size:8px;letter-spacing:1px;margin-top:18px}.contact-bar{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:460px;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #39303a;background:#171418f5;backdrop-filter:blur(16px)}.contact{display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;border-radius:9px;border:1px solid #53434f;background:#2a242d;color:#d9c4d2;font-size:13px;font-weight:600;padding:7px}.contact.telegram{background:#e8bccc;color:#32252e;border-color:#e8bccc}.contact small{display:block;font-size:9px;font-weight:400;margin-top:1px}.contact:disabled{cursor:not-allowed;opacity:1}.contact svg{width:19px;height:19px}@media(max-width:350px){.hero h1{font-size:38px}.course-card{padding:14px 11px}.price{font-size:21px}.service-strip{font-size:10px}.service-strip span+span{padding-left:8px}.hero{padding-left:20px;padding-right:20px}.contact{font-size:12px;gap:6px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Content additions retain the existing shell, palette and course cards. */
.hero .hero-mood{margin-top:20px;color:#d2bdc9;font-size:15px;letter-spacing:-.3px}.hero h1{font-size:29px;font-weight:500;line-height:1.5;letter-spacing:-1.1px;margin-top:12px;text-wrap:balance}.hero-copy{font-size:13px}.prose>p:not(.kicker){font-size:14px;line-height:1.9;color:#c0b6c3;margin-top:14px}.text-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:17px}.text-links a,.prose>p a{color:var(--pink);text-decoration:underline;text-underline-offset:4px;font-size:13px}.checklist{padding-left:19px;margin:20px 0 0}.checklist li{padding-left:3px;margin-bottom:17px}.checklist li::marker{color:var(--pink)}.checklist strong{font-weight:500;font-size:14px}.checklist p{font-size:13px;color:#b7acbc;line-height:1.85;margin-top:4px}.course-top h3{font:inherit}.course-explanation{margin-top:15px}.cost-formula{background:#211d24;border-radius:8px;padding:12px;margin-top:12px!important;color:#dbc6d4}.cost-formula strong{font-weight:500}.region-list+.small-note{font-size:13px;line-height:1.9}.steps p{font-size:13px;line-height:1.85}.steps h3{font-size:14px}.payment-note{margin-top:19px}.inquiry-list{list-style:none;padding:0;margin:18px 0 0}.inquiry-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.inquiry-list span{display:block;color:#b8a8b8;font-size:12px;margin-top:4px}.faqs summary{font-size:13px}.faqs details>p{font-size:13px}.section-intro{font-size:13px}

/* Local image slots and neutral, unverified-profile placeholder. */
.visual-frame{position:relative;isolation:isolate;aspect-ratio:16/9;width:100%;overflow:hidden;border:1px solid #5c43534d;border-radius:12px;margin:24px 0;background:radial-gradient(ellipse at 65% 32%,#9b66734a,transparent 58%),linear-gradient(135deg,#19171e,#3a2935 65%,#211c25)}.visual-frame img,.therapist-photo img{display:block;width:100%;height:100%;object-fit:cover}.image-position-center{object-position:center}.image-position-top{object-position:top}.image-position-bottom{object-position:bottom}.visual-orbits{position:absolute;inset:0;z-index:-1}.visual-orbits i{position:absolute;width:70%;height:85%;left:40%;top:20%;border:1px solid #e9b6cd40;border-radius:50%;transform:rotate(-35deg)}.visual-orbits i:nth-child(2){left:33%;top:10%}.visual-orbits i:nth-child(3){left:26%;top:0}.visual-spark{position:absolute;top:18%;left:12%;font-size:32px;color:#e5b9cb}.visual-sign{position:absolute;left:12%;bottom:25%;font-size:23px;font-weight:300;letter-spacing:6px;color:#edd8e3}.visual-caption{position:absolute;left:12%;bottom:16%;font-size:7px;letter-spacing:2px;color:#c4acbc}.visual-service{background:radial-gradient(ellipse at 20% 80%,#76586555,transparent 60%),linear-gradient(125deg,#262329,#19171d)}.visual-service .visual-orbits{transform:rotate(180deg)}.visual-service .visual-sign{left:auto;right:9%;font-size:20px}.visual-service .visual-caption{left:auto;right:9%}.visual-service .visual-spark{left:auto;right:10%}.therapist-list{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:22px}.therapist-card{width:100%;max-width:290px;margin:0 auto;border:1px solid #39313c;border-radius:12px;overflow:hidden;background:#1d1a21}.therapist-photo{width:100%;aspect-ratio:3/4;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#51404c55,transparent 70%),linear-gradient(155deg,#2c2730,#1c1a20);display:grid;place-items:center}.neutral-silhouette{width:72%;height:80%;fill:#a691a32b;stroke:#b99cad40;stroke-width:1}.portrait-label{position:absolute;bottom:19px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:3px;color:#a593a4}.therapist-copy{padding:18px}.therapist-copy h3{font-size:17px;font-weight:500}.therapist-copy p{font-size:13px;line-height:1.85;color:#bfb2c3;margin-top:8px;white-space:pre-line}.preparing-label{font-size:10px;color:var(--pink);letter-spacing:.5px}

.profile-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 14px;margin-top:22px;border-radius:9px;background:var(--pink);color:#30242d;font-size:13px;font-weight:600;text-align:center}.profile-button:hover{background:#f7cede;color:#30242d}.profile-button.secondary{background:#2a222c;color:var(--pink);border:1px solid #59434e}.profile-card-link{display:block;color:inherit}.profile-card-link:hover{color:inherit;background:#26202b}.profile-card-link:focus-visible{outline-offset:-3px}.card-more{display:block;color:var(--pink);font-size:12px;margin-top:15px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;padding:20px 16px 0;font-size:11px;color:#b9a7b8}.breadcrumbs a{color:var(--pink)}.profile-page h1{font-size:27px;font-weight:500;letter-spacing:-1px;line-height:1.5}.profile-subheading{margin-top:28px}.profile-page .section{margin-top:24px}

.profile-checks{margin:24px 0;padding:18px;border:1px solid #39313c;border-radius:12px;background:#211c25}.profile-checks h2{font-size:17px}.profile-checks ul{list-style:none;padding:0;margin:15px 0 0}.profile-checks li+li{margin-top:14px}.profile-checks strong{font-size:13px;font-weight:500;color:var(--pink)}.profile-checks p{font-size:12px;color:#bfb2c3;line-height:1.85;margin-top:3px}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-grid .therapist-copy{padding:12px}.profile-grid .therapist-copy h2,.profile-grid .therapist-copy h3{font-size:15px}.profile-grid .therapist-copy p{font-size:12px}

.therapist-copy h2{font-size:17px;font-weight:500;letter-spacing:normal}
.profile-meta{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:10px 0 0}.profile-meta li{padding:4px 8px;border:1px solid #543d4b;border-radius:999px;color:#e6bdce;background:#2b2028;font-size:10px;line-height:1.4}.profile-reviews{margin-top:32px;padding:30px 16px 0;border-top:8px solid #0c0c0e}.profile-review-list{display:grid;gap:12px;margin-top:18px}.profile-review-card{padding:16px;border:1px solid #3a3039;border-radius:12px;background:linear-gradient(145deg,#241f25,#19171b)}.profile-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.profile-review-head strong{font-size:12px;font-weight:600;color:#e9dce5}.profile-review-head span{white-space:nowrap;color:#f3c64b;font-size:11px;letter-spacing:1px}.profile-review-card p{margin-top:9px;color:#bfb3bd;font-size:12px;line-height:1.85}.profile-reviews h2{font-size:22px}
.therapist-photo img{object-fit:contain;background:#121014}
.profile-video-frame{aspect-ratio:2/3;background:#080808}.profile-video-figure{width:100%;height:100%;margin:0;position:relative}.profile-video{display:block;width:100%;height:100%;object-fit:cover;background:#080808}.profile-video-figure figcaption{position:absolute;left:10px;right:10px;bottom:48px;padding:6px 9px;border-radius:8px;background:#09070bcc;color:#fff;font-size:11px;line-height:1.4;text-align:center;pointer-events:none}.therapist-card-video{max-width:320px}
.hero-banner .visual-frame{margin:18px 0 0;border-radius:10px;box-shadow:0 16px 40px #0008}.hero-banner+.hero-mood{margin-top:22px}.therapist-card-compact .therapist-copy{padding:12px 13px 14px}.therapist-card-compact .therapist-copy h2,.therapist-card-compact .therapist-copy h3{font-size:15px}.therapist-card-compact .card-more{margin-top:7px;font-size:11px}.home-profile-grid{margin-top:18px}
.visual-pricing,.visual-regions{aspect-ratio:900/1599;margin:20px 0;border-color:#805064}.visual-pricing img,.visual-regions img{object-fit:contain;background:#120e11}

.region-hub-links{display:grid;gap:10px;margin-top:20px}.region-hub-links a{display:block;padding:17px;border:1px solid #443440;border-radius:10px;background:#211c25}.region-hub-links strong{font-size:15px;color:var(--pink);font-weight:500}.region-hub-links span{display:block;font-size:12px;margin-top:5px;color:#c0b0c2}.prose .source-note{font-size:11px;color:#a899ab}

/* New regional navigation: retain existing palette and 460px page layout. */
.region-explore-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-bottom:16px}.region-explore-links a{display:flex;align-items:center;min-height:44px;padding:6px 0;overflow-wrap:anywhere}

/* District directory: names are information, not links to unpublished pages. */
.dong-search-controls{margin-top:20px}.dong-search-controls label{display:block;margin-bottom:8px}.dong-search-controls input{width:100%;min-width:0;min-height:44px;border:1px solid #59434e;border-radius:8px;background:#1b1b1f;color:#fff;padding:10px;font:inherit}.dong-search-controls button{min-height:44px;margin-top:8px;padding:8px 14px;background:#2a222c;color:var(--pink);border:1px solid #59434e;border-radius:8px;cursor:pointer}.dong-list{list-style:none;padding:0;margin:20px 0}.dong-list li{padding:16px 12px;margin:10px 0;background:#1b1b1f;border:1px solid #39343c;border-radius:10px}.dong-list h3{font-size:15px}.dong-list p{margin-top:7px;color:#c0b6c3;font-size:13px;overflow-wrap:anywhere}[hidden]{display:none!important}

/* Region review cards: data is rendered at build time, never shipped as raw JSON. */
.review-list { display: grid; gap: 16px; margin-top: 20px; }
.review-card { min-width: 0; padding: 20px; border: 1px solid #393239; border-radius: 18px; background: #1b191c; overflow-wrap: anywhere; }
.review-card h3 { font-size: 15px; color: #f1ecef; }
.review-date { color: #b8b0b7; font-size: 12px; }
.review-body { white-space: pre-wrap; color: #e4dde2; font-size: 14px; line-height: 1.85; }
.review-stars { color: #f4ca55; font-size: 19px; letter-spacing: 2px; }

/* Main-page guide hub connects the highest-authority page to reviewed supporting content. */
.guide-hub-grid{display:grid;gap:11px;margin-top:20px}.guide-hub-card{padding:16px;border:1px solid #39343c;border-radius:12px;background:linear-gradient(145deg,#25232a,#1c1b20)}.guide-hub-card h3{font-size:15px;font-weight:600;color:#eadfe7}.guide-hub-card nav{display:grid;margin-top:8px}.guide-hub-card a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #ffffff12;color:#cdbdca;font-size:12px;line-height:1.55}.guide-hub-card a:first-child{border-top:0}.guide-hub-card a span{color:var(--pink)}

/* Supplied brand assets and blog artwork keep their intrinsic proportions. */
.site-logo-link{width:184px;min-width:184px;margin-left:-40px;line-height:0}.site-logo{display:block;width:184px;height:auto}.blog-image{margin:22px 0 28px;border:1px solid #4a3542;border-radius:12px;overflow:hidden;background:#090709}.blog-image img{display:block;width:100%;height:auto;object-fit:contain;background:#090709}.blog-image figcaption{padding:10px 12px;color:#bcaebb;background:#19151a;font-size:11px;line-height:1.7}.blog-section+.blog-image{margin-top:30px}.blog-section h2{margin-top:28px}.blog-section p{font-size:14px;line-height:1.9;color:#c0b6c3;margin-top:14px}.blog-section ul{padding-left:20px;color:#c0b6c3}.blog-section li+li{margin-top:8px}#payment h3{margin-top:24px;font-size:16px;color:#eadfe7}
