
:root { --v2-champagne:#eee2cc; --v2-ivory:#faf7f0; --v2-line:#ddd0b9; }
.site-header { border-bottom:1px solid #ece7de; }
.button { border-radius:3px; }
.button:active { transform:translateY(1px); }
.lead h1 { font-size:clamp(42px,5vw,72px); line-height:1.06; letter-spacing:-.035em; }
.home-page .lead-support { max-width:43ch; font-size:18px; line-height:1.7; }
.journey-nav { display:grid; grid-template-columns:repeat(3,1fr); margin-top:48px; border-block:1px solid var(--v2-line); }
.journey-nav a { display:flex; align-items:center; gap:18px; padding:23px 24px; min-width:0; text-decoration:none; color:var(--ink); transition:background-color .2s; }
.journey-nav a:first-child { padding-left:0; }
.journey-nav a+a { border-left:1px solid var(--v2-line); }
.journey-nav a:hover { background:var(--v2-ivory); }
.journey-number { color:var(--gold-text); font:400 24px/1 Georgia,serif; }
.journey-nav b { display:block; font-size:15px; font-weight:500; }
.journey-nav small { display:block; margin-top:4px; font-size:12px; color:var(--muted); }

.home-page .chapter-start { padding:100px 0 70px; }
.chapter-start .chapter-grid { grid-template-columns:.88fr 1.12fr; gap:9%; align-items:center; }
.doctor-portrait { position:relative; background:var(--v2-ivory); }

.doctor-portrait img { aspect-ratio:4/3; max-height:none; object-fit:cover; object-position:center 38%; }
.doctor-portrait figcaption { margin:0; padding:18px 24px; color:var(--ink); font-size:16px; font-style:normal; border-top:1px solid var(--v2-line); }
.doctor-portrait figcaption span { display:block; color:var(--muted); font-size:12px; margin-top:4px; }
.chapter-start h2 { font-size:clamp(36px,3.9vw,56px); }
.doctor-intro { display:block; margin-top:24px; padding-block:20px; }
.doctor-intro h3 { font-family:Poppins,Arial,sans-serif; font-size:19px; }
.doctor-role { font-size:12px; }
.doctor-experience { max-width:46ch; font-size:16px; margin-top:10px; }
.home-page .needs { background:var(--paper); padding:48px 0 0; }
.needs>.shell { background:var(--v2-ivory); padding:36px 40px; }
.home-page .needs-head { grid-template-columns:1fr 1fr; gap:7%; margin-bottom:20px; }
.needs-head h2 { font-size:30px; }
.needs-list h3, .moments h3 { font:500 18px/1.45 Poppins,Arial,sans-serif; }
.needs-head p, .needs-list p { font-size:16px; line-height:1.7; }
.need-copy { padding-block:20px 0; }
.home-page .chapter-korea { background:var(--v2-champagne); padding:76px 0; }
.chapter-korea .chapter-head { grid-template-columns:1fr 1fr; gap:7%; margin-bottom:34px; align-items:end; }
.chapter-korea h2 { font-size:clamp(36px,4.5vw,64px); max-width:17ch; }
.chapter-korea .chapter-lede { font-size:17px; }
.korea-editorial { display:grid; grid-template-columns:1.15fr .85fr; gap:7%; align-items:start; }
.korea-main img { aspect-ratio:1.7; object-fit:cover; }

.korea-documentation { display:grid; max-width:none; }
.korea-documentation figcaption { font-style:normal; }
.korea-main figcaption { font-size:12px; font-style:normal; }
.korea-editorial .moments { display:block; border:0; counter-reset:moment; }
.korea-editorial .moments li { padding:20px 0; border:0; border-top:1px solid #bca67d; }
.korea-editorial .moments li:first-child { padding-top:0; border-top:0; }
.korea-editorial .moments p { font-size:16px; line-height:1.7; }
.chapter-korea .chapter-note { margin-top:30px; font-size:14px; }
.home-page .chapter-return { padding:90px 0 72px; }
.chapter-return h2 { font-size:clamp(36px,3.8vw,54px); }
.chapter-return .chapter-figure img { aspect-ratio:1; object-fit:cover; object-position:center; }
.chapter-return .chapter-support { font-size:16px; }
.clinic-address { grid-template-columns:160px 1.2fr 1fr; gap:28px; align-items:center; background:var(--v2-ivory); border:1px solid var(--v2-line); padding:24px; margin-top:46px; }
.clinic-address .clinic-facade img { width:160px; height:205px; object-fit:cover; object-position:center bottom; }
.clinic-address .clinic-facade figcaption { font-size:11px; line-height:1.5; font-style:normal; margin-top:8px; }
.clinic-address address { font-size:15px; }
.clinic-address-actions p { font-size:14px; }
.home-page .voices { background:var(--paper); }
.voices-head { margin-bottom:30px; }
.voices-head h2 { font-size:42px; }
.voice-context { font-size:15px; line-height:1.5; }
.home-page .questions-section { background:var(--v2-ivory); padding-block:64px; }
.questions-grid header h2 { font-size:38px; }
.home-page .closing-invite { background:var(--paper); padding:54px 0; }
.closing-invite>.shell { background:var(--v2-champagne); padding:54px 56px; }
.closing-invite h2 { font-size:clamp(34px,4vw,54px); max-width:22ch; margin-inline:auto; }
.invite-copy { margin-top:20px; }
.invite-note { font-size:13px; }
.site-footer { background:var(--paper); }

.page-hero { background:var(--v2-ivory); }
.process-section:nth-of-type(odd) { background:var(--paper); }
.process-overview h2 { font-size:clamp(34px,3.6vw,50px); }
.process-steps h3 { font:500 20px/1.4 Poppins,Arial,sans-serif; }
.consult-panel { background:var(--v2-ivory); box-shadow:none; border:1px solid var(--v2-line); }
.visit-section { background:var(--v2-ivory); }
@media(max-width:900px) {
 .journey-nav a { padding:18px 14px; gap:12px; }
 .journey-nav small { font-size:11px; }
 .journey-nav a>span:last-child { display:block; min-width:0; }
 .chapter-start .chapter-grid { grid-template-columns:.85fr 1.15fr; gap:5%; }
 .home-page .chapter-start { padding-block:64px 48px; }
 .doctor-portrait img { max-height:530px; }
 .home-page .needs-head { display:block; }
 .home-page .needs-head h2 { margin-bottom:12px; }
 .needs-list { grid-template-columns:repeat(3,1fr); }
 .needs-list li { border:0; }
 .need-copy, .needs-list li+li .need-copy { padding:16px 18px 0 0; }
 .korea-editorial { grid-template-columns:1fr; gap:32px; }
 .chapter-korea .chapter-head { display:block; }
 .chapter-korea .chapter-lede { margin-top:20px; }
 .clinic-address { grid-template-columns:150px 1fr; }
 .clinic-address-actions { grid-column:2; }
 .clinic-address>.clinic-facade { grid-row:1 / 3; }
 .closing-invite>.shell { padding:42px 30px; }
}
@media(max-width:560px) {
 .journey-nav { grid-template-columns:1fr; }
 .journey-nav a, .journey-nav a:first-child { padding:14px 0; gap:18px; }
 .journey-nav a+a { border-left:0; border-top:1px solid var(--v2-line); }
 .journey-nav a>span:last-child { display:block; font-size:20px; }
 .journey-nav b { font-size:14px; }
 .journey-nav small { font-size:12px; margin-top:2px; }
 .journey-number { width:26px; font-size:22px; }
 .home-page .chapter-start .chapter-grid { display:grid; grid-template-columns:1fr; gap:28px; }
 .home-page .chapter-start .chapter-copy { order:1; }
 .doctor-portrait { order:2; }
 .doctor-portrait img { height:390px; aspect-ratio:auto; object-fit:cover; object-position:center 24%; }
 .doctor-portrait figcaption { padding:14px 18px; }
 .doctor-intro { margin-top:20px; }
 .doctor-intro h3 { font-size:18px; }
 .home-page .needs { padding:32px 0 0; }
 .needs>.shell { padding:26px 22px; }
 .needs-head h2 { font-size:28px; }
 .needs-list { grid-template-columns:1fr; }
 .needs-list li+li { border-top:1px solid var(--v2-line); }
 .need-copy, .needs-list li+li .need-copy { padding:18px 0; }
 .needs-list li:last-child .need-copy { padding-bottom:0; }
 .needs-list h3 { margin-bottom:6px; }
 .home-page .chapter-korea { padding:48px 0; }
 .chapter-korea h2 { font-size:38px; }
 .chapter-korea .chapter-head { margin-bottom:26px; }
 .korea-editorial { display:flex; flex-direction:column; gap:28px; }
 .korea-images { width:100%; }
 .korea-main img { aspect-ratio:1.4; }
 .korea-editorial .moments li { padding-block:18px; }
 .korea-editorial .moments h3 { margin-bottom:8px; }
 .chapter-korea .chapter-note { margin-top:10px; }
 .home-page .chapter-return { padding:52px 0; }
 .chapter-return .chapter-figure img { max-height:340px; }
 .clinic-address { grid-template-columns:100px minmax(0,1fr); padding:18px; gap:20px 16px; margin-top:28px; }
 .clinic-address .clinic-facade { grid-row:1; }
 .clinic-address .clinic-facade img { width:100px; height:150px; }
 .clinic-address .clinic-facade figcaption { font-size:10px; }
 .clinic-address h3 { font-size:16px; }
 .clinic-address address { font-size:15px; line-height:1.65; }
 .clinic-address-actions { grid-column:1 / -1; }
 .home-page .voices { padding:48px 0; }
 .voices-head h2 { font-size:34px; }
 .voice-context { font-size:14px; }
 .home-page .questions-section { padding-block:48px; }
 .questions-grid header h2 { font-size:34px; }
 .home-page .closing-invite { padding-block:28px; }
 .closing-invite>.shell { padding:34px 22px; }
 .closing-invite h2 { font-size:34px; }
 .invite-copy { font-size:16px; }
 .invite-note { font-size:12px; }
}
@media(max-width:360px) {
 .clinic-address { grid-template-columns:1fr; }
 .clinic-address .clinic-facade img { width:100%; height:240px; }
 .clinic-address-actions { grid-column:1; }
}
@media(prefers-reduced-motion:reduce) {
 .journey-nav a { transition:none; }
}

.doctor-name-nowrap { white-space:nowrap; }

.clinic-building { margin-top:12px; color:var(--muted); font-size:13px; line-height:1.6; }

.journey-nav b {
  display:inline-block; border-bottom:1px solid var(--gold);
  padding-bottom:3px; transition:border-color .18s;
}
.journey-nav a:hover b { border-bottom-color:var(--gold-text); }

.closing-invite>.shell { position:relative; overflow:hidden; }
.closing-invite>.shell::before { content:none; }
.closing-invite>.shell>* { position:relative; }

.home-page .lead { padding:0; }
.lead-grid {
  position:relative; grid-template-columns:1fr 1fr; gap:0;
  align-items:center; min-height:min(860px, calc(100svh - 120px));
}
.lead-copy { padding-block:72px; padding-right:64px; }
.lead-figure {
  position:absolute; top:0; bottom:0;
  left:50%; right:calc((100% - 100vw)/2);
  width:auto; margin:0; padding:0;
}
.lead-figure::before { display:none; }   
.lead-figure img {
  width:100%; height:100%; aspect-ratio:auto;
  object-fit:cover; object-position:50% 18%;
}
.journey-nav { margin-top:0; }

@media(max-width:900px) {
  .lead-grid { position:static; grid-template-columns:1fr; min-height:0; }
  .lead-copy { padding-right:0; padding-block:32px 28px; }
  .lead-figure {
    position:relative; inset:auto; width:auto;
    margin-inline:calc((100% - 100vw)/2); max-width:none;
  }
  .lead-figure img { aspect-ratio:1.15; height:auto; }
  .journey-nav { margin-top:28px; }
}

.home-page .chapter-korea { background:#e7dac5; }
.home-page .chapter-return { background:#f7f6f2; }
.home-page .chapter-start .chapter-grid { align-items:start; }
.home-page .doctor-portrait { margin-top:58px; }
.home-page .doctor-portrait img { height:auto; max-height:none; aspect-ratio:4/3; }
.lead-note { margin-top:14px; font-size:14px; line-height:1.6; color:var(--gold-text); }
.consult-outcome { padding-top:22px; border-top:1px solid var(--v2-line); font-size:16px; line-height:1.75; color:var(--muted); max-width:50ch; }
.korea-documentation {
  grid-template-columns:1fr 1fr; gap:24px; margin-top:26px;
  max-width:680px; padding:0; border:0;
}
.korea-documentation .chapter-figure {
  display:block; min-width:0;
}
.korea-documentation .chapter-figure img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; }
.korea-documentation figcaption { font-size:14px; line-height:1.65; margin:12px 0 0; max-width:30ch; }
.photo-placeholder { display:flex; flex-direction:column; justify-content:center; align-items:center; aspect-ratio:4/5; max-height:700px; padding:32px; text-align:center; background:#eeeae1; border:1px dashed #ad9b79; }
.photo-placeholder span { font-size:13px; color:var(--gold-text); margin-bottom:26px; }
.photo-placeholder strong { font:400 clamp(26px,2.7vw,38px)/1.2 Playfair,Georgia,serif; }
.photo-placeholder p { font-size:15px; line-height:1.7; max-width:28ch; margin-top:20px; color:var(--muted); }
.return-layout { display:grid; grid-template-columns:1fr 1fr; gap:34px 8%; align-items:start; }
.return-head { grid-column:1; }
.return-layout>.chapter-figure { grid-column:2; grid-row:1 / 3; }
.return-layout>.chapter-figure img { aspect-ratio:4/5; max-height:700px; }
.return-care { grid-column:1; }
.care-list { list-style:none; padding:0; margin:0; }
.care-list li { padding:20px 0; border-top:1px solid var(--v2-line); }
.care-list h3 { font:500 17px/1.5 Poppins,Arial,sans-serif; margin-bottom:8px; }
.care-list p { font-size:16px; line-height:1.75; color:var(--muted); }
.home-page .clinic-address {
  grid-template-columns:38% minmax(0,1fr); gap:0 7%; padding:0;
  background:var(--paper); border:0; margin-top:64px; align-items:start;
}
.home-page .clinic-address>.clinic-facade { grid-column:1; grid-row:1 / 3; height:100%; order:0; }
.home-page .clinic-address .clinic-facade img {
  width:100%; height:100%; min-height:460px; max-height:600px;
  object-fit:cover; object-position:center bottom;
}
.home-page .clinic-address .clinic-facade figcaption { padding:10px 0; font-size:12px; }
.clinic-address-copy { padding:42px 36px 0 0; }
.home-page .clinic-address h3 { font:400 clamp(28px,3vw,40px)/1.18 Playfair,Georgia,serif; max-width:22ch; }
.clinic-visit-copy { margin:18px 0 26px; max-width:44ch; font-size:16px; line-height:1.75; color:var(--muted); }
.clinic-name { font-size:16px; font-weight:500; margin-bottom:8px; }
.home-page .clinic-address-actions { grid-column:2; padding:24px 36px 36px 0; }
.home-page .voices { padding-block:80px; border-top:0; }
.home-page .voices-list { grid-template-columns:1fr 1fr; gap:0 56px; }
.home-page .voices-list li {
  display:grid; grid-template-columns:112px minmax(0,1fr);
  grid-template-areas:'face context' 'quote quote' 'by by';
  align-content:start; gap:20px 24px;
  padding:32px 0 0; background:none; border:0; border-top:1px solid var(--v2-line);
}
.home-page .voices-list li:first-child {
  grid-column:1 / -1; grid-template-columns:160px minmax(0,1fr);
  grid-template-areas:'face context' 'face quote' 'face by';
  gap:14px 48px; padding:36px 42px; margin-bottom:42px;
  background:var(--v2-ivory); border:0;
}
.home-page .voices-face { grid-area:face; width:112px; height:140px; margin:0; }
.home-page .voices-list li:first-child .voices-face { width:160px; height:200px; }
.home-page .voice-context { grid-area:context; align-self:center; margin:0; font-size:15px; }
.home-page .voices-list blockquote { grid-area:quote; }
.home-page .voices-list blockquote p { font-size:21px; line-height:1.6; }
.home-page .voices-list li:first-child blockquote p { font-size:clamp(23px,2.2vw,30px); line-height:1.5; max-width:52ch; }
.home-page .voices-by { grid-area:by; margin:0; padding:0; font-size:12px; }
.home-page .closing-invite>.shell { padding:56px; background:#e7dac5; }
.closing-route { display:flex; justify-content:center; align-items:center; gap:16px; margin:0 auto 32px; color:var(--gold-text); font-size:13px; letter-spacing:.1em; }
.closing-route span+span { display:flex; align-items:center; gap:16px; }
.closing-route span+span::before { content:''; width:48px; height:1px; background:#bda77e; }
.home-page .site-footer .footer-bottom { font-size:14px; }

@media(max-width:900px) {
  .home-page .lead-copy { padding-block:24px 16px; }
  .home-page .lead-grid { row-gap:0; }
  .return-layout { grid-template-columns:1fr 1fr; gap:28px 5%; }
  .return-head { grid-column:1 / -1; }
  .return-layout>.chapter-figure { grid-column:1; grid-row:2; }
  .return-care { grid-column:2; }
  .home-page .clinic-address { grid-template-columns:38% minmax(0,1fr); gap:0 5%; }
  .clinic-address-copy { padding-top:28px; }
  .home-page .clinic-address .chapter-mark { font-size:12px; }
  .home-page .voices-list { gap:0 32px; }
  .home-page .voices-list li:first-child { gap:14px 28px; padding:28px; }
}
@media(max-width:560px) {
  .home-page .lead-copy { padding-block:20px 16px; }
  .home-page .route-eyebrow { font-size:12px; margin-bottom:16px; }
  .home-page .lead-support { font-size:16px; line-height:1.65; margin-top:16px; }
  .home-page .lead-actions { margin-top:18px; gap:8px; }
  .home-page .lead-actions .text-link { padding-block:9px; }
  .home-page .lead-figure img { aspect-ratio:1.2; object-position:center 14%; }
  .home-page .journey-nav { margin-top:20px; }
  .home-page .doctor-portrait { margin-top:0; }
  .home-page .doctor-portrait figcaption { font-size:14px; }
  .home-page .chapter-start h2 { font-size:34px; }
  .home-page .chapter-korea h2 { font-size:34px; max-width:20ch; }
  .korea-documentation { grid-template-columns:1fr; gap:26px; margin:26px auto 0; max-width:340px; }
  .korea-documentation figcaption { font-size:14px; }
  .photo-placeholder { aspect-ratio:4/3; padding:24px; }
  .photo-placeholder span { margin-bottom:18px; }
  .return-layout { grid-template-columns:1fr; gap:26px; }
  .return-head, .return-care, .return-layout>.chapter-figure { grid-column:1; grid-row:auto; }
  .return-layout>.chapter-figure img { aspect-ratio:4/3; max-height:none; }
  .care-list li { padding-block:18px; }
  .home-page .clinic-address { grid-template-columns:1fr; gap:0; margin-top:40px; }
  .home-page .clinic-address>.clinic-facade { grid-column:1; grid-row:auto; }
  .home-page .clinic-address .clinic-facade img { height:360px; min-height:0; max-height:none; object-position:center 65%; }
  .home-page .clinic-address .clinic-facade figcaption { padding:10px 24px 0; }
  .clinic-address-copy { padding:24px 24px 0; }
  .home-page .clinic-address h3 { font-size:30px; }
  .home-page .clinic-address-actions { grid-column:1; padding:24px; }
  .home-page .voices { padding-block:48px; }
  .home-page .voices-list { grid-template-columns:1fr; gap:28px; }
  .home-page .voices-list li, .home-page .voices-list li:first-child {
    grid-column:1; grid-template-columns:96px minmax(0,1fr);
    grid-template-areas:'face context' 'quote quote' 'by by';
    gap:18px; padding:24px 0 0; margin:0;
  }
  .home-page .voices-list li:first-child { padding:22px; }
  .home-page .voices-face, .home-page .voices-list li:first-child .voices-face { width:96px; height:120px; }
  .home-page .voices-list blockquote p, .home-page .voices-list li:first-child blockquote p { font-size:20px; line-height:1.6; }
  .home-page .voice-context { font-size:14px; }
  .home-page .closing-invite>.shell { padding:32px 22px; }
  .closing-route { font-size:12px; gap:10px; margin-bottom:24px; letter-spacing:0; }
  .closing-route span+span { gap:10px; }
  .closing-route span+span::before { width:22px; }
  .home-page .site-footer .footer-top, .home-page .site-footer .footer-bottom { display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
  .home-page .site-footer .footer-top p { max-width:28ch; font-size:13px; }
}
