/* 保険整備屋：2026-10-17 視覚確認用のタイトル・カード目次
   Load after integrated-mobile.css. H1 words and all TOC targets are retained.
   Only titles explicitly requested for revision receive hks-title-expressive. */
body.hks-article .article h1.hks-title.hks-title-expressive {
  color:#12355f !important;
  font-size:1.75rem !important;
  line-height:1.5 !important;
  letter-spacing:0 !important;
  max-width:100%;
  font-family:inherit;
}
body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-main {
  display:block;
  color:#12355f;
  font-size:clamp(1.5rem,2.5vw,1.75rem) !important;
  line-height:1.55;
  font-weight:750;
  white-space:normal;
  overflow-wrap:break-word;
}
body.hks-article .article h1.hks-title.hks-title-expressive .hks-title-focus {
  color:#1e4f8f !important;
  font-size:clamp(2.15rem,3.5vw,2.75rem) !important;
  line-height:1.35;
  font-weight:850;
  font-style:normal;
  white-space:normal;
  overflow-wrap:break-word;
}
body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-separator,
body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-sub {
  color:#425e77;
  font-size:clamp(1.2rem,1.8vw,1.375rem) !important;
  line-height:1.65;
  font-weight:650;
  white-space:normal;
  overflow-wrap:break-word;
}
/* Source order and literal separator remain intact for exact H1 wording. */
body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-main {
  margin-bottom:.35em;
}

