/* Japanese news hierarchy: generous text measure, compact but legible metadata. */
body{font-size:16px;line-height:1.75;line-break:strict;word-break:normal}
.wide{width:min(1320px,calc(100% - 48px))}
.page-grid{grid-template-columns:minmax(0,1fr) 250px;gap:32px}
.page-grid>*,.lead-grid>*,.source-entry>*{min-width:0}
.lead-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:24px;align-items:start}
.header nav{font-size:14px;gap:18px}.search-toggle{font-size:14px}
.themes .wide{font-size:13px}.badge{font-size:11px}
.hero-copy h1{font-size:32px;font-weight:750;line-height:1.5;letter-spacing:0}
.hero-copy p{font-size:16px;line-height:1.75;-webkit-line-clamp:3}
.hero-copy small,.hero-copy time{font-size:12px}
.hero,.hero-copy{min-height:430px}.hero-copy{padding:110px 24px 24px}
.flash-tabs{font-size:14px}.flash-row{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:12px 0}
.flash-row time{font-size:12px}.flash-row a{font-size:16px;font-weight:650;line-height:1.65;-webkit-line-clamp:3}
.flash-row .badge{float:none;font-size:10px;margin:0 0 3px;display:table}.flash-more{font-size:13px;margin-top:12px}
.section-heading h2{font-size:22px}.section-heading>a{font-size:13px}
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.cards .news-card:last-child{grid-column:auto}
.card-body h3{font-size:18px;line-height:1.65;font-weight:700}.card-body p{font-size:14px;line-height:1.8}.card-body small{font-size:11px}
.news-row{grid-template-columns:95px 74px minmax(0,1fr);column-gap:12px;padding:17px 0;align-items:start}
.news-row time{font-size:12px}.row-title{font-size:17px;font-weight:650;line-height:1.7}.row-source{grid-column:3;font-size:12px;margin-top:4px}.news-row .updated{grid-column:3}
.listing .row-title{font-size:18px}.filter-tabs{font-size:13px}
/* Keep each article in one list row. Extra marks must never shift its title. */
.news-list{display:block}
.news-row.article-news-row{grid-template-columns:95px minmax(0,1fr);grid-template-areas:"time badges" "time title" "time source" "time updated";gap:4px 16px}
.article-news-row>time{grid-area:time;white-space:nowrap}
.article-news-row>.row-badges{grid-area:badges;display:flex;flex-wrap:wrap;gap:4px 6px;min-width:0}
.article-news-row>.row-title{grid-area:title;min-width:0;overflow-wrap:anywhere}
.article-news-row>.row-source{grid-area:source;min-width:0;overflow-wrap:anywhere;margin-top:0}
.article-news-row>.updated{grid-area:updated}
.opinion-cards h3{font-size:20px;line-height:1.65}.opinion-cards p{font-size:15px}
.sidebar h2{font-size:17px}.brand-panel h2{font-size:21px}.brand-panel p,.market-panel p{font-size:13px}
.brand-panel a,.market-panel a{font-size:13px}.topic-panel b,.writer-panel b{font-size:14px}
.article-grid{grid-template-columns:minmax(0,820px) 250px;justify-content:space-between;gap:48px}
.article{width:100%;max-width:820px}.article>h1{font-size:36px;line-height:1.5;font-weight:750;letter-spacing:0;text-wrap:pretty}
.breadcrumb,.article-meta,.byline{font-size:12px}
.article-body,.article-summary p{font-size:18px;line-height:1.95;font-weight:400;overflow-wrap:break-word}
.article-body{max-width:42em}.article-body section{margin:28px 0}.article-body p{margin:0}
.article-summary{padding:18px 22px}.article-summary>b{font-size:13px}
.source-box{padding:18px 20px}.source-box h2{font-size:14px;margin:0 0 10px}
.market-article-links{margin-top:24px}.market-article-links h2{font-size:16px;margin:0 0 10px}.market-article-links .specialist-link{margin-top:8px;border-radius:6px;background:var(--wash)}.market-article-links>p{font-size:12px;color:var(--muted);line-height:1.7;margin:10px 0 0}
.source-box .source-entry{display:block;padding:12px 0;border-bottom:1px solid #e1e7ef}
.source-box .source-entry:last-of-type{border-bottom:0}
.source-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.source-box .source-publisher{font-size:13px;font-weight:650;line-height:1.7;overflow-wrap:anywhere}
.source-publisher span{white-space:nowrap;color:inherit;font-size:inherit}
.source-box .source-time{font-size:12px;line-height:1.7;white-space:nowrap;color:#586a7d}
.source-notices{margin-top:6px}.source-box .source-notices p{font-size:12px;line-height:1.8;margin:3px 0;color:#4f6073;overflow-wrap:anywhere}
.source-box .source-license{display:inline-block;font-size:12px;margin-top:3px}
.source-box>p{font-size:11px;line-height:1.8;margin:12px 0 0}
.verification{font-size:12px}.verification p{overflow-wrap:anywhere}
@media(max-width:1180px){
 .header{flex-wrap:wrap;gap:10px;padding-top:12px}.header nav{order:3;width:100%;overflow:auto;margin:0;gap:22px}.header nav a{padding:12px 0 9px}.search-toggle{margin-left:auto}
 .page-grid{grid-template-columns:minmax(0,1fr) 220px;gap:24px}.article-grid{gap:32px}
 .lead-grid{grid-template-columns:1fr}.hero,.hero-copy{min-height:360px}
 .flash-panel>div:nth-child(2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 .wide{width:calc(100% - 40px)}.page-grid,.article-grid{grid-template-columns:minmax(0,1fr)}
 .article{max-width:820px;margin-inline:auto}.sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}
 .article>h1{font-size:32px}.hero-copy h1{font-size:30px}
}
@media(max-width:600px){
 .wide{width:calc(100% - 32px)}.main{padding-top:20px}.header nav{font-size:14px;gap:22px}
 .hero,.hero-copy{min-height:340px}.hero-copy{padding:96px 20px 22px}.hero-copy h1{font-size:27px;line-height:1.55}.hero-copy p{font-size:15px}
 .flash-panel>div:nth-child(2){display:block}.flash-row a{font-size:16px}.flash-row{padding:13px 0}
 .cards{grid-template-columns:1fr;gap:22px}.news-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px}.news-card .topic-art{height:94px}.card-body{padding:0}.card-body h3{font-size:17px;margin-top:3px}.card-body p{font-size:13px;-webkit-line-clamp:2}
 .news-row,.listing .news-row{grid-template-columns:84px minmax(0,1fr);gap:5px 10px}.news-row .badge{grid-column:2;justify-self:start}.news-row .row-title,.listing .row-title{grid-column:1/-1;font-size:17px}.row-source{display:block;grid-column:1/-1}.news-row .updated{grid-column:1/-1}
 .news-row.article-news-row{grid-template-columns:84px minmax(0,1fr);grid-template-areas:"time badges" "title title" "source source" "updated updated";gap:5px 10px}
 .article>h1{font-size:28px}.article-body,.article-summary p{font-size:18px;line-height:1.95}.article-summary{padding:14px 16px}
 .source-box{padding:16px}.source-heading{flex-direction:column;align-items:flex-start;gap:4px}.source-box .source-entry{display:block}.source-box .source-time{font-size:11px}
 .sidebar{grid-template-columns:1fr}.archive-filters label{max-width:100%}.archive-filters input{min-width:0;width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
