/* 고유 배치·색상·상태만 정의한다. 글자 크기와 여백은 Naknes UI 유틸리티를 사용한다. */
.news-site { --black: #000; --gray-900: #111; --red: #e72116; --border-color: #e5e5e5; }
.news-site a { transition: background-color 0.25s, color 0.25s; }
.news-site a:hover { background-color: rgb(240, 233, 224); }
.news-site img { filter: contrast(1.05); }
.news-site nav a { display: block; }
.list-item { display: flex; gap: 15px; border-bottom: 1px solid rgb(238, 238, 238); }
.list-item:last-child { border-bottom: 0px; }
a.list-thumb { display: block; width: 120px; flex-shrink: 0; position: relative; overflow: hidden; background: rgb(240, 240, 240); }
a.list-thumb img { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; }
a.list-thumb:hover img { transform: scale(1.05); }
@media (max-width: 1024px) {
.list-item { border-bottom: 0px; }
}
@media (max-width: 768px) {
.list-item { border-bottom: 1px solid rgb(238, 238, 238); }
}
.newspaper-home { background: rgb(253, 252, 249); }
.front-page { box-sizing: border-box; max-width: 1440px; color: rgb(27, 27, 27); }
.front-page *, .front-page ::before, .front-page ::after { box-sizing: border-box; }
.front-page a { color: inherit; text-decoration: none; }
.front-page a:hover { color: rgb(172, 36, 29); background: transparent; }
.front-page a:focus-visible { outline: rgb(172, 36, 29) solid 2px; outline-offset: 4px; }
.section-kicker { display: flex; justify-content: space-between; color: rgb(166, 37, 32); }
.article-meta { font-size: 13px; color: rgb(129, 125, 117); line-height: 1.6; }
.news-photo { background: rgb(238, 236, 230); }
.news-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.35s; }
.news-photo:hover img { transform: scale(1.025); }
.photo-placeholder { font-family: "Playfair Display", serif; color: rgb(153, 149, 138); }
.photo-placeholder span { font-family: sans-serif; }
.section-heading { border-top: 3px solid rgb(34, 34, 34); border-bottom: 1px solid rgb(215, 212, 205); padding: 11px 0px; }
.section-heading h2 { margin: 0px; font-size: 17px; font-weight: 800; letter-spacing: -0.04em; }
.section-heading h2 span { margin-left: 6px; font-size: 13px; font-family: "Playfair Display", serif; letter-spacing: 0.04em; color: rgb(129, 125, 117); }
.section-heading > a { font-size: 13px; white-space: nowrap; color: rgb(119, 115, 108); }
.front-page h3 { overflow-wrap: anywhere; }
.section-heading-wide { border-top: 0px; border-bottom: 2px solid rgb(34, 34, 34); }
.section-heading-wide h2 { font-family: "Noto Serif KR", serif; }
.people-photo { aspect-ratio: 3 / 2; }
.people-story .article-meta { justify-content: space-between; }
.category-label { color: rgb(166, 37, 32); }
.people-story h3 { font-family: "Noto Serif KR", serif; }
.feature-section { grid-template-columns: 1fr 1.4fr; background: rgb(32, 37, 34); color: rgb(248, 245, 236); }
.feature-copy .section-kicker { color: rgb(202, 185, 155); }
.feature-copy h2 { font-family: "Noto Serif KR", serif; }
.feature-copy p { color: rgb(195, 197, 189); }
.feature-copy > a { display: inline-block; border-bottom: 1px solid rgb(183, 173, 148); }
.front-page .feature-copy > a:hover { color: rgb(227, 202, 161); }
.feature-video iframe { width: 100%; height: 100%; border: 0px; }
.empty-news { color: rgb(129, 125, 117); }
@media (max-width: 767px) {
.people-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.section-heading-wide h2 span { display: block; }
.feature-section { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
.front-page a, .front-page img { transition: none; }
}
.newspaper-home { background: rgb(255, 255, 255); }
.front-topic-bar { border-bottom: 1px solid rgb(34, 34, 34); }
.front-topic-bar > div { display: flex; flex-wrap: wrap; align-items: center; }
.front-topic-bar > a { text-align: right; }
.front-topic-bar > a > span { color: rgb(206, 23, 29); }
.reference-grid { grid-template-columns: minmax(0px, 1fr) minmax(0px, 2fr) minmax(0px, 1.05fr); }
.reference-secondary { grid-area: 1 / 1; }
.secondary-story { border-bottom: 1px solid rgb(230, 230, 230); }
.secondary-story:last-child { border-bottom: 0px; }
.secondary-story h2 { margin: 0px 0px 10px; font-size: 21px; font-weight: 700; line-height: 1.6; letter-spacing: -0.045em; overflow-wrap: anywhere; }
.secondary-summary { color: rgb(144, 147, 153); }
.secondary-label { display: block; }
.reference-lead { grid-area: 1 / 2; }
.reference-lead h1 { text-align: center; overflow-wrap: anywhere; }
.reference-lead-summary { text-align: center; color: rgb(51, 51, 51); }
.reference-lead .article-meta { justify-content: center; }
.reference-opinion { grid-area: 1 / 3; border-left: 1px solid rgb(230, 230, 230); }
.opinion-story { border-bottom: 1px solid rgb(230, 230, 230); }
.opinion-story > div { flex: 1 1 0%; min-width: 0px; }
.opinion-label { color: rgb(168, 120, 49); }
.opinion-photo { flex: 0 0 64px; border-radius: 50%; }
@media (max-width: 1199px) {
.reference-grid { grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.8fr); }
.reference-opinion { grid-area: 2 / 1 / auto / 3; border-left: 0px; border-top: 1px solid rgb(221, 221, 221); }
.opinion-story { max-width: 100%; }
}
@media (max-width: 767px) {
.front-topic-bar > a { display: none; }
.front-topic-bar strong { width: 100%; }
.reference-grid { display: flex; flex-direction: column; }
.reference-lead { order: 0; }
.reference-secondary { order: 1; border-top: 1px solid rgb(221, 221, 221); }
.reference-opinion { order: 3; }
}
.reference-front .front-topic-bar { border-bottom: 1px solid rgb(184, 184, 184); }
.reference-front .front-topic-bar strong { font-family: "Noto Serif KR", serif; }
.edition-caption { color: rgb(136, 136, 136); }
.reference-front .front-topic-bar > a { color: rgb(51, 51, 51); }
.reference-front .front-topic-bar > a > span { color: inherit; }
.column-heading { box-sizing: border-box; border-bottom: 2px solid rgb(34, 34, 34); font-family: "Noto Serif KR", serif; }
.column-heading > a { display: flex; width: 100%; align-items: baseline; }
.column-heading span { color: rgb(136, 136, 136); font-family: "Playfair Display", serif; }
.reference-front .secondary-story h3 { font-family: "Noto Serif KR", serif; }
.reference-front .secondary-summary { color: rgb(118, 118, 118); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 8; overflow: hidden; }
.reference-front .reference-lead h1 { font-family: "Noto Serif KR", serif; text-wrap: pretty; }
.reference-front .reference-lead-summary { color: rgb(102, 102, 102); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.reference-front .opinion-story h3 { font-family: "Noto Serif KR", serif; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.reference-front .opinion-label { color: rgb(136, 136, 136); }
.reference-front .opinion-photo { border-radius: 0px; flex-basis: 72px; }
.people-section { border-top: 3px double rgb(34, 34, 34); }
@media (max-width: 767px) {
.reference-front .front-topic-bar strong { width: auto; }
.reference-front .front-topic-bar > a { display: block; }
.edition-caption { display: none; }
}
.photo-news-section { border-top: 3px double rgb(34, 34, 34); }
.photo-news-grid > article { min-width: 0px; }
.photo-news-grid .news-photo { aspect-ratio: 3 / 2; }
.photo-news-grid h3 { font-family: "Noto Serif KR", serif; }
.photo-news-grid h3, .people-story h3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.photo-news-grid > .empty-news { grid-column: 1 / -1; }
@media (max-width: 767px) {
.photo-news-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
.search-eyebrow { font-family: "Playfair Display", serif; font-size: 13px; letter-spacing: 0.1em; color: rgb(136, 136, 136); }
.search-result { border-bottom: 1px solid rgb(221, 221, 221); }
.search-result > a { display: flex; align-items: center; gap: 28px; padding: 25px 0px; }
.search-result img { width: 190px; height: 130px; flex-shrink: 0; object-fit: cover; }
.search-result-meta { display: flex; gap: 16px; flex-wrap: wrap; color: rgb(136, 136, 136); font-size: 13px; margin-bottom: 10px; }
.search-result-meta > span { color: rgb(139, 48, 41); }
.search-result h3 { font-family: "Noto Serif KR", serif; font-size: 21px; font-weight: 700; line-height: 1.6; letter-spacing: -0.035em; overflow-wrap: anywhere; margin: 0px 0px 10px; }
.search-result p { font-size: 14px; line-height: 1.8; color: rgb(119, 119, 119); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.search-result mark { color: rgb(139, 48, 41); background: rgb(247, 236, 232); }
.search-empty { padding: 55px 0px; text-align: center; font-size: 14px; color: rgb(119, 119, 119); line-height: 1.9; }
.search-empty h2, .search-empty h3 { color: rgb(34, 34, 34); font-size: 21px; margin-bottom: 12px; }
.search-empty a { display: inline-block; margin-top: 20px; border-bottom: 1px solid rgb(51, 51, 51); font-size: 13px; }
@media (max-width: 768px) {
.search-eyebrow { display: none; }
.search-result > a { gap: 15px; padding: 20px 0px; }
.search-result img { width: 100px; height: 80px; }
.search-result h3 { font-size: 16px; }
.search-result p { font-size: 13px; }
.search-result-meta { gap: 8px; margin-bottom: 6px; }
}
.reference-front .secondary-summary { color: rgb(118, 118, 118); }
.reference-front .reference-lead-summary { color: rgb(102, 102, 102); }

.secondary-story:first-of-type { padding-top: 0; }