/* Article 7's number + pictogram + concise title + description card layout. */
body.hks-article .article nav.hks-card-toc {
  margin:1.75rem 0 2.25rem;
  padding:1.4rem;
  border:1px solid #cfdeed;
  border-radius:.875rem;
  background:#fff;
  box-shadow:none;
  color:#12355f;
  font-family:inherit;
}
body.hks-article .article nav.hks-card-toc .kt-heading {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.65rem;
  margin:0 0 .4rem;
}
body.hks-article .article nav.hks-card-toc .kt-heading > strong,
body.hks-article .article nav.hks-card-toc #article-guide-heading {
  display:block;
  padding:0;
  margin:0;
  color:#12355f;
  font-family:inherit;
  font-size:1.375rem;
  font-weight:800;
  line-height:1.5;
}
body.hks-article .article nav.hks-card-toc .kt-heading-badge {
  flex-shrink:0;
  padding:.15rem .55rem;
  border-radius:.375rem;
  background:#edf4fb;
  color:#1e4f8f;
  font-size:.875rem;
  font-weight:700;
  line-height:1.5;
}
body.hks-article .article nav.hks-card-toc p.kt-hint {
  margin:0 0 1rem !important;
  color:#53657a;
  font-size:1rem !important;
  line-height:1.7 !important;
}
body.hks-article .article nav.hks-card-toc ol.kt-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem;
  margin:0 !important;
  padding:0 !important;
  list-style:none;
  counter-reset:none;
}
body.hks-article .article nav.hks-card-toc li.kt-item {
  display:block;
  min-width:0;
  margin:0 !important;
  padding:0 !important;
  border:0;
  background:none;
  list-style:none;
  counter-increment:none;
}
body.hks-article .article nav.hks-card-toc li.kt-item::before,
body.hks-article .article nav.hks-card-toc a::before {
  content:none;
}
body.hks-article .article nav.hks-card-toc a.kt-link,
body.hks-article .article nav.hks-card-toc .kt-linkgroup {
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:0;
  width:100%;
  height:100%;
  min-height:9.5rem;
  margin:0;
  padding:.95rem 1rem;
  border:1px solid #b9cde5;
  border-radius:.75rem;
  background:#f7faff;
  color:#12355f;
  text-align:left;
  text-decoration:none !important;
  font-family:inherit;
  font-size:1rem;
  line-height:1.5;
  box-shadow:none;
}
body.hks-article .article nav.hks-card-toc .kt-top {
  display:grid;
  grid-template-columns:1.25rem minmax(0,1fr) 1.25rem;
  align-items:center;
  gap:.5rem;
  height:2.25rem;
  min-height:2.25rem;
  margin:0 0 .6rem;
  padding:0;
  color:#1e4f8f;
}
body.hks-article .article nav.hks-card-toc .kt-number {
  display:block;
  color:#526d8d;
  font-size:.875rem;
  font-weight:750;
  font-variant-numeric:tabular-nums;
  line-height:1.4;
}
body.hks-article .article nav.hks-card-toc .kt-icon {
  display:block;
  justify-self:center;
  width:2.125rem;
  height:2.125rem;
  max-width:100%;
  margin:0;
  padding:0;
  flex-shrink:0;
  overflow:visible;
}
body.hks-article .article nav.hks-card-toc .kt-arrow {
  display:block;
  justify-self:end;
  width:1.125rem;
  height:1.125rem;
  margin:0;
  padding:0;
  flex-shrink:0;
}
body.hks-article .article nav.hks-card-toc .kt-title {
  display:block;
  margin:0;
  color:#12355f;
  font-family:inherit;
  font-size:1.0625rem;
  font-weight:750;
  line-height:1.5;
  overflow-wrap:anywhere;
}
body.hks-article .article nav.hks-card-toc .kt-desc {
  display:block;
  margin:.4rem 0 0;
  color:#465c73;
  font-family:inherit;
  font-size:1rem;
  font-weight:400;
  line-height:1.6;
  overflow-wrap:anywhere;
}
body.hks-article .article nav.hks-card-toc .kt-phrase {
  display:inline;
  white-space:normal;
  overflow-wrap:anywhere;
}
body.hks-article .article nav.hks-card-toc .kt-sublinks {
  display:grid;
  gap:.2rem;
  margin-top:.4rem;
}
body.hks-article .article nav.hks-card-toc a.kt-sublink {
  display:block;
  padding:.45rem 0;
  min-height:2.75rem;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#1e4f8f;
  font-size:1rem;
  font-weight:650;
  line-height:1.6;
  text-decoration:underline;
  text-underline-offset:.2em;
  overflow-wrap:anywhere;
}
body.hks-article .article nav.hks-card-toc a.kt-sublink + a.kt-sublink {
  border-top:1px solid #cfdeed;
}
body.hks-article .article nav.hks-card-toc a.kt-link:visited {color:#12355f;}
body.hks-article .article nav.hks-card-toc a.kt-link:hover {
  background:#eaf2fc;
  border-color:#1e4f8f;
}
body.hks-article .article nav.hks-card-toc a:focus-visible {
  outline:3px solid #1e4f8f;
  outline-offset:3px;
  background:#eaf2fc;
}
@media(max-width:768px) {
  body.hks-article .article h1.hks-title.hks-title-expressive {
    font-size:1.5rem !important;
    line-height:1.5 !important;
  }
  body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-main {
    font-size:1.5rem !important;
    line-height:1.55;
  }
  body.hks-article .article h1.hks-title.hks-title-expressive .hks-title-focus {
    font-size:2rem !important;
    line-height:1.4;
  }
  body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-separator,
  body.hks-article .article h1.hks-title.hks-title-expressive > .hks-title-sub {
    font-size:1.25rem !important;
    line-height:1.65;
  }
  body.hks-article .article nav.hks-card-toc {
    margin:1.5rem 0 2rem;
    padding:1rem .75rem;
  }
  body.hks-article .article nav.hks-card-toc .kt-heading > strong,
  body.hks-article .article nav.hks-card-toc #article-guide-heading {
    font-size:1.25rem;
  }
  /* The six cards retain all original links. Four articles have one grouped
     card containing two related, separately focusable links. Exactly 3 x 2. */
  body.hks-article .article nav.hks-card-toc ol.kt-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.625rem;
  }
  body.hks-article .article nav.hks-card-toc.hks-toc-six ol.kt-grid {
    grid-template-rows:repeat(3,auto);
  }
  body.hks-article .article nav.hks-card-toc a.kt-link,
  body.hks-article .article nav.hks-card-toc .kt-linkgroup {
    min-height:9.25rem;
    padding:.75rem .625rem;
    border-radius:.625rem;
  }
  body.hks-article .article nav.hks-card-toc .kt-title {
    font-size:1rem;
    line-height:1.5;
  }
  body.hks-article .article nav.hks-card-toc .kt-desc {
    font-size:1rem;
    line-height:1.6;
  }
  body.hks-article .article nav.hks-card-toc .kt-top {
    gap:.3rem;
    height:1.875rem;
    min-height:1.875rem;
    margin-bottom:.5rem;
  }
  body.hks-article .article nav.hks-card-toc .kt-icon {
    width:1.875rem;
    height:1.875rem;
  }
}
/* At increased text sizes cards grow vertically; no fixed heights/clipping. */
