/* 2026-10-19 user-approved micro typography normalization.
   Last compatibility layer; delivered Home/Vision HTML and assets stay intact.
   N01–N29 normalize existing typography; N30 also unifies the complete
   ordinary section heading + introduction component on derivative pages. */

/* N01 큰 안내 제목 */
html body #main #search-heading,
html body #main .bv-banner-title{line-height:1.3!important;}

/* N02 일반 소제목·카드 제목·FAQ 질문 */
html body #main .bv-crit h3,
html body #main .bv-sg h3,
html body #main .bv-prep-head h3,
html body #main #center h3,
html body #main .bv-faq-text,
html body #main .faq-question>span:nth-child(2),
html body #main .check-title,
html body #main .history-card h3,
html body #main .criteria .card h3,
html body #main .criterion h3,
html body #main .products .card h3,
html body #main .plan-panel h3,
html body #main .split:not(.definition) h3,
html body #main .bv-story h3,
html body #main .handoff-story-track .related-card h3,
html body #main .news-card h3,
html body #main #ai-research .research-cards h3{line-height:1.5!important;letter-spacing:-.02em!important;}

/* N03 FAQ 및 상세 답변 */
html body #main .bv-faq-a>p,
html body #main .faq-answer p,
html body #main .check-answer p,
html body #main .bv-sys-body,
html body #main .bv-sys-body p,
html body #main .system-body p,
html body #main .analysis-fold p,
html body #main .bv-metric-label{line-height:1.85!important;letter-spacing:-.02em!important;}

/* N04 본문·설명 자간 */
html body #main .bv-hero .bv-lead,
html body #main .bv-hero .bv-meta strong,
html body #main .bv-ov-body p,
html body #main .bv-sys-body,
html body #main .bv-sys-body p,
html body #main .system-body p,
html body #main .analysis-fold p,
html body #main .bv-proc-body p,
html body #main .process-list p,
html body #main #principle .card p,
html body #main .bv-crit p,
html body #main .criteria .card p,
html body #main .criterion p,
html body #main .bv-cmp-label,
html body #main .bv-cmp-cell[role="cell"],
html body #main .comparison-row:not(.comparison-head)>*,
html body #main .spec-table th,
html body #main .spec-table td,
html body #main .bv-tile>p,
html body #main .bv-lens-v small,
html body #main .cover-description p,
html body #main .hero .lead,
html body #main .cover-copy>p,
html body #main .split p,
html body #main .section-heading>p,
html body #main .meaning-cards p,
html body #main .period-intro p,
html body #main .timeline p,
html body #main .history-card-visual>p:last-child,
html body #main .plan-panel p,
html body #main .bv-metric-label,
html body #main .bv-metric-note,
html body #main #ai-consultation .closing-support{letter-spacing:-.02em!important;}

/* N05 시스템 제목 자간 */
html body #main .bv-sys-card h3,
html body #main .system-card h3,
html body #main .analysis-step h3,
html body #main .meaning-cards h3{letter-spacing:-.02em!important;}

/* N06 카드 라벨·태그 자간 */
html body #main .bv-sys-label,
html body #main .system-label,
html body #main .step-label,
html body #main .bv-story-tag,
html body #main .handoff-story-tag span,
html body #main .news-tag{letter-spacing:-.02em!important;}

/* N07 텍스트형 더보기 자간 */
html body #main #related .bv-textbtn,
html body #main .handoff-textbtn,
html body #main .news-tools>a,
html body #main .research-more{letter-spacing:-.02em!important;}

/* N08 커버 설명 행간 */
html body #main .bv-hero .bv-lead,
html body #main .cover-description p,
html body #main .hero .lead,
html body #main .cover-copy>p,
html body #main .ai-intro-copy p{line-height:1.8!important;letter-spacing:-.02em!important;}

/* N09 작은 텍스트·푸터 자간 */
html body footer strong,
html body footer a.bv-textbtn,
html body footer p[style*="line-height"],
html body .footer-columns h3,
html body .footer-columns a,
html body .footer-columns button,
html body .footer-bottom p,
html body .bv-banner p,
html body .bv-banner-period,
html body .bv-loc-addr>div>span:first-child,
html body #main .bv-lens-v small{letter-spacing:-.02em!important;}

/* N10 작은 메타 설명 */
html body #main .bv-hero .bv-meta strong,
html body #main .bv-cat>span{letter-spacing:-.02em!important;}

/* N11 설명·주석 행간 */
html body #main .bv-proc-body p,
html body #main .process-list p,
html body #main #principle .card p,
html body #main .bv-metric-note,
html body #main .site-location .breadcrumbs,
html body #main .site-location .sub-link,
html body #main .image-caption,
html body #main .clinical-figure figcaption{line-height:1.7!important;letter-spacing:-.02em!important;}

