@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css");

:root { --ink:#17212b; --paper:#f7f3e8; --paper-deep:#ece5d5; --brand:#183b4e; --brand-dark:#0d2837; --signal:#e94f37; --rule:#aeb7b3; --muted:#647077; --content-max:1280px; --article-max:720px; --display:"Pretendard Variable",Pretendard,sans-serif; --sans:"Pretendard Variable",Pretendard,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); }
a { color:inherit; text-decoration-thickness:.08em; text-underline-offset:.16em; }
img { display:block; width:100%; }
.shell { width:min(calc(100% - 40px),var(--content-max)); margin-inline:auto; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.skip-link { position:fixed; z-index:99; top:8px; left:8px; padding:10px 14px; background:white; transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
.utility-bar { color:#dce7e9; background:var(--brand-dark); font-size:.73rem; letter-spacing:.04em; }
.utility-inner { min-height:38px; display:flex; align-items:center; justify-content:space-between; }
.utility-search { display:flex; }
.utility-search input,.mobile-panel input { min-width:180px; padding:7px 10px; border:0; background:#fff; font:inherit; }
.utility-search button,.mobile-panel button { border:0; padding:7px 12px; color:white; background:var(--signal); font-weight:700; }
.masthead { min-height:132px; display:flex; align-items:flex-end; justify-content:space-between; padding-block:34px 22px; }
.wordmark { color:var(--brand); font-family:var(--display); font-size:clamp(2.2rem,6vw,4.6rem); font-weight:700; line-height:.88; letter-spacing:-.06em; text-decoration:none; }
.wordmark-kicker { display:block; margin-bottom:10px; color:var(--signal); font:800 .65rem/1 var(--sans); letter-spacing:.24em; }
.masthead-note { max-width:190px; margin:0 0 4px; color:var(--muted); text-align:right; font-family:var(--display); }
.primary-nav { color:white; background:var(--brand); border-bottom:4px solid var(--signal); }
.nav-inner { display:flex; align-items:stretch; }
.nav-inner>a { padding:14px 24px; border-right:1px solid rgb(255 255 255/.25); font-weight:700; text-decoration:none; }
.nav-inner>a:hover,.nav-inner>a:focus-visible { background:var(--signal); }
.mobile-menu { display:none; position:relative; margin-left:auto; }
.mobile-menu summary { cursor:pointer; padding:14px; font-weight:700; }
.mobile-panel { position:absolute; z-index:10; right:0; width:min(88vw,340px); padding:18px; background:var(--brand-dark); box-shadow:0 18px 40px rgb(0 0 0/.25); }
.mobile-panel a { display:block; padding:12px 0; border-bottom:1px solid rgb(255 255 255/.2); text-decoration:none; }
.mobile-panel form { display:flex; margin-top:18px; }
.topic-nav { border-bottom:1px solid var(--rule); background:var(--paper-deep); }
.topic-inner { display:flex; gap:22px; overflow-x:auto; padding-block:10px; white-space:nowrap; font-size:.78rem; }
.topic-inner span { color:var(--signal); font-weight:900; }
.topic-inner a { text-decoration:none; }
.news-home,.section-page { padding-block:clamp(36px,7vw,82px); }
.editorial-container { border-top:9px solid var(--brand); }
.container-header { display:flex; align-items:end; justify-content:space-between; padding:14px 0 18px; border-bottom:1px solid var(--ink); }
.container-header>div { display:flex; gap:14px; align-items:baseline; }
.container-header span,.page-heading>span { color:var(--signal); font-weight:900; font-size:.72rem; letter-spacing:.16em; }
.container-header h1 { margin:0; font-family:var(--display); font-size:clamp(1.7rem,4vw,2.8rem); }
.container-header p { margin:0; color:var(--muted); font-family:var(--display); }
.lead-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); }
.lead-slot { grid-row:span 3; border-right:1px solid var(--rule); }
.support-slot { border-bottom:1px solid var(--rule); }
.story-card { position:relative; min-width:0; }
.story-card a { text-decoration:none; }
.story-card h2,.story-card h3 { margin:0; font-family:var(--display); letter-spacing:-.035em; word-break:keep-all; overflow-wrap:anywhere; }
.story-card a:hover { text-decoration:underline; }
.story-copy { padding:18px; }
.eyebrow { display:block; margin-bottom:8px; color:var(--signal); font-size:.72rem; font-weight:900; letter-spacing:.08em; }
.story-card time { display:block; margin-top:16px; color:var(--muted); font-size:.7rem; }
.story-media { display:block; overflow:hidden; background:var(--paper-deep); }
.story-media img { aspect-ratio:16/9; object-fit:cover; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.story-card:hover .story-media img { transform:scale(1.025); }
.story-card--lead h2 { max-width:16ch; font-size:clamp(2rem,4.1vw,4.5rem); line-height:1.08; }
.story-card--lead p { max-width:58ch; margin:18px 0 0; color:#48545a; font-family:var(--display); font-size:1.08rem; line-height:1.65; }
.story-card--horizontal { min-height:145px; display:grid; grid-template-columns:1fr minmax(100px,34%); }
.story-card--horizontal .story-media img { height:100%; aspect-ratio:auto; }
.story-card--horizontal h3 { font-size:clamp(1.08rem,1.8vw,1.45rem); line-height:1.28; }
.story-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ink); }
.story-card--standard { border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.story-card--standard h3 { font-size:1.3rem; line-height:1.3; }
.story-card--compact,.story-card--text { padding:16px; border-bottom:1px solid var(--rule); }
.empty-state { padding:70px 20px; color:var(--muted); text-align:center; background:var(--paper-deep); }
.page-heading { display:flex; gap:18px; align-items:baseline; padding-bottom:18px; border-top:9px solid var(--signal); border-bottom:1px solid var(--ink); }
.page-heading h1 { margin:14px 0 0; font-family:var(--display); font-size:clamp(2.4rem,7vw,5rem); }
.section-list { max-width:920px; }
.section-list .story-card--horizontal { grid-template-columns:1fr minmax(180px,32%); border-bottom:1px solid var(--rule); }
.article-page { padding-bottom:90px; }
.article-header { padding-top:clamp(42px,8vw,96px); }
.article-section { color:var(--signal); font-size:.82rem; font-weight:900; }
.article-header h1 { max-width:1020px; margin:16px 0 24px; font-family:var(--display); font-size:clamp(2.7rem,7.5vw,6.5rem); line-height:1.08; letter-spacing:-.055em; word-break:keep-all; overflow-wrap:anywhere; }
.standfirst { max-width:820px; color:#45525a; font-family:var(--display); font-size:clamp(1.15rem,2.1vw,1.55rem); line-height:1.65; word-break:keep-all; }
.article-meta { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:32px; padding-top:14px; border-top:1px solid var(--rule); color:var(--muted); font-size:.75rem; }
.article-hero { margin-top:42px; }
.article-hero img { max-height:760px; object-fit:cover; }
.article-hero figcaption { padding-top:9px; color:var(--muted); font-size:.72rem; }
.article-hero figcaption span { float:right; }
.article-body { width:min(calc(100% - 40px),var(--article-max)); margin:58px auto 0; font-family:var(--display); font-size:1.12rem; line-height:1.95; word-break:keep-all; overflow-wrap:anywhere; }
.article-body p { margin:0 0 1.65em; }
.article-body h2,.article-body h3 { margin:2.2em 0 .7em; line-height:1.35; }
.article-body blockquote { margin:2em -60px; padding:16px 0 16px 28px; border-left:7px solid var(--signal); color:var(--brand); font-size:1.35rem; }
.article-footer { width:min(calc(100% - 40px),var(--article-max)); margin:48px auto 0; padding-top:20px; border-top:3px solid var(--brand); }
.article-footer span { display:inline-block; margin:0 8px 8px 0; padding:7px 10px; background:var(--paper-deep); font-size:.78rem; }
.site-footer { margin-top:70px; padding:48px 0; color:#dce7e9; background:var(--brand-dark); border-top:7px solid var(--signal); }
.footer-grid { display:flex; justify-content:space-between; gap:40px; }
.footer-grid strong { color:white; font:700 1.5rem var(--display); }
.footer-grid p { color:#9fb0b7; }
.footer-grid nav { display:flex; gap:22px; }
@media (max-width:1023px) { .lead-layout{grid-template-columns:1.45fr 1fr} .story-grid{grid-template-columns:repeat(2,1fr)} .story-card--lead h2{font-size:clamp(2rem,5vw,3.5rem)} }
@media (max-width:639px) {
  .shell{width:min(calc(100% - 24px),var(--content-max))} .utility-search,.masthead-note,.nav-inner>a,.topic-inner span{display:none} .utility-inner{justify-content:flex-end}
  .masthead{min-height:105px;padding-block:24px 17px}.wordmark{font-size:clamp(2.05rem,12vw,3rem)}.mobile-menu{display:block}.topic-inner{gap:18px}
  .news-home,.section-page{padding-block:34px}.container-header{align-items:flex-start}.container-header p{display:none}.lead-layout{display:block}.lead-slot{border-right:0;border-bottom:4px solid var(--brand)}
  .story-card--lead .story-copy{padding-inline:4px}.story-card--lead h2{font-size:2.35rem}.story-card--lead p{font-size:1rem}
  .story-card--horizontal{min-height:128px;grid-template-columns:1fr minmax(105px,34%)}.story-card--horizontal .story-copy{padding-left:4px}.story-grid{grid-template-columns:1fr}
  .story-card--standard{display:grid;grid-template-columns:minmax(115px,35%) 1fr;border-right:0}.story-card--standard .story-copy{order:-1;padding-left:4px}
  .article-header h1{font-size:clamp(2.55rem,13vw,4rem);line-height:1.12}.standfirst{font-size:1.08rem;line-height:1.7}.article-hero{width:100%}.article-hero figcaption{padding-inline:12px}
  .article-body{width:calc(100% - 32px);margin-top:42px;font-size:1.04rem;line-height:1.9}.article-body blockquote{margin-inline:0}.footer-grid{display:block}.footer-grid nav{margin-top:30px;flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.story-media img{transition:none} }
