
:root{--bg:#f6f7f2;--paper:#fff;--ink:#171a17;--muted:#6d756d;--line:#dfe4dc;--green:#159d18;--green-dark:#18351f;--yellow:#fff08a;--shadow:0 18px 50px rgba(25,45,29,.07);--radius:26px;--wrap:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",system-ui,-apple-system,sans-serif;font-size:18px;line-height:1.7;letter-spacing:-.015em}a{color:inherit;text-decoration:none}img,video{max-width:100%}.wrap{width:min(var(--wrap),calc(100% - 48px));margin:0 auto}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(var(--wrap),calc(100% - 48px));margin:0 auto}.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:22px}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--green);box-shadow:inset 0 0 0 8px rgba(255,255,255,.14)}.menu{display:flex;gap:26px;font-size:17px;font-weight:750}.menu a{padding:28px 0 24px;position:relative;color:#495149}.menu a.active{color:var(--ink)}.menu a.active:after{content:"";position:absolute;left:0;right:0;bottom:14px;height:3px;border-radius:999px;background:var(--green)}.mobile-nav-toggle{display:none;border:0;background:transparent;width:44px;height:44px}.mobile-nav-toggle span,.mobile-nav-toggle span:before,.mobile-nav-toggle span:after{content:"";display:block;width:24px;height:2px;background:var(--ink);position:relative;margin:auto}.mobile-nav-toggle span:before{position:absolute;top:-7px}.mobile-nav-toggle span:after{position:absolute;top:7px}.mobile-menu{display:none;background:#fff;border-bottom:1px solid var(--line)}.mobile-menu .wrap{display:grid;padding:8px 0 16px}.mobile-menu a{padding:13px 0;border-bottom:1px solid var(--line);font-weight:750}.mobile-menu.open{display:block}
.hero{position:relative;min-height:700px;display:flex;align-items:flex-end;overflow:hidden;background:#172319}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,28,17,.82) 0%,rgba(13,28,17,.56) 40%,rgba(13,28,17,.12) 75%)}.hero-content{position:relative;z-index:2;width:min(var(--wrap),calc(100% - 48px));margin:0 auto;padding:0 0 90px;color:#fff;max-width:860px}.hero-label,.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:10px;color:#52db5a;font-size:20px;font-weight:900}.hero-label:before,.eyebrow:before,.section-kicker:before{content:"";width:28px;height:3px;border-radius:999px;background:currentColor}.hero h1,.page-head h1,.principles-hero h1,.notes-hero h1,.ld-hero h1,.acute-hero h1,.treatment-detail-hero h1{font-size:clamp(48px,7vw,82px);line-height:1.06;letter-spacing:-.055em;margin:18px 0 22px}.hero p,.page-head p,.principles-hero p,.notes-hero p,.ld-hero p,.acute-hero p{font-size:24px;line-height:1.6;margin:0;color:rgba(255,255,255,.9);max-width:760px}
.section{padding:118px 0}.section.soft{background:var(--bg)}.section-title{font-size:clamp(38px,4.6vw,60px);line-height:1.14;letter-spacing:-.05em;margin:16px 0 20px}.section-lead{font-size:22px;color:var(--muted);max-width:760px;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.visual-card{border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line)}.visual-card img,.visual-card video{display:block;width:100%}.statement{font-size:clamp(36px,4.2vw,56px);line-height:1.26;letter-spacing:-.045em;margin:0}.marker{background:linear-gradient(transparent 58%,var(--yellow) 58%)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:14px;background:var(--green);color:#fff;font-weight:850;font-size:18px}
.home-intro{padding:118px 0}.home-intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:72px}.home-intro-side p{font-size:22px;color:var(--muted);margin:0 0 28px}.home-care{padding:112px 0;background:var(--bg)}.home-care-title-row{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.home-care-more{font-weight:850;color:var(--green)}.quick-disease{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.quick-disease a{display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:24px 26px;border-radius:18px;background:#fff;border:1px solid var(--line);font-size:23px;font-weight:850}.home-photo-dark{display:grid;grid-template-columns:1.05fr .95fr;min-height:560px}.home-photo-dark .photo-side{position:relative;overflow:hidden}.home-photo-dark .photo-side img{width:100%;height:100%;object-fit:cover}.home-photo-dark .dark-side{background:var(--green-dark);color:#fff;display:flex;align-items:center}.home-photo-dark .dark-inner{padding:72px}.home-photo-dark small{font-size:18px;font-weight:850;color:#65e36a}.home-photo-dark h2{font-size:54px;line-height:1.15;letter-spacing:-.05em;margin:14px 0 18px}.home-photo-dark p{font-size:23px;line-height:1.65;color:#e8efe9;margin:0}.home-ultrasound-teaser{padding:112px 0}.home-ultrasound-caption{padding:16px 20px 18px;border-top:1px solid var(--line)}.home-ultrasound-caption strong{display:block;font-size:17px}.home-ultrasound-caption span{font-size:15px;color:var(--muted)}.cta{padding:80px 0;background:var(--bg)}.cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--green-dark);color:#fff;border-radius:28px;padding:42px 46px}.cta-box h2{font-size:34px;margin:0 0 8px}.cta-box p{margin:0;color:#d9e5db}.cta-btn{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--green-dark);min-height:52px;padding:0 22px;border-radius:14px;font-weight:850}
.page-head,.principles-hero,.notes-hero,.ld-hero,.acute-hero,.treatment-detail-hero{padding:110px 0 92px;background:var(--green-dark);color:#fff}.page-head .eyebrow,.principles-hero .eyebrow,.notes-hero .eyebrow,.ld-hero .eyebrow,.acute-hero .eyebrow,.treatment-detail-hero .eyebrow{color:#65e36a}.page-head .wrap,.principles-hero .wrap,.notes-hero .wrap,.ld-hero .wrap,.acute-hero .wrap,.treatment-detail-hero .wrap{max-width:980px}
.principles-list{padding:42px 0 110px}.principle-row{display:grid;grid-template-columns:120px 1fr;gap:32px;padding:68px 0;border-bottom:1px solid var(--line)}.principle-row:last-child{border-bottom:0}.principle-no{font-size:64px;color:var(--green);font-weight:950;line-height:1}.principle-copy h2{font-size:clamp(32px,4vw,48px);line-height:1.25;margin:0 0 22px}.principle-copy p{font-size:21px;line-height:1.9;color:var(--muted);margin:0}
.directory,.treatment-directory{padding:92px 0 116px;background:var(--bg)}.directory-grid,.treatment-directory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.directory-link,.treatment-link{display:flex;align-items:center;justify-content:space-between;min-height:126px;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:20px}.directory-link strong,.treatment-link strong{font-size:25px}.directory-link small,.treatment-link small{display:block;color:var(--green);font-weight:850;margin-bottom:6px}.arrow{font-size:28px;color:var(--green);font-weight:900}
.treatment-detail{padding:94px 0 118px}.treatment-detail-inner{max-width:880px}.treatment-detail .lead{font-size:28px;line-height:1.7;color:var(--ink);font-weight:850}.treatment-detail p{font-size:21px;line-height:1.9;color:var(--muted)}.pharm-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:32px}.pharm-item{padding:24px;border-radius:18px;background:var(--bg);border:1px solid var(--line)}.pharm-item strong{display:block;font-size:20px}.back-link,.acute-back{display:inline-flex;margin-top:32px;color:var(--green);font-weight:850}
.director-section{padding:108px 0;background:var(--bg)}.director-heading{margin-bottom:36px}.director-heading h2{font-size:52px;margin:10px 0}.director-heading p{font-size:21px;color:var(--muted)}.director-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.director-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px}.director-card-wide{grid-column:1/-1}.director-card h3{font-size:24px;margin:0 0 18px}.director-card ul{list-style:none;padding:0}.director-card li{padding:7px 0;font-size:17px}.credential-highlight{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.credential-highlight strong{min-width:110px;font-size:22px;color:var(--green-dark)}.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}.ultrasound-section{padding:110px 0}.ultrasound-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}.ultrasound-main,.ultrasound-side{overflow:hidden;border-radius:22px;border:1px solid var(--line);background:var(--bg)}.ultrasound-main img{width:100%;height:100%;min-height:620px;object-fit:cover}.ultrasound-side img{width:100%;aspect-ratio:4/3;object-fit:cover}.ultrasound-caption{padding:24px}.ultrasound-caption strong{display:block;font-size:21px}.ultrasound-caption p{color:var(--muted);font-size:17px}
.notes-section{padding:90px 0 118px}.notes-empty{padding:56px;border-radius:24px;background:var(--bg);border:1px solid var(--line)}.notes-empty strong{display:block;font-size:28px;margin:12px 0 8px}
.ld-intro{padding:114px 0}.ld-intro-visual{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}.ld-illustration-wrap{background:var(--bg);border:1px solid var(--line);border-radius:28px;padding:26px}.ld-illustration-wrap img{width:100%;max-height:610px;object-fit:contain}.ld-illustration-caption{font-size:15px;color:var(--muted);text-align:center;margin-top:12px}.ld-intro-copy h2{font-size:52px;line-height:1.2;margin:0 0 22px}.ld-intro-copy p{font-size:22px;line-height:1.95;color:var(--muted)}.ld-video-section{padding:108px 0;background:var(--bg)}.ld-video-inner{max-width:900px}.ld-video-heading h2{font-size:48px;margin:12px 0}.ld-video-heading p{font-size:20px;color:var(--muted);margin:0 0 32px}.ld-video-frame{overflow:hidden;border-radius:26px;border:1px solid var(--line)}.ld-video-frame video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.ld-choose{padding:114px 0}.ld-choose .wrap{max-width:920px}.ld-choose h2{font-size:50px;margin:0 0 12px}.ld-choose>div>p{font-size:20px;color:var(--muted);margin:0 0 42px}.ld-choice-grid{display:grid;gap:18px}.ld-choice{padding:34px;border:1px solid var(--line);border-radius:22px}.ld-choice small{display:block;color:var(--green);font-weight:850}.ld-choice h3{font-size:34px;margin:8px 0}.ld-choice p{font-size:19px;color:var(--muted)}.go{color:var(--green);font-weight:850}.ld-more{padding:96px 0;background:var(--bg)}.ld-more h2{font-size:38px}.ld-more-card{display:flex;justify-content:space-between;padding:28px;background:#fff;border:1px solid var(--line);border-radius:18px}.article-end-credit{width:min(var(--wrap),calc(100% - 48px));margin:28px auto 72px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px;color:#909790;font-size:14px}.acute-body{padding:104px 0 118px}.acute-body .wrap{max-width:900px}.acute-lead{font-size:23px;line-height:1.9;color:var(--muted);margin:0 0 54px}.acute-treatment-grid{display:grid;gap:24px}.acute-card{padding:36px;border:1px solid var(--line);border-radius:24px}.acute-card h2{font-size:31px}.acute-card p{font-size:20px;color:var(--muted)}.acute-card-visual{display:grid;grid-template-columns:minmax(220px,.8fr) 1.2fr;gap:40px;align-items:center}.acute-card-art{background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:18px}.medical-figure-note{font-size:14px;color:var(--muted);text-align:center}
footer{padding:34px 0;background:#122517;color:#dce5dd;font-size:14px}
@media(max-width:900px){.menu{display:none}.mobile-nav-toggle{display:block}.split,.home-intro-grid,.home-photo-dark,.ld-intro-visual,.ultrasound-layout,.director-grid{grid-template-columns:1fr}.quick-disease,.directory-grid,.treatment-directory-grid,.pharm-list,.education-grid{grid-template-columns:1fr}.director-card-wide{grid-column:auto}.acute-card-visual{grid-template-columns:1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.hero{min-height:610px}.hero-content{width:calc(100% - 32px);padding-bottom:62px}.hero h1,.page-head h1,.principles-hero h1,.notes-hero h1,.ld-hero h1,.acute-hero h1,.treatment-detail-hero h1{font-size:44px}.hero p,.page-head p,.principles-hero p,.notes-hero p,.ld-hero p,.acute-hero p{font-size:20px}.home-photo-dark .dark-inner{padding:40px 28px}.home-photo-dark h2{font-size:40px}.principle-row{grid-template-columns:1fr}.cta-box{display:block;padding:32px 26px}.cta-btn{margin-top:22px}.ld-intro-copy h2,.ld-choose h2,.ld-video-heading h2{font-size:38px}.article-end-credit{width:calc(100% - 32px);justify-content:flex-start}}


/* v2: page transition spacing */
body:has(.director-section) .director-section,
body:has(.contact-section) .contact-section,
body:has(.location-section) .location-section,
body:has(.hours-section) .hours-section {
  padding-top: 112px;
}

/* 짙은 초록 hero 직후 콘텐츠가 붙어 보이지 않도록 */
.page-head + section,
.page-head + main > section {
  padding-top: 112px;
}

/* 대표원장 사진 */
.director-profile-photo{
  width:min(420px,100%);
  margin:0 0 42px;
  border-radius:24px;
  overflow:hidden;
  background:#eef2f3;
  border:1px solid var(--line);
}
.director-profile-photo img{
  display:block;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 18%;
}
@media(max-width:600px){
  body:has(.director-section) .director-section,
  body:has(.contact-section) .contact-section,
  body:has(.location-section) .location-section,
  body:has(.hours-section) .hours-section,
  .page-head + section{
    padding-top:76px;
  }
  .director-profile-photo{margin-bottom:30px}
}


/* v3 — 병원소개 가독성 */
.clinic-intro-section,
.clinic-waiting-section{
  padding:112px 0;
}
.clinic-waiting-section{background:var(--bg)}
.clinic-intro-section .text-block h2,
.clinic-waiting-section .text-block h2{
  font-size:clamp(38px,4.2vw,54px);
  line-height:1.2;
  letter-spacing:-.045em;
  margin:0 0 20px;
}
.clinic-intro-section .text-block p,
.clinic-waiting-section .text-block p{
  font-size:21px;
  line-height:1.85;
  color:var(--muted);
  margin:0;
}
.clinic-intro-section .photo,
.clinic-waiting-section .photo{
  overflow:hidden;border-radius:24px;border:1px solid var(--line);
}
.clinic-intro-section .photo img,
.clinic-waiting-section .photo img{
  display:block;width:100%;aspect-ratio:4/3;object-fit:cover;
}

/* 대표원장: 사진과 핵심 약력을 한 덩어리로 */
.director-profile-layout{
  display:grid;
  grid-template-columns:minmax(300px,390px) 1fr;
  gap:54px;
  align-items:stretch;
  margin:44px 0 28px;
}
.director-profile-photo{
  width:100%;
  margin:0;
  border-radius:24px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#eef2f3;
}
.director-profile-photo img{
  display:block;
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  object-position:center 16%;
}
.director-profile-summary{
  padding:42px;
  border-radius:24px;
  border:1px solid var(--line);
  background:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.profile-label{
  display:block;
  color:var(--green);
  font-size:17px;
  font-weight:900;
  margin-bottom:10px;
}
.profile-summary-block h3{
  font-size:36px;
  line-height:1.2;
  margin:0 0 12px;
  letter-spacing:-.04em;
}
.profile-summary-block p{
  font-size:20px;
  line-height:1.75;
  color:var(--muted);
  margin:0 0 28px;
}
.profile-credential-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.profile-credential-list>div{
  display:grid;
  grid-template-columns:130px 1fr;
  gap:18px;
  align-items:center;
  padding:17px 0;
}
.profile-credential-list>div+div{border-top:1px solid var(--line)}
.profile-credential-list strong{font-size:22px;color:var(--green-dark)}
.profile-credential-list span{font-size:18px;color:#424842}
.profile-societies{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:24px;
}
.profile-societies span{
  padding:8px 12px;
  border-radius:999px;
  background:var(--bg);
  border:1px solid var(--line);
  font-size:15px;
  color:#4e554e;
}
.director-grid-lower{margin-top:18px}
.education-stack{display:grid;gap:10px}
.education-stack span{
  padding:8px 0;
  border-bottom:1px solid var(--line);
  font-size:17px;
  line-height:1.55;
}
.education-stack span:last-child{border-bottom:0}

/* 진료시간: 이전 버전처럼 행 단위로 또렷하게 */
.schedule{
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  background:#fff;
}
.schedule-row{
  display:grid;
  grid-template-columns:190px 1fr;
  align-items:center;
  min-height:88px;
  padding:18px 30px;
  border-bottom:1px solid var(--line);
}
.schedule-row:last-child{border-bottom:0}
.schedule-day{font-size:23px;font-weight:850}
.schedule-time{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  font-size:21px;
}
.time-part{display:inline-flex;align-items:center;gap:9px}
.time-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  padding:5px 9px;
  border-radius:999px;
  background:var(--bg);
  color:var(--green-dark);
  font-size:15px;
  font-weight:850;
}
.time-value{font-weight:760}
.time-divider{color:#c0c5c0}
.schedule-note{margin:16px 0 0;color:var(--muted);font-size:17px}
.contact-stack{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.hours-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff}
.hours-card h3{font-size:26px;margin:0 0 10px}
.hours-card p{font-size:18px;color:var(--muted);margin:0}
.phone-big{font-size:38px;font-weight:900;color:var(--green);letter-spacing:-.03em}

/* 병원소개/오시는 길: hero와 본문 사이 충분한 호흡 */
body:has(.clinic-intro-section) .page-head + .clinic-intro-section,
body:has(.schedule) .page-head + section{
  padding-top:112px;
}

@media(max-width:900px){
  .director-profile-layout{grid-template-columns:1fr;gap:28px}
  .director-profile-photo{max-width:420px}
  .director-profile-photo img{min-height:0;aspect-ratio:4/5}
}
@media(max-width:600px){
  .clinic-intro-section,.clinic-waiting-section{padding:76px 0}
  .clinic-intro-section .text-block p,.clinic-waiting-section .text-block p{font-size:19px}
  .director-profile-summary{padding:28px 24px}
  .profile-summary-block h3{font-size:30px}
  .profile-summary-block p{font-size:18px}
  .profile-credential-list>div{grid-template-columns:1fr;gap:3px}
  .schedule-row{grid-template-columns:1fr;gap:10px;padding:20px}
  .schedule-time{font-size:19px}
  .contact-stack{grid-template-columns:1fr}
}


/* v4 — 병원소개 본문 타이포를 한 단계 크게 */
.clinic-intro-section .text-block h2,
.clinic-waiting-section .text-block h2{
  font-size:clamp(44px,4.8vw,62px);
  line-height:1.15;
  margin-bottom:26px;
}
.clinic-intro-section .text-block p,
.clinic-waiting-section .text-block p{
  font-size:24px;
  line-height:1.85;
  max-width:620px;
}
.profile-main-title{
  font-size:34px;
  line-height:1.3;
  letter-spacing:-.035em;
  margin:4px 0 22px;
}
.profile-career-list{
  list-style:none;
  padding:0;
  margin:0;
  border-top:1px solid var(--line);
}
.profile-career-list li{
  padding:13px 0;
  border-bottom:1px solid var(--line);
  font-size:19px;
  line-height:1.55;
}
.profile-career-list strong{color:var(--green-dark)}
@media(max-width:600px){
  .clinic-intro-section .text-block h2,
  .clinic-waiting-section .text-block h2{font-size:38px}
  .clinic-intro-section .text-block p,
  .clinic-waiting-section .text-block p{font-size:20px}
  .profile-main-title{font-size:29px}
  .profile-career-list li{font-size:18px}
}

.director-photo-standalone{width:min(410px,100%);margin:44px 0 72px;border-radius:22px;overflow:hidden;background:#eef2f3}
.director-photo-standalone img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 18%}
.director-credentials-clean{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:58px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.credential-title{font-size:19px;color:var(--green);font-weight:900;margin-bottom:22px}
.credential-column ul{list-style:none;padding:0;margin:0}.credential-column li{font-size:19px;line-height:1.65;padding:7px 0}.credential-column li strong{color:var(--green-dark);font-weight:900}
.director-education-clean{padding-top:54px}.education-clean-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}.education-clean-grid span{font-size:17px;line-height:1.65;padding:12px 0;border-bottom:1px solid var(--line)}
@media(max-width:700px){.director-photo-standalone{margin-bottom:52px}.director-credentials-clean{grid-template-columns:1fr;gap:44px;padding:44px 0}.education-clean-grid{grid-template-columns:1fr}}


/* v6 — v23의 약력 카드 스타일 + 사진 좌측 / 이력 우측 */
.director-profile-v23{
  display:grid;
  grid-template-columns:minmax(300px,380px) minmax(0,1fr);
  gap:48px;
  align-items:start;
  margin-top:44px;
}
.director-photo-left{
  position:sticky;
  top:112px;
  border-radius:22px;
  overflow:hidden;
  background:#eef2f3;
  border:1px solid var(--line);
}
.director-photo-left img{
  display:block;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 18%;
}
.director-history-right{
  display:grid;
  gap:18px;
}
.v23-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:30px 32px;
}
.v23-card h3{
  font-size:24px;
  line-height:1.3;
  margin:0 0 18px;
  letter-spacing:-.025em;
}
.v23-card ul{
  list-style:none;
  padding:0;
  margin:0;
}
.v23-card li{
  padding:7px 0;
  font-size:18px;
  line-height:1.6;
  color:#444a44;
}
.v23-card li strong{
  color:var(--green-dark);
  font-weight:900;
}
.education-v23-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 28px;
}
.education-v23-list span{
  padding:10px 0;
  border-bottom:1px solid var(--line);
  font-size:17px;
  line-height:1.55;
  color:#444a44;
}
@media(max-width:900px){
  .director-profile-v23{
    grid-template-columns:1fr;
    gap:28px;
  }
  .director-photo-left{
    position:static;
    width:min(400px,100%);
  }
}
@media(max-width:620px){
  .v23-card{padding:25px 22px}
  .v23-card h3{font-size:22px}
  .v23-card li{font-size:17px}
  .education-v23-list{grid-template-columns:1fr}
  .education-v23-list span{font-size:16px}
}

/* v7 — 원장 사진 세로 비율 확장 */
.director-photo-left{
  border-radius:22px;
  overflow:hidden;
  background:#eef2f3;
  border:1px solid var(--line);
}
.director-photo-left img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center top;
}
@media(min-width:901px){
  .director-photo-left{
    align-self:start;
  }
  .director-photo-left img{
    max-height:none;
  }
}

.director-showcase{padding:112px 0 120px;background:#fff}
.director-intro-row{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}
.director-intro-row h2{font-size:clamp(44px,4.8vw,64px);line-height:1.08;letter-spacing:-.05em;margin:12px 0 0}
.director-intro-row p{max-width:460px;margin:0 0 8px;font-size:20px;line-height:1.75;color:var(--muted)}
.director-showcase-grid{display:grid;grid-template-columns:minmax(340px,470px) minmax(0,1fr);gap:56px;align-items:start}
.director-photo-panel{overflow:hidden;border-radius:22px;background:#dfe2e4;border:1px solid var(--line)}
.director-photo-panel img{display:block;width:100%;height:auto}
.director-info-stack{display:grid;gap:16px}
.director-name-block{padding:6px 8px 14px}
.director-name-block span{display:block;font-size:17px;font-weight:800;color:#505750;margin-bottom:3px}
.director-name-block strong{display:inline-block;font-size:44px;line-height:1;letter-spacing:.12em;margin-right:10px}
.director-name-block em{font-style:normal;font-size:18px;color:#495149}
.profile-info-card{background:#fff;border:1px solid #dce2da;border-radius:18px;padding:28px 30px;box-shadow:0 8px 28px rgba(27,49,31,.025)}
.profile-info-card h3{position:relative;margin:0 0 18px;padding-left:20px;font-size:22px;color:var(--green-dark)}
.profile-info-card h3:before{content:"";position:absolute;left:0;top:.45em;width:9px;height:9px;border-radius:50%;background:var(--green)}
.profile-info-card ul{list-style:none;margin:0;padding:0}
.profile-info-card li{position:relative;padding:6px 0 6px 14px;font-size:17px;line-height:1.6;color:#3f463f}
.profile-info-card li:before{content:"·";position:absolute;left:0;color:#727972}
.profile-info-card li strong{color:var(--green-dark);font-weight:900}
.clinic-values-strip{padding:54px 0 64px;background:#f7f8f4}
.clinic-values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.clinic-value{padding:30px 24px;text-align:center;border-right:1px solid var(--line)}
.clinic-value:last-child{border-right:0}
.clinic-value strong{display:block;font-size:20px;color:var(--green-dark);margin-bottom:8px}
.clinic-value p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}
@media(max-width:900px){
  .director-intro-row{display:block}.director-intro-row p{margin-top:18px}
  .director-showcase-grid{grid-template-columns:1fr;gap:32px}.director-photo-panel{max-width:520px}
  .clinic-values-grid{grid-template-columns:1fr 1fr}.clinic-value:nth-child(2){border-right:0}.clinic-value:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:600px){
  .director-showcase{padding:78px 0 88px}.director-intro-row h2{font-size:40px}.director-name-block strong{font-size:36px}
  .profile-info-card{padding:24px 22px}.profile-info-card li{font-size:16px}
  .clinic-values-grid{grid-template-columns:1fr}.clinic-value{border-right:0;border-bottom:1px solid var(--line)}.clinic-value:last-child{border-bottom:0}
}


/* treatment content v1 */
.acupuncture-hero p{
  max-width:720px;
  color:#dce7de;
}
.acupuncture-intro{
  padding:104px 0 92px;
  background:#fff;
}
.acupuncture-narrow{max-width:900px}
.acupuncture-intro h2{
  font-size:clamp(40px,4.7vw,60px);
  line-height:1.18;
  letter-spacing:-.05em;
  margin:16px 0 24px;
}
.acupuncture-intro p{
  margin:0;
  max-width:800px;
  font-size:21px;
  line-height:1.9;
  color:var(--muted);
}
.acupuncture-principle{
  padding:104px 0 112px;
  background:var(--bg);
}
.acupuncture-principle-alt{
  background:#fff;
  border-top:1px solid var(--line);
}
.acupuncture-principle-head{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:28px;
  align-items:start;
  max-width:980px;
  margin-bottom:44px;
}
.principle-index{
  color:var(--green);
  font-size:54px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.05em;
}
.acupuncture-principle-head h2{
  font-size:clamp(36px,4.2vw,54px);
  line-height:1.2;
  letter-spacing:-.045em;
  margin:0 0 18px;
}
.acupuncture-principle-head p{
  margin:0;
  font-size:20px;
  line-height:1.85;
  color:var(--muted);
  max-width:820px;
}
.acupuncture-comic{
  margin:0;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 14px 42px rgba(25,45,29,.05);
}
.acupuncture-comic img{
  display:block;
  width:100%;
  height:auto;
}
.acupuncture-comic figcaption{
  padding:14px 20px 16px;
  text-align:right;
  font-size:14px;
  color:#8b918b;
  border-top:1px solid var(--line);
}
.principle-coming-card{
  max-width:900px;
  margin-left:120px;
  padding:28px 30px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--bg);
}
.principle-coming-card strong{
  display:block;
  font-size:21px;
  margin-bottom:7px;
}
.principle-coming-card span{
  font-size:17px;
  color:var(--muted);
}
.article-signoff{
  background:#fff;
}
.article-signoff .wrap{
  padding:24px 0 12px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:flex-end;
  gap:8px;
  color:#929892;
  font-size:14px;
}
.treatment-back-section{
  padding:24px 0 76px;
  background:#fff;
}

.care-treatment-section{
  padding:104px 0 116px;
  background:#fff;
  border-top:1px solid var(--line);
}
.care-treatment-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:38px;
}
.care-treatment-heading h2{
  margin:14px 0 10px;
  font-size:clamp(36px,4vw,50px);
  letter-spacing:-.045em;
}
.care-treatment-heading p{
  margin:0;
  color:var(--muted);
  font-size:19px;
}
.care-treatment-more{
  color:var(--green);
  font-weight:850;
  white-space:nowrap;
}
.care-treatment-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.care-treatment-grid a{
  min-height:118px;
  padding:25px 26px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--bg);
  display:flex;
  flex-direction:column;
  justify-content:center;
  transition:.18s;
}
.care-treatment-grid a:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
}
.care-treatment-grid strong{
  font-size:23px;
  margin-bottom:5px;
}
.care-treatment-grid span{
  font-size:16px;
  color:var(--muted);
}

@media(max-width:900px){
  .care-treatment-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .acupuncture-intro{padding:76px 0 70px}
  .acupuncture-intro p{font-size:19px}
  .acupuncture-principle{padding:76px 0 82px}
  .acupuncture-principle-head{grid-template-columns:1fr;gap:10px;margin-bottom:30px}
  .principle-index{font-size:44px}
  .acupuncture-principle-head p{font-size:18px}
  .principle-coming-card{margin-left:0}
  .article-signoff .wrap{justify-content:flex-start}
  .care-treatment-heading{display:block}
  .care-treatment-more{display:inline-block;margin-top:18px}
  .care-treatment-grid{grid-template-columns:1fr}
}

/* acupuncture two-comic layout */
.acupuncture-question{
  padding:108px 0 88px;
  background:#fff;
}
.acupuncture-question h2{
  margin:14px 0 22px;
  font-size:clamp(42px,5vw,64px);
  line-height:1.15;
  letter-spacing:-.05em;
}
.acupuncture-question p{
  margin:0;
  max-width:780px;
  font-size:21px;
  line-height:1.85;
  color:var(--muted);
}
.effect-section{
  padding:104px 0 116px;
}
.effect-section-muscle{background:var(--bg)}
.effect-section-recovery{
  background:#fff;
  border-top:1px solid var(--line);
}
.effect-heading{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:30px;
  align-items:start;
  max-width:1000px;
  margin-bottom:42px;
}
.effect-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  background:var(--green-dark);
  color:#fff;
  font-weight:900;
  font-size:18px;
  white-space:nowrap;
}
.effect-heading h2{
  margin:0 0 18px;
  font-size:clamp(38px,4.5vw,56px);
  line-height:1.18;
  letter-spacing:-.045em;
}
.effect-heading p{
  margin:0;
  max-width:850px;
  color:var(--muted);
  font-size:20px;
  line-height:1.85;
}
.effect-comic{
  margin:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 42px rgba(25,45,29,.05);
}
.effect-comic img{
  display:block;
  width:100%;
  height:auto;
}
.effect-comic-recovery{
  max-width:1100px;
}
@media(max-width:700px){
  .acupuncture-question{padding:78px 0 68px}
  .acupuncture-question p{font-size:19px}
  .effect-section{padding:78px 0 86px}
  .effect-heading{grid-template-columns:1fr;gap:14px;margin-bottom:30px}
  .effect-heading p{font-size:18px}
  .effect-number{justify-self:start}
}

.treatment-main-hero p{max-width:760px}
.treatment-feature-intro{padding:108px 0 86px;background:#fff}
.treatment-feature-intro .wrap{max-width:960px}
.treatment-feature-intro h2{margin:14px 0 18px;font-size:clamp(50px,6vw,72px);line-height:1.05;letter-spacing:-.055em}
.treatment-feature-intro p{margin:0;max-width:830px;font-size:22px;line-height:1.85;color:var(--muted)}
.treatment-effect-section{padding:104px 0 116px;background:#fff;border-top:1px solid var(--line)}
.treatment-effect-soft{background:var(--bg)}
.other-treatment-section{padding:108px 0 120px;background:var(--green-dark);color:#fff}
.other-treatment-heading{max-width:860px;margin-bottom:38px}
.other-treatment-heading .section-kicker{color:#65e36a}
.other-treatment-heading h2{margin:14px 0 14px;font-size:clamp(38px,4.5vw,56px);line-height:1.18;letter-spacing:-.045em}
.other-treatment-heading p{margin:0;color:#d9e5db;font-size:19px}
.other-treatment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.other-treatment-card{min-height:116px;padding:26px 28px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:.18s}
.other-treatment-card:hover{background:rgba(255,255,255,.11);transform:translateY(-2px)}
.other-treatment-card strong{display:block;font-size:23px;margin-bottom:5px}
.other-treatment-card span{display:block;color:#d5e0d7;font-size:16px}
.other-treatment-card b{font-size:26px;color:#75e57b}
.treatment-signoff{background:#fff;padding-bottom:22px}
@media(max-width:800px){.other-treatment-grid{grid-template-columns:1fr}}
@media(max-width:650px){.treatment-feature-intro{padding:78px 0 68px}.treatment-feature-intro p{font-size:19px}.treatment-effect-section{padding:78px 0 86px}.other-treatment-section{padding:80px 0 88px}}

/* care page: featured acupuncture + compact other treatments */
.care-treatment-hub{
  padding:112px 0 124px;
  background:#f6f7f3;
  border-top:1px solid var(--line);
}
.care-treatment-head{max-width:780px;margin-bottom:42px}
.care-treatment-head h2{
  margin:14px 0 0;
  font-size:clamp(38px,4.6vw,56px);
  line-height:1.18;
  letter-spacing:-.045em;
}
.featured-acupuncture{
  position:relative;
  min-height:390px;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) 34%;
  border-radius:26px;
  background:var(--green-dark);
  color:#fff;
  box-shadow:0 18px 50px rgba(25,45,29,.09);
}
.featured-acupuncture-copy{padding:58px 62px 56px}
.featured-label{
  display:inline-block;
  margin-bottom:20px;
  color:#7ee583;
  font-size:17px;
  font-weight:900;
}
.featured-acupuncture h3{
  margin:0 0 20px;
  font-size:clamp(38px,4.8vw,58px);
  line-height:1.15;
  letter-spacing:-.05em;
}
.featured-acupuncture p{
  max-width:700px;
  margin:0 0 30px;
  color:#dce7de;
  font-size:19px;
  line-height:1.8;
}
.featured-more{font-size:17px;font-weight:900}
.featured-more b{margin-left:8px;color:#7ee583;font-size:21px}
.featured-acupuncture-mark{
  position:relative;
  min-height:100%;
  background:rgba(255,255,255,.035);
}
.needle-line{
  position:absolute;
  width:3px;height:270px;
  left:50%;top:50%;
  background:rgba(255,255,255,.72);
  transform:translate(-50%,-50%) rotate(28deg);
  border-radius:3px;
}
.needle-line:before{
  content:"";position:absolute;left:50%;top:-45px;
  width:10px;height:58px;border-radius:5px;
  background:#7ee583;transform:translateX(-50%);
}
.needle-point{
  position:absolute;width:160px;height:160px;
  left:50%;top:55%;transform:translate(-50%,-50%);
  border:1px solid rgba(126,229,131,.25);border-radius:50%;
}
.needle-point:after{
  content:"";position:absolute;inset:26px;
  border:1px solid rgba(126,229,131,.18);border-radius:50%;
}
.other-treatment-title{
  display:flex;align-items:baseline;gap:16px;
  margin:54px 0 18px;
}
.other-treatment-title strong{font-size:25px}
.other-treatment-title span{color:var(--muted);font-size:16px}
.compact-treatment-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.compact-treatment-grid a{
  position:relative;
  min-height:128px;
  padding:24px 46px 22px 24px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  transition:.18s;
}
.compact-treatment-grid a:hover{
  transform:translateY(-2px);
  border-color:#b8c8b9;
  box-shadow:0 10px 30px rgba(25,45,29,.05);
}
.compact-treatment-grid strong{
  display:block;margin-bottom:8px;
  font-size:20px;letter-spacing:-.025em;
}
.compact-treatment-grid span{
  display:block;color:var(--muted);
  font-size:15px;line-height:1.55;
}
.compact-treatment-grid b{
  position:absolute;right:20px;top:24px;
  color:var(--green);font-size:19px;
}
@media(max-width:900px){
  .featured-acupuncture{grid-template-columns:1fr}
  .featured-acupuncture-mark{display:none}
  .compact-treatment-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .care-treatment-hub{padding:78px 0 88px}
  .featured-acupuncture{min-height:0}
  .featured-acupuncture-copy{padding:38px 28px 40px}
  .featured-acupuncture p{font-size:17px}
  .compact-treatment-grid{grid-template-columns:1fr}
  .other-treatment-title{display:block}
  .other-treatment-title span{display:block;margin-top:5px}
}

/* soft marker highlight for acupuncture detail */
.soft-highlight{
  color:inherit;
  background:linear-gradient(transparent 58%, rgba(178,222,139,.48) 58%, rgba(178,222,139,.48) 92%, transparent 92%);
  padding:0 .04em;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}

/* softer featured acupuncture palette */
.featured-acupuncture{
  background:#526B59;
  box-shadow:0 16px 42px rgba(50,70,56,.08);
}
.featured-acupuncture .featured-label{
  color:#D8EDC7;
}
.featured-acupuncture p{
  color:#F0F4EF;
}
.featured-acupuncture .featured-more b{
  color:#D8EDC7;
}
.featured-acupuncture-mark{
  background:rgba(255,255,255,.025);
}
.featured-acupuncture .needle-line{
  background:rgba(255,255,255,.72);
}
.featured-acupuncture .needle-line:before{
  background:#C9E9AE;
}
.featured-acupuncture .needle-point{
  border-color:rgba(216,237,199,.28);
}
.featured-acupuncture .needle-point:after{
  border-color:rgba(216,237,199,.18);
}

/* Korean headline wrapping */
.page-head h1,.hero h1,.clinic-hero h1,.philosophy-hero h1,.care-hero h1,.contact-hero h1,
.featured-acupuncture h3,.care-treatment-head h2,.section-title,.section-title h2{
  word-break:keep-all;
  overflow-wrap:normal;
  text-wrap:balance;
}
.page-head .wrap,.clinic-hero .wrap,.philosophy-hero .wrap,.care-hero .wrap,.contact-hero .wrap{
  max-width:1320px;
}
.page-head h1,.clinic-hero h1,.philosophy-hero h1,.care-hero h1,.contact-hero h1{
  max-width:1180px;
  font-size:clamp(48px,5.2vw,76px);
  line-height:1.12;
  letter-spacing:-.052em;
}
@media(min-width:1050px){
 .page-head h1,.clinic-hero h1,.philosophy-hero h1,.care-hero h1,.contact-hero h1{
   width:max-content;max-width:100%;
 }
}
@media(max-width:760px){
 .page-head h1,.clinic-hero h1,.philosophy-hero h1,.care-hero h1,.contact-hero h1{
   width:auto;max-width:100%;font-size:clamp(38px,11vw,52px);line-height:1.16;
 }
}

.contact-hours-v2{padding:100px 0 108px;background:#fff}
.contact-hours-v2 h2,.contact-map-section h2{margin:14px 0 34px;font-size:clamp(38px,4.5vw,56px);line-height:1.18;letter-spacing:-.045em;word-break:keep-all}
.hours-table-v2{border-top:2px solid #263d2c}
.hours-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:24px;align-items:center;padding:25px 4px;border-bottom:1px solid var(--line);font-size:19px}
.hours-row strong{font-size:21px}.hours-row span b{display:inline-block;margin-right:12px;color:var(--green-dark);font-size:15px}.hours-note{color:var(--muted)}
.lunch-time{display:flex;align-items:baseline;gap:24px;margin-top:24px;padding:22px 26px;border-radius:14px;background:#f3f6f1}
.lunch-time strong{font-size:18px}.lunch-time span{font-size:19px;font-weight:800}.lunch-time small{margin-left:auto;color:var(--muted);font-size:14px}
.contact-map-section{padding:104px 0 120px;background:#f6f7f3}.clinic-map-figure{margin:0;max-width:920px;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff}.clinic-map-figure img{display:block;width:100%;height:auto}
@media(max-width:760px){.hours-row{grid-template-columns:1fr;gap:8px;padding:22px 2px}.lunch-time{display:block}.lunch-time span{margin-left:16px}.lunch-time small{display:block;margin:8px 0 0}.contact-hours-v2,.contact-map-section{padding:76px 0 84px}}

/* contact redesign v2 */
.hours-focus{padding:104px 0 112px;background:#fff}.hours-focus-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:38px}.hours-focus-head h2{margin:14px 0 0;font-size:clamp(40px,4.7vw,58px);line-height:1.17;letter-spacing:-.048em;word-break:keep-all}.lunch-badge{flex:0 0 auto;min-width:260px;padding:21px 24px;border-radius:16px;background:#eef4eb;border:1px solid #dae6d5}.lunch-badge span{display:block;margin-bottom:5px;color:#617163;font-size:14px;font-weight:800}.lunch-badge strong{display:block;color:#294c34;font-size:23px}.hours-groups{display:grid;gap:14px}.hours-card{display:grid;grid-template-columns:260px 1fr;min-height:142px;overflow:hidden;border:1px solid #dfe5dc;border-radius:20px;background:#fff}.hours-day{padding:32px 34px;display:flex;flex-direction:column;justify-content:center;background:#526B59;color:#fff}.hours-day strong{font-size:26px;letter-spacing:-.03em}.hours-day span{margin-top:8px;width:max-content;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.13);color:#edf6e9;font-size:13px;font-weight:800}.hours-times{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:24px 34px}.hours-times>div{min-height:76px;display:flex;flex-direction:column;justify-content:center}.hours-times>div+div{border-left:1px solid #e3e7e1;padding-left:38px}.hours-times small{margin-bottom:7px;color:#6f7d72;font-size:14px;font-weight:800}.hours-times b{font-size:27px;letter-spacing:-.025em;color:#1e2f23}.hours-times.single{grid-template-columns:1fr}.hours-times.single>div+div{border:0;padding-left:0}.hours-footnote{display:flex;gap:20px;align-items:center;margin-top:18px;padding:18px 24px;border-radius:14px;background:#f4f6f2}.hours-footnote strong{color:#34523d;font-size:17px}.hours-footnote span{color:#667168;font-size:15px}.map-guide{padding:108px 0 124px;background:#f5f7f3;border-top:1px solid var(--line)}.map-guide-head{max-width:820px;margin-bottom:38px}.map-guide-head h2{margin:14px 0 18px;font-size:clamp(40px,4.7vw,58px);line-height:1.17;letter-spacing:-.048em;word-break:keep-all}.map-guide-head p{margin:0;max-width:700px;color:var(--muted);font-size:18px;line-height:1.75}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:stretch}.clinic-map-figure.edited{margin:0;overflow:hidden;border:1px solid #d9e1d7;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(35,55,39,.05)}.clinic-map-figure.edited img{display:block;width:100%;height:auto}.map-info-panel{padding:30px 28px;border-radius:22px;background:#526B59;color:#fff}.map-info-item{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.16)}.map-info-item span{display:block;margin-bottom:7px;color:#dce9d7;font-size:13px;font-weight:800}.map-info-item strong{font-size:21px;line-height:1.5}.map-info-panel p{margin:0;color:#e5ece4;font-size:15px;line-height:1.75}@media(max-width:850px){.hours-focus-head{display:block}.lunch-badge{margin-top:24px;max-width:300px}.hours-card{grid-template-columns:1fr}.hours-day{padding:22px 24px}.hours-times{padding:20px 24px}.map-layout{grid-template-columns:1fr}}@media(max-width:620px){.hours-focus,.map-guide{padding:78px 0 88px}.hours-times{grid-template-columns:1fr;gap:14px}.hours-times>div+div{border-left:0;border-top:1px solid #e3e7e1;padding:14px 0 0}.hours-times b{font-size:23px}.hours-footnote{display:block}.hours-footnote span{display:block;margin-top:5px}}


/* contact hours — compact refinement */
.hours-focus{
  padding:82px 0 90px;
}
.hours-focus-head{
  align-items:center;
  margin-bottom:26px;
}
.hours-focus-head h2{
  margin:10px 0 0;
  font-size:clamp(30px,3vw,38px);
  line-height:1.25;
  letter-spacing:-.035em;
}
.lunch-badge{
  min-width:235px;
  padding:16px 20px;
  border-radius:14px;
}
.lunch-badge span{
  margin-bottom:3px;
  font-size:13px;
}
.lunch-badge strong{
  font-size:20px;
}
.hours-groups{
  gap:10px;
}
.hours-card{
  grid-template-columns:220px 1fr;
  min-height:108px;
  border-radius:16px;
}
.hours-day{
  padding:23px 28px;
}
.hours-day strong{
  font-size:22px;
}
.hours-day span{
  margin-top:6px;
  padding:4px 9px;
  font-size:12px;
}
.hours-times{
  padding:17px 28px;
}
.hours-times > div{
  min-height:62px;
}
.hours-times > div + div{
  padding-left:30px;
}
.hours-times small{
  margin-bottom:4px;
  font-size:13px;
}
.hours-times b{
  font-size:23px;
}
.hours-footnote{
  margin-top:14px;
  padding:15px 20px;
}
.hours-footnote strong{
  font-size:16px;
}
.hours-footnote span{
  font-size:14px;
}
@media(max-width:850px){
  .hours-focus-head{display:block}
  .lunch-badge{margin-top:18px}
  .hours-card{grid-template-columns:1fr}
}
@media(max-width:620px){
  .hours-focus{padding:66px 0 74px}
  .hours-focus-head h2{font-size:30px}
  .hours-day{padding:18px 22px}
  .hours-times{padding:15px 22px}
  .hours-times b{font-size:21px}
}

.hours-table-clean{overflow:hidden;border-top:2px solid #526B59;border-bottom:1px solid #d9e0d7}
.hours-table-head,.hours-table-row{display:grid;grid-template-columns:220px 1fr 1fr;align-items:center}
.hours-table-head{min-height:48px;background:#f2f5f0;color:#657168;font-size:14px;font-weight:800}
.hours-table-head span,.hours-table-row>*{padding-left:26px}
.hours-table-row{min-height:76px;border-top:1px solid #e3e7e1}
.hours-table-row strong{font-size:19px;color:#263d2c}.hours-table-row b{font-size:20px;color:#202923}.hours-table-row span{font-size:15px;color:#526B59;font-weight:800}
.saturday-row{background:#fbfcfa}
.hours-footnote-clean{display:flex;align-items:center;gap:18px;margin-top:16px;padding:17px 22px;border-radius:12px;background:#eef4eb}
.hours-footnote-clean strong{font-size:15px;color:#526B59}.hours-footnote-clean b{font-size:19px;color:#263d2c}.hours-footnote-clean span{margin-left:auto;font-size:14px;color:#69746b}
@media(max-width:650px){.hours-table-head,.hours-table-row{grid-template-columns:1.1fr 1fr 1fr}.hours-table-head span,.hours-table-row>*{padding-left:10px}.hours-table-row b,.hours-table-row strong{font-size:15px}.hours-footnote-clean{display:block}.hours-footnote-clean b{margin-left:10px}.hours-footnote-clean span{display:block;margin:5px 0 0}}

/* v5 subtle scroll reveal */
.reveal-ready .scroll-reveal{
  opacity:0;
  transform:translateY(20px);
  transition:
    opacity .62s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms),
    transform .62s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms);
  will-change:opacity,transform;
}
.reveal-ready .scroll-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}
@media(prefers-reduced-motion:reduce){
  .scroll-reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* treatment subheading wording refinement */
.other-treatment-title strong{font-size:24px;letter-spacing:-.025em}

/* 12-hour schedule remains visually aligned */
.hours-table-row b{font-variant-numeric:tabular-nums}


/* v6 — site-wide editorial scroll reveal */
.reveal-ready .scroll-reveal{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:
    opacity .66s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms),
    transform .66s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms);
  will-change:opacity,transform;
}
.reveal-ready .scroll-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

/* Slightly more breathing room where scrolling motion now carries the hierarchy */
main section{
  scroll-margin-top:92px;
}
.section-head,
.care-treatment-head,
.map-guide-head{
  margin-bottom:clamp(24px,3vw,38px);
}

/* Repeated card groups feel cleaner when revealed in sequence */
.disease-grid,
.compact-treatment-grid,
.notes-grid,
.info-grid,
.treatment-grid{
  row-gap:clamp(14px,2vw,22px);
}

/* Keep image/copy sections visually calm during reveal */
.editorial-media img,
.clinic-photo img,
.profile-photo img,
.effect-comic img,
.ultrasound-feature img{
  backface-visibility:hidden;
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce){
  .scroll-reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}

/* v7 photo reveals: home + clinic */
.reveal-ready .photo-reveal{
  opacity:0;
  transform:translate3d(0,24px,0) scale(.992);
  transition:
    opacity .78s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms),
    transform .78s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms);
}
.reveal-ready .photo-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}

/* schedule: lunch belongs to the same visual table */
.lunch-row{
  background:#eef4eb;
  border-top:1px solid #d5dfd1;
}
.lunch-row strong{color:#526B59}
.lunch-row b{grid-column:auto;font-size:19px;color:#263d2c}
.lunch-row span{font-size:13px;color:#718075;font-weight:700}
.hours-footnote-clean{display:none!important}

/* v8 photo reveal bug fix */
img.photo-inner{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}
.photo-reveal img{
  opacity:1!important;
  transform:none!important;
}


/* v9 contact cleanup */
.hours-focus-head.simple{
  margin-bottom:18px;
}
.hours-focus-head.simple .section-kicker{
  font-size:16px;
  margin:0;
}
.hours-focus-head.simple h2,
.hours-focus-head.simple .lunch-badge{
  display:none!important;
}

.weekday-lunch{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:48px;
  padding:10px 18px;
  background:#e8f1e4;
  border-top:1px solid #d5dfd1;
  border-bottom:1px solid #d5dfd1;
  color:#3f5d47;
}
.weekday-lunch span{
  font-size:14px;
  font-weight:800;
}
.weekday-lunch strong{
  font-size:18px;
  letter-spacing:-.01em;
}
.no-lunch{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 10px!important;
  margin-left:26px;
  border-radius:999px;
  background:#f1f4ef;
  color:#607066!important;
  font-size:13px!important;
  font-weight:800!important;
}
@media(max-width:650px){
  .weekday-lunch{
    justify-content:flex-start;
    padding-left:12px;
  }
  .no-lunch{
    margin-left:10px;
    font-size:12px!important;
  }
}

/* v10 — composed section reveal */
.reveal-ready .section-reveal{
  opacity:0;
  transform:translate3d(0,28px,0);
  transition:
    opacity .82s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms),
    transform .82s cubic-bezier(.22,.72,.22,1) var(--reveal-delay,0ms);
}
.reveal-ready .section-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

/* If a whole section is animated, its children should not independently disappear. */
.section-reveal .scroll-reveal,
.section-reveal .photo-reveal{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}

/* slightly calmer initial composition for large split sections */
.section-reveal img{
  backface-visibility:hidden;
  transform:translateZ(0);
}
