/* FIELD NOTES / Edition VI. The cover, opening composition and main navigation
   are intentionally not selected here. They can opt in to the public tokens. */
@font-face{font-family:"FN6 Title";src:url("./type-v6/head.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"FN6 Book";src:url("./type-v6/prose.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"FN6 Continuation";src:url("./type-v6/hangul-rest.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+AC00-D7A3}
:root{
  --v6-display:"FN6 Title","FN6 Book","FN6 Continuation","AppleMyungjo","Batang","Noto Serif CJK KR",Georgia,serif;
  --v6-prose:"FN6 Book","FN6 Continuation","AppleMyungjo","Batang","Noto Serif CJK KR",Georgia,serif;
  --v6-ui:var(--sans,"Apple SD Gothic Neo"),"Malgun Gothic",Arial,sans-serif;
  --v6-reading-size:clamp(1.125rem,calc(1.025rem + .30vw),1.385rem);
  --v6-reading-leading:1.83;
  --v6-reading-measure:36.5em;
  --v6-title-tracking:-.047em;
  --v6-caption-size:clamp(.785rem,calc(.74rem + .12vw),.91rem);
}

/* The recurring editorial voices: a carved display serif for Korean chapter
   titles, a gentler written rhythm for first person prose, sans for evidence.
   Avoid overriding date displays, diagrams, numeric tables and English art. */
:is(#atlas-v5,#origin,#paik-studies,#formation-v5,#work,#work-cases,#dispatch,#web-bench,#support-notes,#shop-notes,#service,#lab,#v5-jasynq,#v5-mymonitor,#contact-sheets,#profile)
  :is(h2,h3,h4,h5,h6):not([lang="en"]):not(.lab-subtitle){
  font-family:var(--v6-display);font-style:normal;font-weight:635;
  letter-spacing:var(--v6-title-tracking);font-kerning:normal;
  word-break:keep-all;overflow-wrap:anywhere;line-break:strict;hyphens:none;
  text-wrap:balance;
}
:is(#origin,#paik-studies,#formation-v5,#work,#service,#lab,#v5-jasynq,#v5-mymonitor,#contact-sheets,#profile)
  h2:not([lang="en"]){line-height:1.19}
:is(#work-cases,#web-bench,#support-notes,#shop-notes) h3{line-height:1.22}
#work-cases .wa-feature-copy h4,#work-cases .wa-print h5:not([lang="en"]){font-weight:635;letter-spacing:-.044em;line-height:1.32}
#lab .lab-copy h3[lang="en"]{font-family:var(--serif,Georgia,serif);font-weight:480;letter-spacing:-.045em;line-height:1.06}
#atlas-v5 .at5-read-text>strong{font:620 clamp(1.5rem,1.9vw,2.15rem)/1.33 var(--v6-display);letter-spacing:-.045em;text-wrap:balance}
#life-mother-title{font-family:var(--v6-display);font-weight:490;letter-spacing:-.04em;line-height:1.38}

/* The long-reading paragraph. The class list is deliberate: project statuses,
   captions, controls and chart labels do not borrow these book metrics. */
body :is(.origin-prose>p,.origin-lead,.formation-v5-story>p,.pf-intro,
 .pf-entry-content>p,.pf-process-copy>p,.pf-patent>p,
 .work-lede .lede-copy>p,.wa-intro,.wa-feature-copy>p:not(.wa-data),
 .wa-sheet-head>p,.wa-api-note>div>p,.v-bench-head>p,.v-b-source>p,
 .vf-intro>p,.sn-rework-body>p,.ce-support-case>p:not(.ce-support-date),
 .sn-shop-story>p,.support-story>p:not([class]),
 .service-copy>p:not([class]),.family-note>div>p,
 .lab-opening>p:not(.lab-entrydate),.lab-copy>p:not(.lab-case-meta):not(.lab-status):not(.lab-question),
 .ev5-story>p:not([class]),.ev5-observation>p:not([class]),.profile-text>p:not([class]),
 .at5-deck,.at5-note .at5-bodycopy){
  font-family:var(--v6-prose);font-weight:400;font-style:normal;
  font-size:var(--v6-reading-size);line-height:var(--v6-reading-leading);
  letter-spacing:-.007em;font-kerning:normal;
  max-inline-size:var(--v6-reading-measure);word-break:keep-all;
  line-break:strict;overflow-wrap:anywhere;hyphens:none;text-wrap:pretty;
}
body :is(.origin-prose,.pf-entry-content,.pf-process-copy,.wa-feature-copy,.sn-rework-body,.service-copy,.ev5-story)>p:not([class])+p:not([class]){margin-block-start:.82em}
body .sn-shop-story p+p{margin-block-start:.92em}
#work-cases .wa-feature-copy p.wa-feature-lead,
#lab .lab-copy p.lab-question,.ev5-story .ev5-lead{
  font-family:var(--v6-display);font-size:clamp(1.24rem,1.72vw,1.84rem);
  font-weight:470;line-height:1.59;letter-spacing:-.029em;word-break:keep-all;overflow-wrap:anywhere;text-wrap:pretty;
}
/* Feature introductions keep their weight from scale, not blanket bolding. */
#origin .origin-lead,.wa-lede>.wa-intro,.pf-head .pf-intro{
  font-family:var(--v6-prose);font-size:clamp(1.22rem,1.52vw,1.68rem);
  line-height:1.73;font-weight:400;letter-spacing:-.018em;
}
.family-note>div>p{max-inline-size:31em}

/* Captions and technical observations are another layer of the page.
   They have real reading size; emphasis stays in the nearby heading, not in
   badges, letterspaced Hangul or unusually light gray text. */
body :is(.origin-caption .patent-reading,.wa-print figcaption>p:not(.wa-shot-meta),
 .wa-api-note small,.v-b-note,.vf-ledger-deck,.vf-column-list li>p,
 .ce-demo-intro>p,.ce-test-note>p,.lab-copy .lab-status,.ev5-foot){
  font-family:var(--v6-ui);letter-spacing:-.016em;line-height:1.77;
  word-break:keep-all;overflow-wrap:anywhere;hyphens:none;
}
#work-cases .wa-print figcaption>p:not(.wa-shot-meta){
  font-size:clamp(.97rem,1.07vw,1.15rem);line-height:1.77;max-inline-size:37em;
}
body :is(.wa-figline,.wa-sheet-note,.ce-support-source,.sn-shop-years span,
 .lab-source-note,.vf-source-note,.pf-credit small,.pf-slip figcaption,
 .ev5-foot,.origin-source-row>span,.wa-api-note small,.v-b-note,.support-source){
  font-size:var(--v6-caption-size);line-height:1.65;letter-spacing:0;
}
body :is(.wa-data,.wa-shot-meta,.lab-case-meta,.lab-entrydate,.ce-support-date,
 .sn-shop-years,.vf-post-row time,.ev5-clock time){
  font-variant-numeric:lining-nums tabular-nums;letter-spacing:.005em;
}
#work-cases :is(.wa-figline,.wa-sheet-note,.wa-shot-meta,.wa-data),
#lab :is(.lab-source-note,.lab-case-meta),#dispatch .vf-source-note{color:#50534a}
#support-notes .ce-support-source{color:#54574e}
#atlas-v5 .at5-read-text>p{
  font-family:var(--v6-prose);font-size:clamp(1.005rem,1.17vw,1.2rem);
  font-weight:400;line-height:1.67;letter-spacing:-.005em;
}

/* At tablet widths, the source caption should not collapse into a tall sliver. */
@media(min-width:721px) and (max-width:960px){
  :root{--v6-reading-size:1.115rem;--v6-reading-leading:1.78}
  #work-cases .wa-feature-copy h4{font-size:clamp(1.69rem,3.6vw,2.02rem)}
}
@media(max-width:720px){
  :root{--v6-reading-size:1.095rem;--v6-reading-leading:1.8;--v6-caption-size:.785rem}
  #origin .origin-lead,.wa-lede>.wa-intro,.pf-head .pf-intro{font-size:1.2rem;line-height:1.72}
  #origin .origin-prose>p,#service .service-copy>p:not([class]),#shop-notes .sn-shop-story>p{
    letter-spacing:-.008em;max-inline-size:36em;
  }
  #work-cases .wa-figline{align-items:baseline;flex-wrap:wrap;gap:2px 12px}
  #work-cases .wa-shot-meta,#lab .lab-case-meta,#support-notes .ce-support-date{flex-wrap:wrap;row-gap:3px}
  #dispatch .vf-ledger-head{flex-wrap:wrap;row-gap:8px}
}
@media(max-width:380px){
  :root{--v6-reading-size:1.055rem;--v6-reading-leading:1.77;--v6-title-tracking:-.044em}
  #work-cases .wa-feature-copy h4{font-size:clamp(1.48rem,7.7vw,1.76rem);line-height:1.3}
  :is(#origin,#work,#service,#profile) :is(.origin-heading,.work-lede h2,.service-copy h2,.profile-title h2),
  #paik-studies .pf-head h2,#v5-jasynq .ev5-story h2,#v5-mymonitor .ev5-m-head h2{
    font-size:clamp(2rem,9.5vw,2.35rem);line-height:1.25;
  }
  #support-notes .ce-support-header h3,#shop-notes .sn-shop-title h3{font-size:clamp(1.86rem,8.9vw,2.18rem);line-height:1.3}
  #work-cases .wa-link,.v-bench .v-b-note,.vf-source-note{overflow-wrap:anywhere}
  #lab .lab-copy .lab-question,#work-cases .wa-feature-copy p.wa-feature-lead{font-size:1.2rem;line-height:1.63}
  #work-cases .wa-data,#work-cases .wa-shot-meta,#lab .lab-case-meta{
    font-size:.76rem;line-height:1.5;column-gap:8px;letter-spacing:0;
  }
  .wa-shot-meta>b,.wa-data>span,.lab-case-meta>span{flex:none}
  #dispatch .vf-account{font-size:.76rem;letter-spacing:-.025em}
  .sn-shop-years span{margin-inline-start:.35em}
}
@media print{
  :root{--v6-reading-size:10.5pt;--v6-reading-leading:1.6;--v6-caption-size:9pt}
  .print-sheet{font-family:var(--v6-ui)}
  .print-sheet :is(h1,h2,h3){font-family:var(--v6-display)}
}