/* N12 작은 강조 라벨 */
html body #main .bv-metric-unit,
html body #main .bv-sym{line-height:1.5!important;letter-spacing:-.02em!important;}

/* N13 이름·신청 버튼 자간 */
html body #main .bv-celeb strong,
html body #main .bv-glass-consult button[type="submit"],
html body #main .consult-form>.button,
html body #main .submit-button{letter-spacing:-.02em!important;}

/* N14 읽기 본문 PC 행간 */
@media(min-width:800px){html body #main .bv-ov-body p,
html body #main .split p{line-height:1.8!important;}}

/* N15 주의사항 PC 설명 행간 */
@media(min-width:800px){html body #main .bv-tile>p{line-height:1.7!important;}}

/* N16 중간 강조 제목 */
html body #main #consult-title,
html body #main .bv-sys-card h3,
html body #main .system-card h3,
html body #main .analysis-step h3,
html body #main .meaning-cards h3{line-height:1.45!important;letter-spacing:-.02em!important;}

/* N17 15px 읽기 설명 */
html body #main .bv-cmp-cell[role="cell"],
html body #main .comparison-row:not(.comparison-head)>:not(:first-child),
html body #main .spec-table td{line-height:1.85!important;letter-spacing:-.02em!important;}

/* N18 14px 상세 설명 */
html body [role="dialog"] [style*="line-height:1.9"]{line-height:1.7!important;letter-spacing:-.02em!important;}

/* N19 13px 보조 읽기 텍스트 */
html body footer p[style*="line-height"],
html body .footer-bottom p{line-height:1.7!important;letter-spacing:-.02em!important;}

/* N20 본문·UI 자간 공통 */
html body :is(#main,.site-header,.bv-dock,footer,[role=dialog]) :is(.bv-dock-nav a,.bv-dock-tool,.bv-dock-panel-grid a,.bv-sel-btn,.bv-field input,.bv-sel-opt,.bv-err-msg,.bv-story-tag,.bv-dir-btn,footer p[style*="line-height"],footer a.bv-textbtn,.bv-hero .bv-point,.bv-hero .bv-lead,.bv-hero .bv-meta span,.bv-hero .bv-meta strong,main h2,main h3,#surgeries h2 + p,#system h2 + p,#process h2 + p,#overview .bv-ov>div:first-child>p,#criteria>div:first-child>p:first-of-type,.bv-ov-body p,.bv-sys-card h3,.bv-sys-label,.bv-sys-body,.bv-proc-num,.bv-proc-body h3,.bv-proc-body p,.bv-crit p,.bv-faq-text,.bv-faq-a > p,.bv-faq-mark,.bv-cmp-btn,.bv-cmp-label,.bv-cmp-cell[role="cell"],.bv-story h3,#related .bv-textbtn,.bv-sys-cta,.bv-faq-more,.bv-chip,.bv-tile h4,.bv-tile > p,.bv-lens-v small,footer strong,[aria-hidden="true"][style*="line-height:48px"],.bv-sym,.bv-rcard small,.bv-rcard h3,.bv-banner p,.bv-banner-period,.bv-celeb strong,.bv-celeb small,h3[style*="1.8vw"],.bv-review p,.bv-review a[href*="google.com/maps/contrib"],.bv-review small,.bv-cat strong,.bv-cat > span,.bv-loc h3,.bv-loc-addr>div>span:nth-child(2),.bv-loc-addr>div>span:first-child,#consult-title,.bv-glass-consult button[type="submit"],a.bv-textbtn[style*="font-weight:700"],.bv-ticker-row.is-top .bv-ticker-title,.bv-ticker-tag,[role="dialog"] h2,[role="dialog"] [style*="line-height:1.9"],.bv-metric-unit,.bv-metric-label,.bv-metric-note,.main-nav a,.tools button,.site-menu a,.fields input,.fields select,.system-label,.step-label,.handoff-textbtn,.handoff-story-tag span,.news-tag,.news-tools>a,.research-more,.system-body p,.analysis-fold p,.faq-answer p,.check-answer p,.process-list p,.criteria .card p,.criterion p,.plan-panel p,.hero .lead,.cover-description p,.cover-copy>p,.ai-intro-copy p,.footer-columns h3,.footer-columns a,.footer-columns button,.footer-bottom p,.site-location,.site-location .breadcrumbs,.site-location .sub-link){letter-spacing:-.02em!important;}

/* N21 한 줄 텍스트 명시 행간 */
html body .bv-dock-panel-grid a,
html body .bv-sel-opt,
html body .bv-dir-btn,
html body footer a.bv-textbtn,
html body .bv-proc-num,
html body #related .bv-textbtn,
html body .bv-sys-cta,
html body .bv-faq-more,
html body .bv-lens-v small,
html body footer strong,
html body .bv-rcard small,
html body .bv-banner p,
html body .bv-banner-period,
html body .bv-celeb strong,
html body .bv-celeb small,
html body #main:has(#search-heading) h3[style*="1.8vw"],
html body .bv-review small,
html body .bv-cat strong,
html body .bv-loc-addr>div>span:nth-child(2),
html body .bv-loc-addr>div>span:first-child,
html body .bv-glass-consult button[type="submit"],
html body a.bv-textbtn[style*="font-weight:700"],
html body .bv-ticker-row.is-top .bv-ticker-title,
html body .button,
html body .cta,
html body .dialog-confirm,
html body .handoff-textbtn,
html body .news-tools>a,
html body .research-more,
html body .footer-columns a,
html body .footer-columns button,
html body .footer-columns h3,
html body .text-link,
html body .more-link{line-height:1.2!important;letter-spacing:-.02em!important;}

/* N22 작은 라벨·칩 */
html body .bv-rcard small,
html body .bv-story-tag,
html body .handoff-story-tag span,
html body .news-tag,
html body .bv-chip,
html body .bv-err-msg{line-height:1.2!important;letter-spacing:-.02em!important;}

/* N23 날짜·시스템 라벨 */
html body .bv-review small,
html body .bv-sys-label,
html body .system-label,
html body .step-label{line-height:1.15!important;letter-spacing:-.02em!important;}

/* N24 메타 라벨 */
html body #main .bv-hero .bv-meta span{line-height:1.2!important;letter-spacing:-.02em!important;}

/* N25 PC compact 표 헤더 */
@media(min-width:800px){html body .bv-cmp-btn{line-height:1.2!important;letter-spacing:-.02em!important;}}

/* N26 주 메뉴: 비교표의 같은 크기·굵기와 행간 통일. 고정 높이/flex 정렬 보존. */
html body :is(header.bv-dock-wrap,header.site-header) :is(.bv-dock-nav,.main-nav) a{line-height:1.2!important;letter-spacing:-.02em!important;}

/* N27 derivative footer phone uses the delivered footer role, including mobile. */
html body .site-footer .contact>a{font-size:clamp(36px,4.4vw,56px);font-weight:400;line-height:normal;letter-spacing:-.03em;color:#323232}
@media(max-width:799px){html body .site-footer .contact>a{font-size:14px}}

/* N28 matching utility and explanatory roles on derivative pages. */
html body .site-footer .contact p,html body .site-footer .contact>span{letter-spacing:-.02em}
html body #main .faq-more,html body #main .submit-button{line-height:1.2;letter-spacing:-.02em}
html body #main .image-source-link,html body #main .check-point h4{letter-spacing:-.02em}
html body #main .plan-panel p{line-height:1.85!important}

/* N29 same-size ordinary and consultation headings share their 1.5 rhythm. */
html body #main:has(.bv-hero) #consult-title,
html body #main:has(#specifications .spec-table) #consult-title{line-height:1.5!important}

/* N30 Ordinary section heading + introduction, shared across Story/AI/Lens/EVO.
   Heading and 12px title-to-copy gap follow delivered Vision. The user-selected
   1.7 introductory-copy rhythm takes precedence over Vision's separate 1.85
   direct-intro variant. Consecutive paragraphs continue the same line rhythm.
   Keep each parent's width/alignment and heading-to-content spacing; copy uses
   its full available width instead of AI's former independent 780px limit.
   Title-only groups, hero/display copy, definition subheads, cards, figures and
   consultation/closing copy are separate roles and intentionally not selected.
   Story's short-viewport history-description visibility remains page-owned. */
html body #main .section-heading:has(>h2+p)>h2,
html body #main #meaning-title,
html body #main #history-title{
  margin:0!important;
  padding:0!important;
  font-size:clamp(26px,2.6vw,32px)!important;
  font-weight:400!important;
  line-height:1.5!important;
  letter-spacing:-.02em!important;
  color:#323232!important;
}
html body #main .section-heading:has(>h2+p)>p,
html body #main #meaning-title+.muted,
html body #main #history-title+.muted{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.7!important;
  letter-spacing:-.02em!important;
  color:#6f6e69!important;
  text-align:inherit;
}
html body #main .section-heading:has(>h2+p)>h2+p,
html body #main #meaning-title+.muted,
html body #main #history-title+.muted{margin-top:12px!important;}
