/* Insights: scoped editorial pages and LP article discovery */
.insights-breadcrumb { padding: 25px 0 0; }
.insights-breadcrumb ol { display:flex; gap:8px; flex-wrap:wrap; align-items:center; font-size:12px; color:#5b6168; }
.insights-breadcrumb li { max-width:100%; overflow-wrap:anywhere; }
.insights-breadcrumb li + li::before { content:"/"; padding-right:8px; color:#9da5ae; }
.insights-breadcrumb a:hover, .insights-breadcrumb a:focus-visible { color:#245bdb; text-decoration:underline; }
.insights-hero { padding:78px 0 100px; background:#f7f8fb; }
.insights-eyebrow,.insights-number,.insights-category,.article-category-link { font-size:12px; font-weight:700; letter-spacing:.07em; color:#1948b8; }
.insights-hero h1 { max-width:16em; margin:16px 0 26px; color:#172b49; font-size:clamp(33px,4.3vw,54px); line-height:1.4; letter-spacing:-.035em; }
.insights-hero p { font-size:16px; line-height:1.95; color:#5b6168; }
.insights-main { padding:75px 0 105px; }
.insights-section-heading { display:flex; align-items:baseline; gap:20px; border-top:2px solid #172b49; padding-top:17px; margin-bottom:28px; flex-wrap:wrap; }
.insights-section-heading h2 { color:#172b49; font-size:24px; }
.insights-section-heading p { font-size:13px; color:#5b6168; }
.insights-list { list-style:none; padding:0; margin:0; border-top:1px solid #dfe3e8; }
.insights-list-item { border-bottom:1px solid #dfe3e8; }
.insights-list-item a { display:block; padding:29px 0 32px; color:inherit; }
.insights-list-item h3 { font-size:clamp(19px,2.3vw,26px); line-height:1.5; color:#172b49; margin:9px 0 9px; }
.insights-list-item p { max-width:50em; font-size:14px; color:#5b6168; }
.insights-read-more { display:inline-block; margin-top:15px; color:#1948b8; font-weight:700; font-size:13px; }
.insights-list-item a:hover h3, .insights-list-item a:focus-visible h3 { color:#245bdb; }
.insights-list-item a:focus-visible { outline:3px solid #245bdb; outline-offset:4px; }
.insights-end { background:#f7f8fb; padding:72px 0; }
.insights-end-inner { display:flex; align-items:center; justify-content:space-between; gap:38px; }
.insights-end h2 { margin:10px 0; font-size:clamp(20px,2.7vw,29px); color:#172b49; }
.insights-end p { color:#5b6168; max-width:44em; font-size:14px; }
.insights-end .btn { flex-shrink:0; }
.insights-article .article-header { max-width:860px; padding-top:75px; padding-bottom:70px; }
.article-category-link { display:inline-block; margin-bottom:18px; }
.article-category-link:hover { text-decoration:underline; }
.article-header h1 { font-size:clamp(28px,3.6vw,43px); color:#172b49; line-height:1.48; letter-spacing:-.03em; }
.article-header .article-lead { margin-top:30px; font-size:17px; line-height:2; color:#35383c; }
.article-author { margin-top:26px; color:#5b6168; font-size:13px; }
.article-body { max-width:810px; padding-bottom:115px; font-size:15.5px; line-height:2; }
.article-body h2 { margin:70px 0 22px; padding:0 0 13px; font-size:clamp(21px,2.5vw,27px); color:#172b49; border-bottom:1px solid #dfe3e8; line-height:1.6; }
.article-body p + p { margin-top:18px; }
.article-body strong { color:#172b49; }
.article-body ul,.article-body ol { padding:0; margin:22px 0 30px; }
.article-body ul { list-style:disc; padding-left:1.6em; }
.article-body li { margin-bottom:11px; }
.article-definition { margin:28px 0; border-top:1px solid #dfe3e8; }
.article-definition > div { display:grid; grid-template-columns:170px minmax(0,1fr); gap:24px; padding:20px 0; border-bottom:1px solid #dfe3e8; }
.article-definition dt { color:#172b49; font-weight:700; }
.article-definition dd { margin:0; color:#35383c; }
.article-contrast { border-top:1px solid #dfe3e8; border-bottom:1px solid #dfe3e8; margin:30px 0; }
.article-contrast > div { padding:20px 4px; }
.article-contrast > div + div { border-top:1px solid #dfe3e8; }
.article-contrast span { display:block; color:#1948b8; font-size:12px; font-weight:700; margin-bottom:6px; }
.article-contrast p { color:#35383c; }
.article-body .article-checks { padding-left:1.5em; }
.article-body .article-steps { list-style:decimal; padding-left:1.6em; }
.article-steps li { padding-left:5px; margin-bottom:20px; }
.article-steps strong,.article-steps span { display:block; }
.article-steps span { color:#5b6168; font-size:14px; }
.article-note { margin-top:64px; border-top:1px solid #dfe3e8; padding-top:18px; }
.article-note p { color:#5b6168; font-size:12px; }
.article-related { background:#fff; padding:64px 0 90px; border-top:1px solid #dfe3e8; }
.article-related .insights-list-item h3 { font-size:21px; }
.insights-back-link { display:inline-block; margin-top:32px; color:#1948b8; font-size:14px; font-weight:700; }
.insights-back-link:hover { text-decoration:underline; }
/* Insights teaser: restrained editorial cards only on the LP.
   Other LP sections retain the border-and-rule information language. */
.insights-teaser { padding:var(--space-m) 0; background:#f7f8fb; }
.insights-teaser .section-head { margin-bottom:36px; }
.insights-teaser .section-lead { max-width:48em; }
.insights-card-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,1.75vw,24px);
  list-style:none; padding:0; margin:0;
}
.insights-card-grid li { min-width:0; }
.insights-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:100%;
  padding:clamp(22px,2.1vw,30px);
  border:1px solid #dfe3e8;
  border-radius:12px;
  background:#fff;
  color:#172b49;
  text-decoration:none;
  box-shadow:none;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.insights-card-category {
  color:#1948b8;
  font-size:12px;
  font-weight:700;
  line-height:1.6;
  letter-spacing:.035em;
}
.insights-card h3 {
  margin:15px 0 13px;
  font-size:clamp(18px,1.75vw,21px);
  font-weight:700;
  line-height:1.65;
  letter-spacing:-.025em;
  overflow-wrap:anywhere;
  color:#172b49;
}
.insights-card p {
  margin:0 0 25px;
  color:#5b6168;
  font-size:13px;
  line-height:1.85;
}
.insights-card-action {
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  line-height:1.6;
  font-weight:700;
  color:#1948b8;
}
.insights-card-action span { font-size:17px; line-height:1; }
.insights-card:hover {
  border-color:#83a7ee;
  box-shadow:0 7px 18px rgba(20,42,80,.06);
  transform:translateY(-2px);
}
.insights-card:hover h3 { color:#245bdb; }
.insights-card:focus-visible { outline:3px solid #245bdb; outline-offset:4px; }
.insights-teaser-more {
  display:inline-block; margin-top:30px; padding-bottom:5px;
  border-bottom:1px solid #1948b8;
  font-size:14px; font-weight:700; color:#1948b8;
}
.insights-teaser-more:hover { color:#245bdb; border-color:#245bdb; }
@media (max-width: 1020px) and (min-width: 761px) {
  .insights-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .insights-end-inner { align-items:stretch; flex-direction:column; gap:22px; }
  .insights-end .btn { align-self:flex-start; }
  .article-definition > div { grid-template-columns:1fr; gap:3px; }
  .insights-hero { padding:52px 0 70px; }
  .insights-article .article-header { padding-top:46px; padding-bottom:48px; }
  .article-body { padding-bottom:70px; font-size:15px; }
  .article-body h2 { margin-top:48px; }
  .insights-main { padding:52px 0 70px; }
  .insights-teaser { padding:52px 0; }
  .insights-teaser .section-head { margin-bottom:27px; }
  .insights-card-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
  .insights-card { padding:23px 22px; }
  .insights-card h3 { font-size:19px; margin:9px 0 9px; }
  .insights-card p { margin-bottom:17px; }
}
@media (prefers-reduced-motion:reduce) { .insights-list-item a, .insights-card { transition:none; } .insights-card:hover { transform:none; } }

/* Editorial review 2026-10: practical copyable example + article cross-links */
.article-template { margin:26px 0 34px; border:1px solid #dfe3e8; border-radius:10px; overflow:hidden; }
.article-template-label { padding:13px 18px; background:#f7f8fb; font-size:12px; font-weight:700; color:#1948b8; border-bottom:1px solid #dfe3e8; }
.article-template pre { margin:0; padding:22px 20px; max-width:100%; overflow-x:auto; white-space:pre-wrap; overflow-wrap:anywhere; font:400 13px/2 var(--font-jp); color:#35383c; }
.article-template code { font:inherit; }
.article-body a { color:#1948b8; text-decoration:underline; text-underline-offset:3px; }
.article-body a:hover { color:#245bdb; }
.article-body a:focus-visible { outline:3px solid #245bdb; outline-offset:3px; border-radius:2px; }
@media (max-width:600px) { .article-template pre { padding:16px 14px; font-size:12.5px; } }


/* Article related cards: reuse LP card design while displaying two columns. */
.insights-card-grid.insights-related-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 26px);
}
.article-related .insights-card h3 { font-size: clamp(18px, 2vw, 21px); }
.article-related .insights-card p { font-size: 13px; }
/* The template is an editable text example; the action copies the visible code text. */
.article-template-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 16px;
  padding: 12px 16px;
  border-bottom: 1px solid #dfe3e8;
  background: #f7f8fb;
}
.article-template-toolbar .article-template-label {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
}
.article-template-copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 13px;
  min-height: 36px;
  border: 1px solid #b9c8df;
  border-radius: 7px;
  color: #1948b8;
  background: #fff;
  font: 700 12px/1.5 var(--font-jp);
  cursor: pointer;
}
.article-template-copy:hover { border-color: #245bdb; background: #eef3ff; }
.article-template-copy:focus-visible { outline: 3px solid #245bdb; outline-offset: 3px; }
.article-template-feedback:empty { display: none; }
.article-template-feedback:not(:empty) {
  margin: 0;
  padding: 9px 16px;
  border-bottom: 1px solid #dfe3e8;
  color: #35383c;
  font-size: 12px;
  line-height: 1.6;
}
.article-template-feedback[data-state="error"] { color: #8b3a22; }
@media (max-width: 760px) {
  .insights-card-grid.insights-related-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
}


/* Insights index: reuse the same readable card language as the LP.
   The article detail layout and its two-column related cards are unchanged. */
.insights-main .insights-index-grid {
  margin-top: 30px;
}
.insights-main .insights-index-grid .insights-card {
  min-height: 100%;
}
.insights-main .insights-index-grid .insights-card h3 {
  font-size: clamp(18px, 1.8vw, 22px);
}
.insights-main .insights-index-grid .insights-card p {
  font-size: 13px;
}
@media (max-width: 760px) {
  .insights-main .insights-index-grid { margin-top: 22px; }
}
