/* Shared roles: display, page, section, subheading, body, label, caption,
   number and dock. The existing Noto Sans / editorial serif palette remains. */
:root {
 --pm-type-page:600 clamp(32px,4vw,52px)/1.25 "Noto Sans KR",sans-serif;
 --pm-type-section:500 clamp(28px,3vw,44px)/1.35 "Noto Sans KR",sans-serif;
 --pm-type-subheading:600 20px/1.5 "Noto Sans KR",sans-serif;
 --pm-type-caption:400 14px/1.6 "Noto Sans KR",sans-serif;
 --pm-type-number:500 clamp(30px,2.8vw,42px)/1.15 Georgia,serif;
 --pm-weight-heading:500;
 --pm-content-width:1400px;
 --pm-section-space:clamp(56px,7vw,104px);
}
.planme-hero__copy .planme-hero-title {font:var(--pm-type-display)!important;letter-spacing:var(--pm-type-tracking)!important;color:inherit;margin:0;word-break:keep-all;text-wrap:balance;}
.planme-page-hero h1 {font:var(--pm-type-page)!important;letter-spacing:var(--pm-type-tracking)!important;}
.pm-editorial h2,.pm-editorial .pm-treatment-visual__copy h3,.pm-lift-body-title {font:var(--pm-type-section)!important;letter-spacing:var(--pm-type-tracking)!important;word-break:keep-all;text-wrap:balance;}
.pm-editorial h3 {font:var(--pm-type-subheading);letter-spacing:var(--pm-type-tracking);}
.pm-editorial p:not(.pm-kicker):not(.planme-kicker),.pm-editorial li {font:var(--pm-type-body);letter-spacing:var(--pm-type-tracking);word-break:keep-all;overflow-wrap:break-word;}
.pm-editorial .pm-kicker,.pm-editorial .planme-kicker,.pm-treatment-visual__copy>span {font:var(--pm-type-caption)!important;letter-spacing:.1em!important;}
.pm-treatment-catalog .pm-treatment-visual {grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:32px;min-height:520px;}
.pm-treatment-visual__symbol {display:none!important;}
.pm-treatment-catalog .pm-treatment-visual__copy {max-width:620px;}
.pm-treatment-catalog .pm-treatment-visual__points {width:100%;}
.pm-treatment-visual__points i,.pm-catalog-hero__steps i,.pm-catalog-index span,.pm-lift-nav a span {font:var(--pm-type-label)!important;letter-spacing:.02em!important;white-space:nowrap;color:#d8bea0;}
.pm-treatment-visual__points span {font:var(--pm-type-body)!important;letter-spacing:var(--pm-type-tracking)!important;}
.pm-type-grid>article>span,.pm-compare-grid>article>span,.pm-program-standard__steps article>span {font:var(--pm-type-number)!important;letter-spacing:0!important;color:#947653;}
.pm-program-standard__steps article>span {color:#ddc4a5;}
.pm-type-grid h3 {margin-top:48px;}
.pm-type-grid article {min-height:280px;}
.pm-editorial .pm-section-heading {gap:32px;}
.pm-section-heading>p:last-child {max-width:680px;text-align:left;}
.pm-treatment-catalog .pm-catalog-hero,.pm-treatment-catalog .pm-catalog-intro,.pm-treatment-catalog .pm-program-standard {width:min(var(--pm-content-width),calc(100% - 80px));max-width:var(--pm-content-width);margin-inline:auto;box-sizing:border-box;}
.pm-aftercare {box-shadow:0 0 0 100vmax var(--pm-sand,#a18b73);clip-path:inset(0 -100vmax);}
.pm-lift-body-title {margin:0 0 26px;color:#fff;}
.pm-lift-nav a {font:var(--pm-type-label)!important;letter-spacing:var(--pm-type-tracking)!important;min-width:0;}
.pm-editorial summary small {font:var(--pm-type-caption)!important;}
@media(max-width:767px){
 .pm-treatment-catalog .pm-catalog-hero,.pm-treatment-catalog .pm-catalog-intro,.pm-treatment-catalog .pm-program-standard {width:calc(100% - 32px);}
 .pm-treatment-catalog .pm-treatment-visual {min-height:0;padding:32px 24px;gap:28px;}
 .pm-treatment-catalog .pm-treatment-visual__copy {max-width:none;}
 .pm-treatment-catalog .pm-treatment-visual__image {opacity:.4;}
 .pm-treatment-visual__points span {min-height:64px!important;}
 .pm-type-grid article {min-height:0;}
 .pm-type-grid h3 {margin-top:24px;}
 .pm-editorial .pm-section-heading {gap:20px;}
 .pm-editorial .pm-section-heading p {text-align:left;}
}

/* Decorative painting must not create a horizontal page scroll range. */
html {overflow-x:clip;}
@media(prefers-reduced-motion:reduce){
 .planme-hero__slide {transition:opacity .45s ease!important;}
 .planme-hero__copy>* {transform:none!important;}
 .planme-hero__slide.is-active.is-copy-ready .planme-hero__copy>* {opacity:1;}
}
@media(max-width:900px){
 .planme-hero__slide--2 .planme-panel__media,.planme-hero__slide--3 .planme-panel__media {height:27%;}
 .planme-hero__slide--2 .planme-hero__copy,.planme-hero__slide--3 .planme-hero__copy {top:calc(27% + var(--pm-header-h) + var(--pm-top-h));bottom:152px;gap:10px;}
 .planme-hero__slide--2 .planme-hero__copy>* , .planme-hero__slide--3 .planme-hero__copy>* {margin-top:0;margin-bottom:0;}
 .planme-hero__slide--2 .planme-hero__copy .planme-text-link,.planme-hero__slide--3 .planme-hero__copy .planme-text-link {padding:6px 0;min-height:0;}
}
@media(max-width:900px) and (max-height:740px){
 .planme-hero__slide--2 .planme-kicker,.planme-hero__slide--3 .planme-kicker {display:none;}
}

.pm-point-section__visual {overflow:hidden;}
.planme-page-main {overflow-x:clip;}
.pm-point-section__visual.pm-point-design::after {right:0!important;}
/* Keep previous/next beside the pagination, clear of the corner caption. */
.planme-hero__controls {left:20px;right:20px;justify-content:center;gap:24px;}
@media(max-width:767px){.planme-hero__controls {gap:18px;}}

/* Visit information: one map, compact contacts and legible schedule numerals. */
@font-face{font-family:Pretendard;src:url("../images/Pretendard-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
:root{--pm-type-schedule:600 18px/1.5 Pretendard,"Noto Sans KR",sans-serif;--pm-type-phone:600 clamp(22px,2vw,28px)/1.35 Pretendard,"Noto Sans KR",sans-serif}
.pm-visit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);border:1px solid var(--pm-line);background:#fff;align-items:stretch}
.pm-visit-hours{padding:36px;min-width:0;border-right:1px solid var(--pm-line)}
.pm-visit-section h3{font:var(--pm-type-subheading);color:var(--pm-navy);margin:0 0 20px}
.pm-visit-hours ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--pm-line)}
.pm-visit-hours li{display:grid;grid-template-columns:1fr 1.2fr auto;align-items:center;gap:10px;min-height:60px;padding:12px 0;border-bottom:1px solid var(--pm-line)}
.pm-visit-hours li strong{font:var(--pm-type-label);color:var(--pm-navy)}
.pm-visit-hours time{font:var(--pm-type-schedule);font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap;color:var(--pm-navy)}
.pm-visit-hours small{font:var(--pm-type-caption);color:#806448;white-space:nowrap}
.pm-editorial .pm-visit-note{font:var(--pm-type-caption);margin:22px 0 0;color:#666b7c}
.pm-visit-contact{min-width:0;display:flex;flex-direction:column}
.pm-visit-map{position:relative;display:block;overflow:hidden;background:#ecebe8;height:280px;color:var(--pm-navy)}
.pm-visit-map>img{width:100%;height:100%;object-fit:cover;display:block}
.pm-visit-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);background:var(--pm-navy);color:#fff;padding:8px 12px;font:var(--pm-type-label);white-space:nowrap}
.pm-visit-pin:after{content:"";position:absolute;top:100%;left:calc(50% - 6px);border:6px solid transparent;border-top-color:var(--pm-navy)}
.pm-visit-map-link{position:absolute;right:12px;bottom:12px;padding:8px 12px;background:white;font:var(--pm-type-caption);box-shadow:0 1px 8px #0001}
.pm-visit-details{padding:26px 30px 30px;display:grid;grid-template-columns:1fr;gap:18px}
.pm-visit-details h3{margin:0 0 8px}
.pm-editorial .pm-visit-address p{margin:0;color:var(--pm-navy);font:var(--pm-type-body)}
.pm-editorial .pm-visit-address .pm-visit-subway{margin-top:6px;font:var(--pm-type-caption);color:#666b7c}
.pm-visit-phone{display:flex;align-items:center;gap:20px}
.pm-visit-phone>span{font:var(--pm-type-label);color:#666b7c}
.pm-visit-phone>a{font:var(--pm-type-phone);color:var(--pm-navy);text-decoration:none}
.pm-visit-booking{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pm-visit-booking a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px;font:var(--pm-type-label);text-decoration:none;transition:filter .2s;transform:none!important}
.pm-visit-booking img{width:24px;height:24px;object-fit:contain;flex-shrink:0}
.pm-visit-booking .pm-visit-kakao{background:#fee500;color:#191919}
.pm-visit-booking .pm-visit-naver{background:#03c75a;color:#fff}
.pm-visit-naver img{filter:brightness(0) invert(1)}

.pm-visit-booking a:focus-visible,.pm-visit-map:focus-visible{outline:3px solid var(--pm-navy);outline-offset:4px}
@media(max-width:1100px){.pm-visit-hours{padding:28px 24px}.pm-visit-hours li{grid-template-columns:1fr 1.2fr}.pm-visit-hours small{grid-column:2;margin-top:-6px}.pm-visit-details{padding:24px}.pm-visit-booking{grid-template-columns:1fr}}
@media(max-width:767px){.pm-visit-grid{grid-template-columns:1fr}.pm-visit-hours{border-right:0;border-bottom:1px solid var(--pm-line);padding:26px 22px}.pm-visit-hours li{min-height:54px}.pm-visit-map{height:260px}.pm-visit-details{padding:24px 22px}.pm-visit-booking{grid-template-columns:1fr 1fr;gap:8px}.pm-visit-booking a{gap:7px;padding:10px 6px}.pm-visit-booking a>span{display:none}}

.pm-visit-hours li{grid-template-columns:minmax(88px,1fr) minmax(126px,1.2fr) 60px}
.pm-visit-map{height:auto;aspect-ratio:504/310}
.pm-visit-map>img{height:auto;object-fit:contain}
@media(min-width:1025px) and (max-width:1500px){.pm-visit-section{padding-right:92px}}
@media(max-width:1100px){.pm-visit-hours li{grid-template-columns:minmax(88px,1fr) minmax(126px,1.2fr)}}

.pm-visit-live-map{width:100%;height:360px;background:#f1f1ec;overflow:hidden}.pm-visit-live-map iframe{display:block;width:100%;height:360px;border:0}
.pm-parking-renew{padding:64px 0;background:transparent}
.pm-parking-renew header{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.pm-parking-renew header p{margin-bottom:0;max-width:560px}.pm-parking-renew h2{margin:12px 0 0}
.pm-parking-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pm-parking-routes figure{margin:0;min-width:0}.pm-parking-photo{position:relative;aspect-ratio:282/323;overflow:hidden;background:#e7e6e1}
.pm-parking-photo img{position:absolute!important;width:309.22%!important;max-width:none!important;height:132.2%!important;top:-21.36%;left:0;object-fit:fill!important;transform:none!important}
.pm-parking-photo--1 img{left:-104.61%}.pm-parking-photo--2 img{left:-209.22%}
.pm-parking-routes figcaption{display:flex;gap:16px;align-items:baseline;padding:20px 0}.pm-parking-routes figcaption>span{font:var(--pm-type-number);color:#a88e6e}.pm-parking-routes h3{font:var(--pm-type-subheading);margin:0;color:var(--pm-navy)}
.pm-parking-call{padding-top:22px;border-top:1px solid var(--pm-line);margin:12px 0 0}.pm-parking-call a{margin-left:16px;color:var(--pm-navy);font:var(--pm-type-label)}
@media(max-width:767px){.pm-parking-renew header{display:block}.pm-parking-renew header>p{margin-top:20px}.pm-parking-routes{grid-template-columns:1fr;gap:24px}.pm-parking-photo{aspect-ratio:282/323;max-height:none}.pm-parking-call a{display:block;margin:10px 0 0}}

/* Shared subpage canvas: backgrounds bleed, reading edges stay consistent. */
:root{--pm-page-gutter:112px;--pm-reading-width:1400px}
.planme-page-main .planme-page-hero{display:flex!important;align-items:center!important;justify-content:center!important;height:340px!important;padding:40px var(--pm-page-gutter)!important;background-position:center!important}
.planme-page-main .planme-page-hero--clinic{background-image:url("../images/clinic-space-20260818/planme-clinic-space-22.jpg")!important}
.planme-page-main .planme-page-hero--signature{background-image:url("../images/clinic-space-20260818/planme-clinic-space-05.jpg")!important}
.planme-page-main .planme-page-hero--programs{background-image:url("../images/clinic-space-20260818/planme-clinic-space-07.jpg")!important}
.planme-page-main .planme-page-hero--community{background-image:url("../images/clinic-space-20260818/planme-clinic-space-27.jpg")!important}
.planme-page-main .planme-page-hero:after{background:rgba(15,21,49,.55)!important}
.planme-page-hero__inner{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important;width:100%!important;max-width:1400px!important;text-align:center!important;z-index:2}
.planme-page-hero__inner h1{margin:12px 0 20px!important;color:white}
.planme-page-hero__mark,.planme-page-hero__index{display:none!important}
.pm-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;color:#fff;font:var(--pm-type-caption)}
.pm-breadcrumb a{color:inherit;text-decoration:none}.pm-breadcrumb [aria-hidden]{opacity:.5}
.planme-page-main>.planme-page-content{width:calc(100% - 2 * var(--pm-page-gutter));max-width:var(--pm-reading-width);margin-inline:auto;box-sizing:border-box}
.planme-page-main>.planme-page-content:has(>.pm-editorial){width:100%;max-width:none;padding-inline:0}
.pm-editorial{width:100%;max-width:none}
.pm-editorial>section{width:100%!important;max-width:none!important;margin-inline:0!important;box-sizing:border-box;padding-inline:max(var(--pm-page-gutter),calc((100% - var(--pm-reading-width))/2))!important}
.pm-lift-chapter__inner,.pm-source-detail__pair,.pm-catalog-program__inner{box-sizing:border-box;max-width:var(--pm-reading-width);margin-inline:auto}
.planme-naver-blog{padding-left:0!important;padding-right:0!important;width:100%!important;box-sizing:border-box}
.planme-naver-blog__header,.planme-naver-blog__grid{width:100%!important;max-width:none!important;margin-inline:0!important}
.pm-community-intro:after{display:none}
/* No repeated open boxes on treatment banners. */
.pm-editorial .pm-treatment-visual__points{border:0!important;background:rgba(12,18,48,.38);gap:0;backdrop-filter:blur(5px)}
.pm-editorial .pm-treatment-visual__points>span{border:0!important;min-height:90px;gap:18px;padding:24px!important}
.pm-editorial .pm-treatment-visual__points i{border:0!important;color:#dfc8a8!important}
/* A visual explanation, then open typographic lists and photographic index. */
.pm-lift-v2 .pm-lift-approach{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:56px}
.pm-lift-v2 .pm-lift-approach:before{background:url("../images/skin-layers-diagram.svg") center/contain no-repeat!important;min-height:400px!important;margin-top:36px!important;box-shadow:none!important}
.pm-lift-v2 .pm-lift-layers{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:36px;border:0}
.pm-lift-v2 .pm-lift-layers article{display:block;border:0!important;padding:0!important;min-height:0;background:none!important;box-shadow:none!important}
.pm-lift-v2 .pm-lift-layers article:after,.pm-lift-v2 .pm-lift-layers article>span:after{display:none}
.pm-lift-v2 .pm-lift-layers h3{margin:14px 0 10px}.pm-lift-v2 .pm-lift-layers article p:not(:empty){margin:0;font:var(--pm-type-body)}
.pm-lift-v2 .pm-section-heading{grid-template-columns:1fr 1fr;gap:48px;border:0;align-items:center}.pm-lift-v2 .pm-section-heading>p{text-align:left}
.pm-lift-v2 .pm-lift-index{border:0}.pm-lift-v2 .pm-lift-index>div{grid-template-columns:repeat(3,1fr);gap:18px;background:none;padding:0;margin-top:36px}
.pm-lift-v2 .pm-lift-index a{grid-column:auto!important;min-height:220px;padding:28px;color:#fff!important;border:0}
.pm-lift-v2 .pm-lift-index a:before{opacity:1;background-size:cover;transform:none}
.pm-lift-v2 .pm-lift-index a:after{opacity:1;background:linear-gradient(0deg,rgba(10,17,46,.88),rgba(10,17,46,.24))}
.pm-lift-v2 .pm-lift-index a>*{color:white!important}
.pm-lift-v2 .pm-lift-benefits article{border:0!important;background:none!important;padding:22px 0;box-shadow:none!important}
.pm-lift-v2 .pm-lift-facts{border:0!important;gap:24px;background:rgba(150,139,117,.08);padding:28px}
.pm-lift-v2 .pm-lift-facts article{border:0!important;background:none!important;min-height:0;padding:12px}
.pm-lift-v2 .pm-lift-facts article strong{margin-top:12px}
.pm-lift-v2 .pm-lift-chapter__inner>header{border:0!important}.pm-lift-v2 .pm-lift-device{box-shadow:none;background:transparent}
.pm-lift-v2 .pm-lift-detail{border:0!important}.pm-lift-v2 .pm-lift-detail li{border:0!important;padding-block:15px}
.pm-page-enter{transition-delay:var(--pm-reveal-delay,0ms)}
@media(max-width:1024px){:root{--pm-page-gutter:40px}.pm-lift-v2 .pm-lift-approach{column-gap:28px}.pm-lift-v2 .pm-lift-layers{gap:24px}.pm-lift-v2 .pm-lift-index a{padding:22px;min-height:190px}}
@media(max-width:767px){:root{--pm-page-gutter:20px}.planme-page-main .planme-page-hero{height:280px!important;padding:32px 20px!important}.pm-breadcrumb{gap:7px}.pm-lift-v2 .pm-lift-approach{grid-template-columns:1fr}.pm-lift-v2 .pm-lift-approach:before{grid-column:1;grid-row:2;min-height:260px!important;margin-top:20px!important}.pm-lift-v2 .pm-lift-layers{grid-column:1;grid-row:3;margin-top:20px;gap:26px 20px}.pm-lift-v2 .pm-section-heading{grid-template-columns:1fr;gap:20px}.pm-lift-v2 .pm-lift-index>div{grid-template-columns:1fr 1fr;gap:12px}.pm-lift-v2 .pm-lift-index a{padding:18px;min-height:170px}.pm-lift-v2 .pm-lift-facts{padding:20px;gap:16px}.pm-editorial .pm-treatment-visual__points>span{min-height:70px;padding:18px!important}}

/* Notice pages share the same hero and content grid. */
.pm-notice-page.planme-page-main{padding:0 0 80px!important}.pm-notice-page .pm-notice-header,.pm-notice-page .pm-notice-content{width:calc(100% - 2 * var(--pm-page-gutter));max-width:var(--pm-reading-width);margin-inline:auto;box-sizing:border-box}.pm-notice-page .pm-notice-header{padding:56px 0 24px}

