.news-list{display:grid;gap:0;border-top:1px solid #d7e1ec}
.news-list a{display:block;padding:18px 0;border-bottom:1px solid #d7e1ec;color:inherit;text-decoration:none}
.news-list a:hover h3{color:var(--panel,#1b4f8a)}
.news-list time{display:block;font-size:12px;color:#68758a}
.news-list h3{margin:6px 0 0;font-size:16px;line-height:1.45}
.news-more{display:inline-block;margin-top:22px}
body.spider-home .news-list a{color:#1b2430}
.article-page{max-width:860px}
.article-page .crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:#68758a;margin:0 0 22px}
.article-page .crumbs a{color:inherit;text-decoration:none}
.article-page .crumbs a:hover{color:var(--panel,#1b4f8a)}
.article-page header time{display:block;font-size:13px;color:#68758a;margin-bottom:10px}
.article-page h1{margin:0;font-size:1.6rem;line-height:1.35}
.article-body{margin-top:28px;font-size:15px;line-height:1.75;color:#1b2430}
.article-body p,.article-body figure{margin:0 0 18px}
.article-body img{max-width:100%;height:auto;border-radius:8px}
.article-more{margin-top:48px}
.article-more h2{margin:0 0 16px;font-size:1.25rem}
.news-cascade{max-width:1180px}
.news-mast{margin-bottom:28px}
.news-kicker{display:inline-block;font-size:11px;letter-spacing:.24em;color:var(--accent,#3a7bd5);margin:8px 0 10px}
.news-cascade h1{margin:0 0 12px;font-size:1.75rem;line-height:1.3}
.news-lede{margin:0 0 22px;max-width:720px;color:#4b5870;line-height:1.7}
.news-gauge{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px;max-width:560px}
.news-gauge div{padding:12px 14px;border:1px solid #d7e1ec;border-radius:10px;background:#fff}
.news-gauge dt{font-size:12px;color:#68758a}
.news-gauge dd{margin:4px 0 0;font-size:16px;font-weight:700}
.news-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.news-dock-link{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #d7e1ec;border-radius:12px;background:#fff;color:inherit;text-decoration:none}
.news-dock-link span{font-size:11px;letter-spacing:.16em;color:#68758a}
.news-dock-link strong{font-size:14px}
.news-dock-link.is-active,.news-dock-link:hover{border-color:var(--panel,#1b4f8a);color:var(--panel,#1b4f8a)}
.news-empty{padding:28px;border:1px dashed #d7e1ec;border-radius:12px;background:#fff}
.news-spot{margin:28px 0}
.news-spot a{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;color:inherit;text-decoration:none}
.news-spot-media{display:block;border-radius:16px;overflow:hidden;background:#e8eef6;min-height:220px}
.news-spot-media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
.news-badge{display:inline-block;font-size:12px;padding:3px 8px;border-radius:999px;background:#1b4f8a;color:#fff}
.news-spot-body h2{margin:12px 0 10px;font-size:1.35rem;line-height:1.4}
.news-spot-body p{margin:0 0 14px;color:#4b5870;line-height:1.7}
.news-spot-body time,.news-card-body time{display:block;font-size:13px;color:#68758a}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.news-card a{display:grid;grid-template-rows:auto 1fr;height:100%;border:1px solid #d7e1ec;border-radius:16px;overflow:hidden;background:#fff;color:inherit;text-decoration:none}
.news-card a:hover{border-color:var(--panel,#1b4f8a)}
.news-card-media{display:block;background:#e8eef6;min-height:160px}
.news-card-media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
.news-card-body{display:flex;flex-direction:column;gap:8px;padding:18px 18px 20px}
.news-card-body h2{margin:0;font-size:1.05rem;line-height:1.45}
.news-card-body p{margin:0;color:#4b5870;line-height:1.65}
.news-card-go{margin-top:auto;color:var(--panel,#1b4f8a)}
.news-rec{margin-top:48px}
.news-rec h2{margin:0 0 8px;font-size:1.2rem}
.news-rec p{margin:0 0 16px;color:#68758a}
.news-rec ul{list-style:none;margin:0;padding:0;border-top:1px solid #d7e1ec}
.news-rec li a{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #d7e1ec;color:inherit;text-decoration:none}
.news-rec li a:hover{color:var(--panel,#1b4f8a)}
@media (max-width:900px){
  .news-dock,.news-spot a,.news-grid,.news-gauge{grid-template-columns:1fr}
  .news-cascade h1{font-size:1.5rem}
  .news-rec li a{flex-direction:column}
}
