
:root{--paper:#ffffff;--paper-2:#f4f6fb;--ink:#14213d;--ink-2:#5a6478;--line:#e2e6ef;--navy:#0d2a6b;--navy-2:#0a1f45;--accent:#e2552c}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--paper);color:var(--ink);font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;word-break:keep-all;-webkit-font-smoothing:antialiased;line-height:1.7}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px}
header.top{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;gap:20px}
.brand{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:700;font-size:22px;letter-spacing:1px;white-space:nowrap}
.brand small{font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;font-weight:400;font-size:13px;color:var(--ink-2);margin-left:10px}
nav.menu{display:flex;gap:30px;font-size:16px;color:var(--ink-2)}
nav.menu a.on{color:var(--navy);font-weight:700}
nav.menu a:hover{color:var(--navy)}
.menu-toggle{display:none}
.kicker{font-size:15px;color:var(--navy);letter-spacing:2px;font-weight:500}
h1.slogan{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:900;font-size:64px;line-height:1.28;margin-top:26px;letter-spacing:-1px;color:var(--navy)}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;padding-top:72px;padding-bottom:80px}
.hero .wrap>*{min-width:0}
.who{margin-top:34px;font-size:18px;line-height:1.8;color:var(--ink-2)}
.who b{color:var(--ink);font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:26px;font-weight:700;margin-right:10px}
.cta{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap}
.btn{padding:14px 26px;font-size:16px;border:1px solid var(--navy);color:var(--navy);display:inline-block}
.btn.fill{background:var(--navy);color:#fff}
.photo{position:relative}
.photo img{width:100%;aspect-ratio:4/4.4;object-fit:cover;object-position:52% 30%}
.band{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band .wrap{padding-top:64px;padding-bottom:64px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px}
.band h2{font-size:15px;color:var(--navy);letter-spacing:2px;font-weight:500}
.band p{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:30px;line-height:1.65;font-weight:500}
section.block .wrap{padding-top:72px;padding-bottom:72px}
.sec-title{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:32px;font-weight:700;color:var(--ink)}
.sec-title{margin-bottom:30px}
.lead{font-size:18px;color:var(--ink-2);max-width:780px}
.lineage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:40px;position:relative}
.lineage::before{content:'';position:absolute;left:8%;right:8%;top:62px;height:2px;background:var(--line)}
.gen{text-align:center;padding:0 18px;position:relative}
.gen .ph{width:124px;height:124px;border-radius:62px;margin:0 auto;background:var(--paper-2);border:3px solid #fff;outline:2px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:34px;color:var(--navy)}
.gen .no{margin-top:18px;font-size:14px;color:var(--navy);font-weight:700;letter-spacing:1px}
.gen h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:24px;margin-top:4px}
.gen p{font-size:15px;color:var(--ink-2);margin-top:8px}
.quote-sm{margin-top:44px;padding:28px 32px;border-left:0;background:transparent;text-align:center;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:20px;line-height:1.8}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.cell{padding:0 34px;border-left:1px solid var(--line)}
.cell:first-child{padding-left:0;border-left:0}
.cell .tag{font-size:13px;color:var(--ink-2);letter-spacing:2px;font-weight:700;display:block;margin-bottom:10px}
.cell h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;color:var(--ink)}
.cell p,.cell li{font-size:16px;color:var(--ink-2);margin-top:12px;list-style:none}
.cell li{margin-top:4px}
.more{display:inline-block;margin-top:20px;font-size:15px;color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:1px}
.news{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px;align-items:center}
.news img{aspect-ratio:4/5;object-fit:cover}
.news .date{font-size:15px;color:var(--ink-2);font-weight:700}
.news h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:28px;color:var(--navy);margin-top:8px;line-height:1.45}
.news p{margin-top:14px;color:var(--ink-2)}
.page-head{background:var(--paper-2);border-bottom:1px solid var(--line)}
.page-head .wrap{padding-top:64px;padding-bottom:52px}
.page-head h1{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:40px;color:var(--ink);font-weight:700}
.page-head p{margin-top:12px;color:var(--ink-2);font-size:17px}
.list{border-top:1px solid var(--ink)}
.list li{list-style:none;border-bottom:1px solid var(--line);padding:16px 4px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px}
.list li .y{color:var(--ink-2);font-weight:700;font-size:15px}
.list li .t{font-size:17px}
.list li .t small{display:block;color:var(--ink-2);font-size:14px;margin-top:2px}
.cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
h3.h{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;color:var(--navy);margin:8px 0 14px}
.prose{max-width:760px;font-size:18px;line-height:2}
.prose p+p{margin-top:22px}
.prose+.list{margin-top:36px}
div[id],article[id]{scroll-margin-top:84px}
.prose .sign{margin-top:36px;text-align:right;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:20px}
.poems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.poem{border:1px solid var(--line);padding:40px 40px 34px;background:#fff}
.poem h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:26px;color:var(--navy)}
.poem .by{font-size:14px;color:var(--ink-2);margin-top:4px}
.poem pre{margin-top:24px;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:17px;line-height:2;white-space:pre-wrap;color:var(--ink)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{border:1px solid var(--line);padding:30px 28px;background:#fff}
.card h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:21px;color:var(--navy)}
.card p{margin-top:10px;color:var(--ink-2);font-size:15px}
.card .more{margin-top:16px}
footer.site{background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;margin-top:0}
footer.site .wrap{padding-top:64px;padding-bottom:36px}
.fname{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:30px;font-weight:700}
.fname small{font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;font-size:14px;font-weight:400;opacity:.75;margin-left:10px}
.fslogan{margin-top:10px;font-size:16px;opacity:.8}
.fcols{margin-top:44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px}
.fcols h4{font-size:16px;font-weight:500}
.fcols h4{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.22)}
.fcols .mail{overflow-wrap:normal;word-break:keep-all}
.fcols a,.fcols p{display:block;font-size:15px;line-height:2;opacity:.88}
.stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:2px solid var(--navy)}
.stat{padding:30px 18px 26px;border-right:1px solid var(--line);text-align:center}
.stat:last-child{border-right:0}
.stat b{display:block;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:46px;color:var(--navy);line-height:1.1}
.stat span{display:block;margin-top:10px;font-size:15px;color:var(--ink-2)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{border:1px solid var(--line);padding:8px 14px;font-size:15px;background:#fff}
.note{font-size:14px;color:var(--ink-2);margin-top:6px}
.gen .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.gen .cr{font-size:11px;color:var(--ink-2);margin-top:6px;opacity:.8}
.gen .dates{font-size:13px;color:var(--ink-2);margin-top:6px}
.timeline{margin-top:30px;display:flex;flex-wrap:wrap;gap:10px 22px;font-size:14px;color:var(--ink-2);border-top:1px solid var(--line);padding-top:18px}
.timeline b{color:var(--navy);margin-right:6px}
.tag2{display:block;font-size:13px;color:var(--ink-2);font-weight:700;letter-spacing:1px;margin-bottom:8px}
.poem pre.tr{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-style:italic;color:var(--ink-2);font-size:16px}
.hero2 .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:stretch;padding-top:80px;padding-bottom:88px}
.hero2 .txt{display:flex;flex-direction:column;justify-content:center;min-width:0}
.eyebrow{font-size:16px;color:var(--ink-2);letter-spacing:.5px}
.h1a{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:700;font-size:40px;line-height:1.3;margin-top:18px;color:var(--ink)}
.h1b{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:900;font-size:104px;line-height:1.05;color:var(--navy);letter-spacing:-2px;margin-top:6px}
.sub{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:24px;line-height:1.6;color:var(--ink);margin-top:26px}
.creds{margin-top:34px;border-top:1px solid var(--line)}
.creds li{list-style:none;padding:12px 0;border-bottom:1px solid var(--line);font-size:17px;display:flex;justify-content:space-between;gap:16px}
.creds li span{color:var(--ink-2);font-size:15px;white-space:nowrap}
.tlinks{margin-top:28px;display:flex;gap:28px;font-size:16px}
.tlinks a{color:var(--navy);font-weight:500;border-bottom:1px solid var(--navy);padding-bottom:2px}
.hero2 .pic{min-width:0}
.hero2 .pic img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:56% 22%}
.heir .wrap{padding-top:96px;padding-bottom:96px}
.heir .over{font-size:16px;color:var(--ink-2);letter-spacing:.5px}
.heir h2{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:900;font-size:52px;line-height:1.3;color:var(--navy);margin-top:14px;letter-spacing:-1px}
.heir .p{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:21px;line-height:1.8;color:var(--ink);margin-top:20px;max-width:860px}
.chain{margin-top:64px;display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr) 120px minmax(0,1.25fr);align-items:start}
.node{text-align:center;min-width:0}
.node .face{width:112px;height:112px;border-radius:56px;overflow:hidden;margin:28px auto 0;border:1px solid var(--line);background:var(--paper-2)}
.node.me .face{width:168px;height:168px;border-radius:84px;border:2px solid var(--navy);margin-top:0}
.node .face img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.node .ord{margin-top:18px;font-size:14px;color:var(--ink-2)}
.node h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:28px;margin-top:4px;color:var(--ink)}
.node.me h3{font-size:40px;color:var(--navy)}
.node .role{font-size:15px;color:var(--ink-2);margin-top:6px;line-height:1.6}
.node.me .role{font-size:17px;color:var(--ink)}
.node .cr{font-size:11px;color:var(--ink-2);margin-top:6px;opacity:.75}
.link{position:relative;height:168px;display:flex;align-items:center;justify-content:center}
.link svg{width:100%;height:20px;overflow:visible}
.link .lb{position:absolute;top:50px;left:0;right:0;text-align:center;font-size:14px;color:var(--navy);font-weight:500}
.link.l2{height:168px}
.presi{margin-top:56px;display:grid;grid-template-columns:1fr 1fr 2.2fr 1.25fr;border-top:1px solid var(--ink);font-size:15px}
.presi div{padding:14px 10px;border-right:1px solid var(--line)}
.presi div:last-child{border-right:0;font-weight:700;color:var(--navy)}
.presi .gap{color:var(--ink-2);text-align:center;background:repeating-linear-gradient(90deg,transparent 0 6px,var(--line) 6px 7px)}
.presi b{display:block;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:20px;color:inherit}
.hq{margin-top:56px;font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;line-height:1.9;text-align:center;color:var(--ink);max-width:900px;margin-left:auto;margin-right:auto}
.hq small{display:block;font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;font-size:15px;color:var(--ink-2);margin-top:10px}
.hist{margin-top:56px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--ink-2)}
.hist b{color:var(--ink);font-weight:500;margin-right:14px}
.hist span{margin-right:22px;white-space:nowrap;display:inline-block;line-height:2}
.pubs .wrap{padding-top:88px;padding-bottom:88px}
.pubs h2{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:40px;color:var(--ink);font-weight:700}
.pub{display:grid;grid-template-columns:120px minmax(0,1fr);gap:32px;padding:30px 0;border-bottom:1px solid var(--line)}
.pub:first-of-type{border-top:1px solid var(--ink);margin-top:30px}
.pub .yr{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:26px;color:var(--ink-2)}
.pub h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:24px;line-height:1.45;color:var(--ink)}
.pub .meta{margin-top:6px;font-size:15px;color:var(--ink-2)}
.pub p{margin-top:10px;font-size:17px;color:var(--ink);max-width:820px}
.pubmore{margin-top:26px;display:flex;gap:28px;font-size:16px}
.pubmore a{color:var(--navy);border-bottom:1px solid var(--navy)}
.h3x .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:end;padding-top:88px;padding-bottom:72px}
.h3x .txt{min-width:0;padding-bottom:6px}
.h3x .nm{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-weight:700;font-size:76px;line-height:1.1;color:var(--ink);letter-spacing:-1px}
.h3x .en{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:20px;color:var(--ink-2);margin-top:10px;letter-spacing:.5px}
.h3x .aff{font-size:16px;color:var(--ink-2);margin-top:4px}
.h3x .intro{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:30px;line-height:1.55;color:var(--ink);margin-top:44px;font-weight:500}
.h3x .sub2{font-size:17px;line-height:1.85;color:var(--ink-2);margin-top:16px;max-width:520px}
.h3x .key{margin-top:30px;font-size:15px;color:var(--ink);line-height:1.9}
.h3x .key span{color:var(--ink-2)}
.h3x .tl{margin-top:22px;display:flex;gap:26px;font-size:15px}
.h3x .tl a{color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:1px}
.h3x .pic{min-width:0}
.h3x .pic img{width:100%;aspect-ratio:4/4.7;object-fit:cover;object-position:56% 20%}
.h3x .wrap{align-items:stretch;grid-template-areas:"idb pic" "bod pic";grid-template-rows:auto 1fr;row-gap:0}
.h3x .idb{grid-area:idb;min-width:0}
.h3x .bod{grid-area:bod;min-width:0;padding-bottom:6px}
.h3x .pic{grid-area:pic}
.nw{white-space:nowrap}
.h3x .pic img{height:100%;min-height:560px;aspect-ratio:auto}
.lin .wrap{padding-top:88px;padding-bottom:88px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start;border-top:1px solid var(--line)}
.lin h2{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:32px;font-weight:700;color:var(--ink)}
.lin .body{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:19px;line-height:1.95;color:var(--ink);margin-top:22px}
.lin blockquote{margin-top:30px;padding-left:20px;border-left:1px solid var(--ink-2);font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:17px;line-height:1.9;color:var(--ink-2)}
.lin blockquote cite{display:block;font-style:normal;font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;font-size:13px;margin-top:8px}
.ppl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.per{min-width:0}
.per .yr{font-size:13px;color:var(--ink-2);letter-spacing:1px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:14px}
.per img{width:100%;max-width:170px;aspect-ratio:3/4;object-fit:cover;object-position:50% 22%;filter:grayscale(100%);background:var(--paper-2)}
.per .cr{font-size:11px;color:var(--ink-2);margin-top:6px;min-height:15px;line-height:1.35}
.per h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;color:var(--ink);margin-top:10px}
.per p{font-size:14px;color:var(--ink-2);line-height:1.75;margin-top:6px}
.prs .wrap{padding-top:80px;padding-bottom:80px}
.prs h2{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:32px;font-weight:700;color:var(--ink)}
.prs .lead2{font-size:16px;color:var(--ink-2);margin-top:10px}
.art{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;padding:26px 0;border-bottom:1px solid var(--line)}
.art:first-of-type{border-top:1px solid var(--ink);margin-top:28px}
.art .dm{font-size:14px;color:var(--ink-2);line-height:1.7}
.art .dm .o{display:block;color:var(--ink);font-weight:500}
.art h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;line-height:1.5;font-weight:700}
.art h3 a{color:var(--ink)}
.art h3 a:hover{color:var(--navy);text-decoration:underline}
.art p{font-size:16px;color:var(--ink);margin-top:8px;max-width:780px}
.art .role{font-size:13px;color:var(--ink-2);margin-top:8px}
.art .rd{margin-top:10px;font-size:14px;display:flex;gap:20px;flex-wrap:wrap}
.art .rd a{color:var(--navy);border-bottom:1px solid var(--navy)}
.art.top h3{font-size:26px}
.orig{display:none}
html[lang=en] .orig{display:block;font-size:13px;color:var(--ink-2);margin-top:4px}
.lang-en .orig{display:block;font-size:13px;color:var(--ink-2);margin-top:4px}
.lang-ko .orig{display:none!important}
.ext{display:inline-block;margin-top:10px;font-size:14px;color:var(--navy);border-bottom:1px solid var(--navy)}
.list li .ext{display:block;width:max-content;margin-top:6px}
.exts{display:flex;flex-wrap:wrap;gap:6px 24px}
.list li .exts .ext{display:inline-block}
.list li .y{font-variant-numeric:tabular-nums;letter-spacing:.2px;line-height:1.7}
.list li .t{font-weight:500;line-height:1.6;color:var(--ink)}
.list li .t small{font-weight:400;font-size:14.5px;margin-top:4px;line-height:1.65}
.list li .ext{font-weight:400}
.toc{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;font-size:15px;line-height:1.6}
.toc .toc-h{width:100%;font-size:13px;letter-spacing:1px;color:var(--ink-2);margin-bottom:2px}
.toc a{color:var(--navy);border-bottom:1px solid var(--line)}
.toc a:hover{border-bottom-color:var(--navy)}
a:focus-visible,button:focus-visible{outline:2px solid var(--navy);outline-offset:3px;border-radius:2px}
nav.menu a:focus-visible{outline-offset:-2px}
body{overflow-wrap:break-word}
.ext,.toc a{overflow-wrap:anywhere}
.h3x .hc{margin-top:30px;border-top:1px solid var(--line)}
.h3x .hc .g{display:grid;grid-template-columns:minmax(52px,max-content) minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.h3x .hc .k{font-size:13px;font-weight:700;color:var(--ink-2);letter-spacing:1px;padding-top:3px}
.h3x .hc li{list-style:none;font-size:15px;line-height:1.6;color:var(--ink)}
.h3x .hc li+li{margin-top:5px}
.h3x .hc li span{color:var(--ink-2);font-size:14px;margin-left:6px;white-space:nowrap}
.pub .kk,.rep .kk{font-size:14px;color:var(--ink-2);letter-spacing:.5px;margin-bottom:6px}
.pub h3 a{color:var(--ink)}
.pub h3 a:hover{color:var(--navy);text-decoration:underline}
.pub .sub,.rep .sub{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:17px;color:var(--ink-2);margin-top:2px}
.pub .exts{margin-top:12px}
.rep{padding:34px 0;border-bottom:1px solid var(--line)}
.rep:first-of-type{border-top:1px solid var(--ink);padding-top:30px}
.rep h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:25px;line-height:1.45;color:var(--ink)}
.rep .meta{margin-top:8px;font-size:15px;color:var(--ink-2)}
.rep .prose{margin-top:18px;font-size:17px;line-height:1.95}
.rep .prose p+p{margin-top:14px}
.rep .exts{margin-top:16px}
.lin .fact{margin-top:18px;font-size:15px;line-height:1.85;color:var(--ink-2)}
.bks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.bk{display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;align-items:start}
.bk .cv{display:block}
.bk img{width:100%;height:auto;display:block}
.bk h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:22px;line-height:1.45;color:var(--ink)}
.bk .meta{margin-top:8px;font-size:14px;color:var(--ink-2);line-height:1.75}
.bk .meta span{display:block}
.bk p{margin-top:14px;font-size:16px;line-height:1.9;color:var(--ink)}
.bkf .bk{grid-template-columns:220px minmax(0,1fr);gap:40px;padding:34px 0;border-bottom:1px solid var(--line)}
.bkf .bk:first-child{border-top:1px solid var(--ink)}
.bkf .bk h3{font-size:26px}
.bkf .bk p{max-width:640px;font-size:17px}
.vid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:start}
.vid .th{display:block}
.vid img{width:100%;aspect-ratio:16/9;object-fit:cover}
.vid .meta{font-size:14px;color:var(--ink-2)}
.vid h3{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:28px;color:var(--ink);margin-top:10px;line-height:1.4}
.vid .st{font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:18px;color:var(--ink-2);margin-top:4px}
.vid p{margin-top:16px;color:var(--ink-2)}
.vid blockquote{margin-top:20px;padding-left:18px;border-left:1px solid var(--ink-2);font-family:'Noto Serif KR','Nanum Myeongjo','AppleMyungjo','Batang','바탕',Georgia,serif;font-size:17px;line-height:1.85;color:var(--ink)}
.vid blockquote cite{display:block;font-style:normal;font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic','맑은 고딕','Segoe UI',Arial,sans-serif;font-size:13px;margin-top:6px;color:var(--ink-2)}
.vid .exts{margin-top:14px}
.vid .rel{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:15px;color:var(--ink-2);line-height:1.8}
.vid .rel span{display:block;font-size:13px;color:var(--ink-2)}
.vid .rel .ext{margin-top:4px}
.fbottom{margin-top:48px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);font-size:13px;opacity:.7;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media screen and (max-width:860px){
  body{overflow-x:hidden}
  .wrap{padding:0 20px}
  nav.menu{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;flex-direction:column;gap:0;border-bottom:1px solid var(--line)}
  nav.menu.open{display:flex}
  nav.menu{max-height:calc(100vh - 76px);max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  nav.menu a{flex:none}
  nav.menu a{padding:14px 20px;border-top:1px solid var(--line)}
  .menu-toggle{display:block;background:none;border:1px solid var(--line);padding:10px 16px;min-height:44px;min-width:44px;font-size:15px;color:var(--navy);font-family:inherit}
  .hero2 .wrap{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:36px;padding-bottom:52px}
  .h1a{font-size:26px}.h1b{font-size:64px}.sub{font-size:19px}
  .hero2 .pic img{min-height:0;aspect-ratio:4/3.4}
  .creds li{flex-direction:column;gap:2px}
  .heir .wrap{padding-top:60px;padding-bottom:60px}
  .heir h2{font-size:32px}.heir .p{font-size:17px}
  .chain{grid-template-columns:minmax(0,1fr);gap:0}
  .link,.link.l2{height:64px}.link svg{transform:rotate(90deg);width:40px}
  .link .lb{top:auto;left:50%;right:auto;margin-left:26px;text-align:left}
  .node .face{margin-top:0}
  .node.me .face{width:136px;height:136px;border-radius:68px}
  .presi{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .presi div{border-bottom:1px solid var(--line)}
  .presi .gap{grid-column:1/-1}
  .hq{font-size:18px}
  .pubs .wrap{padding-top:56px;padding-bottom:56px}
  .pub{grid-template-columns:minmax(0,1fr);gap:4px}
  .pub h3{font-size:21px}
  .h3x .wrap{grid-template-columns:minmax(0,1fr) minmax(0,40%);grid-template-areas:"idb pic" "bod bod";grid-template-rows:auto auto;column-gap:18px;row-gap:28px;padding-top:32px;padding-bottom:44px}
  .h3x .idb{align-self:end;padding-bottom:2px}
  .h3x .nm{font-size:clamp(40px,13vw,58px)}
  html[lang="en"] .h3x .nm{font-size:clamp(30px,9.4vw,50px);line-height:1.08}
  .h3x .aff{font-size:14.5px;line-height:1.55;margin-top:8px}
  html[lang="ko"] .h3x .aff{max-width:10.8em}
  .h3x .intro{font-size:22px;margin-top:0}
  .h3x .sub2{font-size:16.5px}
  .h3x .pic img{aspect-ratio:4/5;height:auto;min-height:0;object-position:67% 0%}
  .h3x .tl{flex-wrap:wrap;gap:4px 24px}
  .h3x .tl a{display:inline-flex;align-items:center;min-height:44px;border-bottom:0;text-decoration:underline;text-underline-offset:5px}
  .h3x .hc li{font-size:15.5px}
  .toc a{padding:10px 0;display:inline-block;border-bottom:0;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}
  .lin .wrap{grid-template-columns:minmax(0,1fr);gap:36px;padding-top:56px;padding-bottom:56px}
  .lin .body{font-size:17px}
  .ppl{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--line)}
  .per{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
  .per .yr{grid-column:1/-1;border:0;padding:0;margin:0 0 10px}
  .per img{grid-column:1;grid-row:2/span 3;width:104px;max-width:none}
  .per .cr{grid-column:1;grid-row:5;min-height:0;font-size:11px}
  .per h3{grid-column:2;grid-row:2;margin-top:0;font-size:21px}
  .per p{grid-column:2;grid-row:3;font-size:15px;line-height:1.7}
  .art{grid-template-columns:minmax(0,1fr);gap:6px}
  .art h3,.art.top h3{font-size:19px}
  .prs .wrap{padding-top:52px;padding-bottom:52px}
  .hero .wrap{grid-template-columns:minmax(0,1fr);gap:36px;padding-top:36px;padding-bottom:48px}
  .photo{order:-1;margin-left:14px;width:calc(100% - 14px)}
  h1.slogan{font-size:40px;margin-top:18px}
  .band .wrap{grid-template-columns:minmax(0,1fr);gap:14px;padding-top:44px;padding-bottom:44px}
  .band p{font-size:22px}
  section.block .wrap{padding-top:48px;padding-bottom:48px}
  .lineage{grid-template-columns:minmax(0,1fr);gap:34px}
  .lineage::before{display:none}
  .three,.cols2,.poems,.cards,.news,.vid,.bks{grid-template-columns:minmax(0,1fr)}
  .bk{grid-template-columns:112px minmax(0,1fr);gap:20px}
  .bkf .bk{grid-template-columns:minmax(0,1fr);gap:18px}
  .bkf .bk .cv{width:160px}
  .bkf .bk h3{font-size:21px}
  .rep h3{font-size:21px}
  .h3x .hc .g{grid-template-columns:minmax(40px,max-content) minmax(0,1fr);gap:12px}
  .vid{gap:24px}
  .cell{padding:0;border-left:0;border-top:1px solid var(--line);padding-top:26px;margin-top:26px}
  .cell:first-child{border-top:0;padding-top:0;margin-top:0}
  .list li{grid-template-columns:minmax(0,1fr);gap:4px}
  .poem{padding:28px 22px}
  .page-head h1{font-size:34px}
  .fcols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fcols .fc{grid-column:1/-1}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat{border-bottom:1px solid var(--line)}
  .stat b{font-size:36px}
}
@media print{
  @page{size:A4;margin:12mm}
  header.top{position:static}
  .menu-toggle{display:none}
  nav.menu{display:flex!important;position:static;flex-direction:row;gap:14px;font-size:11px;border:0}
  nav.menu a{padding:0;border:0}
  .hero .wrap{grid-template-columns:1.15fr 1fr!important;gap:24px;padding-top:22px!important;padding-bottom:22px!important}
  .photo{order:0!important;margin-left:0!important;width:auto!important}
  .photo img{aspect-ratio:4/4.6;max-height:115mm}
  h1.slogan{font-size:34px!important;margin-top:14px}
  .who{font-size:14px;margin-top:18px}
  .who b{font-size:20px}
  .cta{display:none}
  .band .wrap{padding-top:22px!important;padding-bottom:22px!important}
  .band p{font-size:18px!important}
  section.block .wrap{padding-top:26px!important;padding-bottom:26px!important}
  .sec-title{font-size:24px}
  .lineage{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .lineage::before{display:block!important}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .card,.gen,.poem,.list li,.news,.vid,.quote-sm,.cell,.timeline,.fcols>div{break-inside:avoid;page-break-inside:avoid}
  .sec-title,.page-head{break-after:avoid;page-break-after:avoid}
  .pg{break-before:page;page-break-before:always}
  .pg:first-of-type{break-before:auto;page-break-before:auto}
  section.band,section.hero{break-inside:avoid;page-break-inside:avoid}
  .sec-title,.lead,.page-head{break-after:avoid-page;page-break-after:avoid}
  .sec-title{break-inside:avoid;padding-bottom:42mm;margin-bottom:-42mm}
  .keep+*,.sec-title+*,.lead+*{break-before:avoid-page;page-break-before:avoid}
  .news{grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr)!important;gap:24px}
  .news.rec{grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr)!important;gap:32px}
  .news.rec img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
  .news{align-items:start}
  .vid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:32px}
  .poems{display:block!important;column-count:2;column-gap:20px;column-fill:balance}
  .poems .poem{display:inline-block;width:100%;margin:0 0 18px}
  .poem{padding:22px 20px}
  .poem pre{font-size:17px;line-height:1.8}
  .three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .cell{border-left:1px solid var(--line)!important;border-top:0!important;padding:0 14px!important;margin-top:0!important}
  .cell:first-child{border-left:0!important;padding-left:0!important}
  footer.site{break-inside:avoid}
  .toc{display:none}
  /* 인쇄: 화면용 배치를 A4에 맞게 축소하고 웹용 큰 여백만 줄인다 */
  html{zoom:.72}
  .h3x .wrap{padding-top:28px;padding-bottom:28px;gap:48px}
  .h3x .intro{margin-top:28px}
  .pubs .wrap,.lin .wrap,.prs .wrap{padding-top:36px;padding-bottom:36px}
  .page-head .wrap{padding-top:36px;padding-bottom:30px}
  .pub{padding:20px 0}.art{padding:18px 0}
  .list li{padding:9px 4px}
  .list li .t{line-height:1.5}
  .list li .t small{margin-top:2px;line-height:1.5}
  .list li .y{line-height:1.5}
  .pubs h2,.prs h2,.lin h2,.vid h3,.news h3,.pub h3,.art h3,.poem h3,.card h3,.cell h3,h3.h{break-after:avoid;page-break-after:avoid}
  .pubs h2,.prs h2{break-inside:avoid;padding-bottom:36mm;margin-bottom:-36mm}
  .pub,.art,.lin .wrap>div,.bk{break-inside:avoid;page-break-inside:avoid}
  .rep h3,.rep .kk,.rep .meta{break-after:avoid;page-break-after:avoid}
  .prose p{orphans:3;widows:3}
  .prose p:nth-last-of-type(2),.prose .sign{break-inside:avoid}
  .prose .sign{break-before:avoid;page-break-before:avoid}
}
