/* 천안포스트 (天安포스트) — 천안 종합 일간지 / Classic Broadsheet Edition */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Noto Serif KR',serif;background:#FFFEF9;color:#1A1A1A;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.sans{font-family:'Noto Sans KR',sans-serif}

/* Top util bar */
.util{background:#1A1A1A;color:#999;font-size:11px;padding:7px 24px;display:flex;justify-content:space-between;font-family:'Noto Sans KR',sans-serif;letter-spacing:0.02em}
.util-l{display:flex;gap:18px}
.util a:hover{color:#FFF}

/* Masthead */
.mast{background:#FFFEF9;border-bottom:5px double #1A1A1A;padding:32px 24px 24px;text-align:center}
.mast-sub{font-family:'Noto Sans KR',sans-serif;font-size:11px;letter-spacing:0.4em;color:#666;margin-bottom:10px;text-transform:uppercase;font-weight:600}
.mast h1{font-family:'Noto Serif KR',serif;font-size:80px;font-weight:900;letter-spacing:-3px;line-height:0.95;color:#1A1A1A;cursor:pointer}
.mast h1 a{color:inherit}
.mast-bot{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#666;letter-spacing:0.04em;margin-top:18px;align-items:center}
.mast-bot-l{text-align:right}
.mast-bot-c{font-weight:700;color:#1A1A1A;font-size:12px;letter-spacing:0.06em;padding:0 24px;border-left:1px solid #DDD;border-right:1px solid #DDD}
.mast-bot-r{text-align:left}

/* Category nav */
.cat-bar{background:#FFFEF9;border-bottom:1px solid #1A1A1A;position:sticky;top:0;z-index:50}
.cat-nav{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;justify-content:center;font-family:'Noto Sans KR',sans-serif;font-size:14px;font-weight:700;overflow-x:auto;scrollbar-width:none}
.cat-nav::-webkit-scrollbar{display:none}
.cat-nav a{padding:14px 18px;color:#1A1A1A;border-right:1px solid #E0E0E0;white-space:nowrap}
.cat-nav a:first-child{border-left:1px solid #E0E0E0}
.cat-nav a:hover{background:#1A1A1A;color:#FFFEF9}
.cat-nav a.active{background:#1A1A1A;color:#FFFEF9}

/* Wrap */
.wrap{max-width:1240px;margin:0 auto;padding:32px 24px}

/* AI image badge */
.ai-badge{position:absolute;top:6px;right:6px;background:rgba(0,0,0,0.35);color:#FFF;font-family:'Noto Sans KR',sans-serif;font-size:8px;font-weight:600;letter-spacing:0.04em;padding:1px 5px;border-radius:2px;display:inline-block;z-index:2;opacity:0.7}

/* === HOME PAGE === */
.main{display:grid;grid-template-columns:2fr 1fr;gap:36px}

/* Top lead */
.lead{padding-bottom:32px;border-bottom:1px solid #DDD;margin-bottom:32px}
.lead-meta{font-family:'Noto Sans KR',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.25em;color:#8B0000;text-transform:uppercase;margin-bottom:14px}
.lead-meta strong{color:#1A1A1A;letter-spacing:0.1em}
.lead h2{font-family:'Noto Serif KR',serif;font-size:52px;font-weight:900;line-height:1.05;letter-spacing:-2.5px;margin-bottom:18px;color:#1A1A1A}
.lead h2 a:hover{color:#8B0000}
.lead-deck{font-family:'Noto Serif KR',serif;font-size:20px;color:#444;line-height:1.5;margin-bottom:20px;font-style:italic;font-weight:400}
.lead-img-wrap{position:relative;margin-bottom:10px}
.lead-img{width:100%;aspect-ratio:21/9;background:#E5E5E0;display:block;object-fit:cover;object-position:center}
.lead-cap{font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#888;margin-bottom:18px;padding-left:8px;border-left:2px solid #8B0000}
.lead-by{font-family:'Noto Sans KR',sans-serif;font-size:12px;color:#666;margin-bottom:20px;letter-spacing:0.02em;border-top:1px dotted #DDD;border-bottom:1px dotted #DDD;padding:10px 0}
.lead-by strong{color:#1A1A1A;font-weight:700}
.lead-body{font-size:16px;line-height:1.85;color:#222;column-count:2;column-gap:32px;text-align:justify}
.lead-body p{margin-bottom:14px}
.lead-body p:first-child::first-letter{font-family:'Noto Serif KR',serif;font-size:62px;font-weight:900;float:left;line-height:0.9;padding:8px 10px 0 0;color:#8B0000}
.lead-body strong{font-weight:700;color:#1A1A1A}

/* Section */
.sec{padding:24px 0 32px;border-bottom:1px solid #DDD;margin-bottom:32px}
.sec:last-child{border-bottom:none}
.sec-h{font-family:'Noto Serif KR',serif;font-size:30px;font-weight:900;letter-spacing:-1px;border-bottom:3px double #1A1A1A;padding-bottom:10px;margin-bottom:20px;display:inline-block;padding-right:24px}

.sec-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.art{}
.art-img-wrap{position:relative;margin-bottom:12px}
.art-img{width:100%;aspect-ratio:16/9;display:block;object-fit:cover;object-position:center;background:#E5E5E0}
.art-cat{font-family:'Noto Sans KR',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.25em;color:#8B0000;text-transform:uppercase;margin-bottom:8px}
.art h3{font-family:'Noto Serif KR',serif;font-size:24px;font-weight:900;line-height:1.25;letter-spacing:-0.8px;margin-bottom:8px}
.art h3 a:hover{color:#8B0000}
.art-deck{font-size:14px;color:#555;line-height:1.6;margin-bottom:8px}
.art-by{font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#888;letter-spacing:0.02em}

/* Brief list */
.briefs{display:grid;grid-template-columns:1fr 1fr;gap:0 36px}
.brief{padding:14px 0;border-bottom:1px solid #EEE}
.brief-cat{font-family:'Noto Sans KR',sans-serif;font-size:10px;font-weight:700;letter-spacing:0.2em;color:#8B0000;text-transform:uppercase;margin-bottom:4px}
.brief h3{font-family:'Noto Serif KR',serif;font-size:17px;font-weight:700;line-height:1.4;margin-bottom:4px}
.brief h3 a:hover{color:#8B0000}
.brief-meta{font-family:'Noto Sans KR',sans-serif;font-size:10px;color:#999}

/* Aside */
.aside-w{margin-bottom:36px}
.aside-h{font-family:'Noto Serif KR',serif;font-size:18px;font-weight:900;letter-spacing:-0.4px;border-bottom:3px double #1A1A1A;padding-bottom:8px;margin-bottom:14px}
.aside-h em{font-style:italic;color:#8B0000}

.rank-i{padding:11px 0;border-bottom:1px solid #EEE;display:flex;gap:12px;align-items:flex-start}
.rank-i:last-child{border-bottom:none}
.rank-n{font-family:'Noto Serif KR',serif;font-size:20px;font-weight:900;color:#8B0000;width:24px;line-height:1.2;flex-shrink:0}
.rank-i.rest .rank-n{color:#AAA}
.rank-b{flex:1}
.rank-b h4{font-family:'Noto Serif KR',serif;font-size:14px;font-weight:600;line-height:1.45;color:#1A1A1A}
.rank-b h4 a:hover{color:#8B0000}
.rank-b-meta{font-family:'Noto Sans KR',sans-serif;font-size:10px;color:#999;margin-top:2px}

.editorial{background:#F4F0E5;padding:24px;margin-bottom:24px;border-left:5px solid #8B0000}
.editorial-tag{font-family:'Noto Sans KR',sans-serif;font-size:10px;font-weight:800;letter-spacing:0.3em;color:#8B0000;text-transform:uppercase;margin-bottom:10px}
.editorial h4{font-family:'Noto Serif KR',serif;font-size:22px;font-weight:900;line-height:1.3;letter-spacing:-0.5px;margin-bottom:8px}
.editorial p{font-size:13px;color:#555;line-height:1.6;margin-bottom:10px}
.editorial-author{font-family:'Noto Sans KR',sans-serif;font-size:11px;font-style:italic;color:#666}

.archive{font-family:'Noto Sans KR',sans-serif;background:#F8F5EC;padding:18px 20px;border:1px solid #E5DFD0;margin-bottom:24px}
.archive-h{font-size:12px;font-weight:800;color:#1A1A1A;letter-spacing:0.1em;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #1A1A1A}
.archive-it{font-size:12px;padding:7px 0;border-bottom:1px dashed #DDD;color:#555}
.archive-it:last-child{border-bottom:none}
.archive-it strong{font-family:'Noto Serif KR',serif;font-weight:700;color:#1A1A1A;display:block;margin-bottom:2px}

/* === ARTICLE PAGE === */
.article-wrap{max-width:880px;margin:0 auto;padding:36px 24px 60px}
.crumb{font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#888;letter-spacing:0.05em;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid #DDD}
.crumb a{color:#8B0000;font-weight:600}
.crumb a:hover{text-decoration:underline}

.art-head{margin-bottom:28px;text-align:center;padding-bottom:24px;border-bottom:3px double #1A1A1A}
.art-head .cat{font-family:'Noto Sans KR',sans-serif;font-size:11px;font-weight:800;letter-spacing:0.35em;color:#8B0000;text-transform:uppercase;margin-bottom:14px}
.art-head h1{font-family:'Noto Serif KR',serif;font-size:48px;font-weight:900;line-height:1.1;letter-spacing:-2px;margin-bottom:16px;color:#1A1A1A}
.art-deck-big{font-family:'Noto Serif KR',serif;font-size:21px;color:#444;line-height:1.5;margin-bottom:18px;font-style:italic;font-weight:400;max-width:740px;margin-left:auto;margin-right:auto}
.art-meta{font-family:'Noto Sans KR',sans-serif;font-size:12px;color:#666;letter-spacing:0.02em;border-top:1px dotted #DDD;border-bottom:1px dotted #DDD;padding:12px 0;display:flex;justify-content:center;gap:18px;flex-wrap:wrap}
.art-meta strong{color:#1A1A1A;font-weight:700}

.hero-img-wrap{position:relative;margin-bottom:14px}
.hero-img{width:100%;aspect-ratio:16/9;background:#E5E5E0;display:block;object-fit:cover;object-position:center}
.hero-cap{font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#888;margin-bottom:24px;padding-left:10px;border-left:2px solid #8B0000;line-height:1.5}

.body-text{font-size:17px;line-height:1.95;color:#222;text-align:justify}
.body-text p{margin-bottom:18px}
.body-text p:first-child::first-letter{font-family:'Noto Serif KR',serif;font-size:68px;font-weight:900;float:left;line-height:0.85;padding:8px 12px 0 0;color:#8B0000}
.body-text strong{font-weight:700;color:#1A1A1A}
.body-text h2{font-family:'Noto Serif KR',serif;font-size:24px;font-weight:900;letter-spacing:-0.6px;margin:32px 0 14px;padding-bottom:8px;border-bottom:1px solid #1A1A1A;color:#1A1A1A}
.body-text h2::before{content:'■ ';color:#8B0000}
.body-text blockquote{margin:24px 0;padding:18px 24px;background:#F4F0E5;border-left:5px solid #8B0000;font-size:16px;line-height:1.7;color:#444}
.body-text blockquote .by{display:block;font-family:'Noto Sans KR',sans-serif;font-size:12px;color:#666;margin-top:6px;font-style:italic}
.body-text ul,.body-text ol{margin:14px 0 18px;padding-left:28px}
.body-text li{margin-bottom:6px}

.tags{margin-top:36px;padding-top:18px;border-top:1px solid #DDD;font-family:'Noto Sans KR',sans-serif;font-size:12px;color:#555}
.tags a{display:inline-block;padding:4px 12px;background:#F4F0E5;border:1px solid #E5DFD0;border-radius:3px;margin-right:6px;color:#8B0000;font-weight:600}
.tags a:hover{background:#8B0000;color:#FFF}

.related{margin-top:48px;padding-top:24px;border-top:3px double #1A1A1A}
.related h3{font-family:'Noto Serif KR',serif;font-size:18px;font-weight:900;letter-spacing:-0.4px;margin-bottom:18px}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.related-card{}
.related-card .ai-badge{top:6px;left:6px;font-size:9px;padding:3px 8px}
.related-img{width:100%;aspect-ratio:16/9;margin-bottom:8px;background:#E5E5E0}
.related-card .cat{font-family:'Noto Sans KR',sans-serif;font-size:10px;font-weight:700;letter-spacing:0.2em;color:#8B0000;text-transform:uppercase;margin-bottom:4px}
.related-card h4{font-family:'Noto Serif KR',serif;font-size:16px;font-weight:700;line-height:1.4;margin-bottom:4px}
.related-card h4 a:hover{color:#8B0000}
.related-card .by{font-family:'Noto Sans KR',sans-serif;font-size:11px;color:#888}

/* Footer */
.foot{background:#1A1A1A;color:#999;padding:40px 24px 24px;margin-top:48px;font-family:'Noto Sans KR',sans-serif;font-size:12px}
.foot-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-bottom:24px}
.foot h3{font-size:12px;font-weight:800;color:#FFF;margin-bottom:12px;letter-spacing:0.08em}
.foot li{padding:3px 0;list-style:none}
.foot a:hover{color:#FFF}
.foot-bottom{max-width:1240px;margin:24px auto 0;padding-top:20px;border-top:1px solid #333;font-size:11px;line-height:1.7;color:#777;position:relative}
.foot-bottom strong{display:block;font-family:'Noto Serif KR',serif;font-weight:900;color:#FFF;font-size:18px;margin-bottom:6px;letter-spacing:-0.5px}
.foot .ai-disclaimer{position:absolute;right:0;bottom:0;font-size:9px;color:#555;letter-spacing:0;line-height:1.4;text-align:right;max-width:260px;opacity:0.6}
.foot .ai-disclaimer strong{font-weight:600;color:#888;display:inline}
@media (max-width:1024px){.foot .ai-disclaimer{position:static;margin-top:10px;text-align:left;max-width:none}}

@media (max-width:1024px){
  .main{grid-template-columns:1fr}
  .lead h2{font-size:36px}
  .mast h1{font-size:52px}
  .lead-body{column-count:1}
  .sec-grid,.briefs{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .art-head h1{font-size:32px}
  .related-grid{grid-template-columns:1fr}
}
