/* Standalone base styles for the generated insurance page. */
html { scroll-behavior: smooth; scrollbar-gutter: stable; background: #f7f4ed; color-scheme: light; }
body { min-width: 0; margin: 0; }
img { display: block; max-width: 100%; height: auto; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.insurance-page {
  --ink: #172936;
  --ink-soft: #586672;
  --navy: #102b3d;
  --gold: #b99558;
  --paper: #f7f4ed;
  --white: #fffdf8;
  --line: rgba(23, 41, 54, 0.15);
  min-height: 100vh;
  background:
    radial-gradient(circle at 94% 11%, rgba(183, 212, 220, 0.24), transparent 35rem),
    var(--paper);
  color: var(--ink);
  font-family: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;
  line-height: 1.9;
  overflow-wrap: anywhere;
}

.insurance-page *,
.insurance-page *::before,
.insurance-page *::after {
  box-sizing: border-box;
}

.insurance-page :where(h1, h2, h3, h4, p, ol, ul, dl, dd) {
  margin: 0;
}

.insurance-page :where(a) {
  color: inherit;
  text-decoration: none;
}

.insurance-page :where(a, summary):focus-visible {
  outline: 3px solid var(--gold);
  outline-offset: 5px;
}

.insurance-page :where(section[id]) {
  scroll-margin-top: 2rem;
}

.insurance-skipLink {
  position: fixed;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 100;
  padding: 0.7rem 1rem;
  border-radius: 999px;
  background: var(--navy);
  color: #fff !important;
  font-size: 0.85rem;
  transform: translateY(-180%);
}

.insurance-skipLink:focus {
  transform: translateY(0);
}

.insurance-header {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 2rem;
  align-items: center;
  justify-content: space-between;
  width: min(100% - 3rem, 1320px);
  min-height: 6.25rem;
  margin-inline: auto;
  border-bottom: 1px solid var(--line);
}

.insurance-headerCta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.65rem 1.1rem;
  border-radius: 999px;
  background: var(--navy);
  color: #fff !important;
  font-size: 0.75rem;
  font-weight: 700;
  white-space: nowrap;
}

.insurance-headerNav a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  white-space: nowrap;
}

.insurance-headerNav a[aria-current="page"] {
  color: var(--navy);
  text-decoration-color: var(--gold);
}

.insurance-heroImage {
  margin: 0 0 1.5rem;
}

.insurance-heroImage img {
  width: 100%;
  height: auto;
  border-radius: 0.85rem;
}

.insurance-heroImage figcaption {
  margin-top: 0.5rem;
  color: var(--ink-soft);
  font-size: 0.65rem;
  text-align: right;
}

.insurance-brand {
  display: inline-flex;
  gap: 0.8rem;
  align-items: center;
  width: fit-content;
  font-family: Georgia, "Yu Mincho", serif;
  font-size: 1.45rem;
  font-weight: 700;
}

.insurance-brand img {
  display: block;
  flex: none;
  object-fit: contain;
}

.insurance-headerNav {
  display: flex;
  gap: clamp(1.25rem, 3vw, 2.75rem);
  align-items: center;
  color: var(--ink-soft);
  font-size: 0.8rem;
  font-weight: 700;
}

.insurance-headerNav a,
.insurance-breadcrumb a {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 0.4em;
}

.insurance-headerNav a:hover,
.insurance-breadcrumb a:hover {
  text-decoration-color: var(--gold);
}

.insurance-hero {
  width: min(100% - 3rem, 1240px);
  margin-inline: auto;
  padding-top: 1.5rem;
}

.insurance-breadcrumb {
  color: var(--ink-soft);
  font-size: 0.75rem;
}

.insurance-breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.85rem;
  padding: 0;
  list-style: none;
}

.insurance-breadcrumb li + li::before {
  margin-right: 0.85rem;
  color: var(--gold);
  content: "/";
}

.insurance-heroInner {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.85fr);
  gap: clamp(2.5rem, 5vw, 5rem);
  align-items: start;
  padding-block: clamp(4rem, 8vw, 7rem);
}

.insurance-eyebrow {
  color: #836735;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.7;
}

.insurance-heroCopy h1 {
  margin-top: 1.25rem;
  font-size: clamp(0.9rem, 1.45vw, 1.1rem);
  font-weight: 600;
  letter-spacing: 0.09em;
}

.insurance-heroTitle {
  margin-top: 1.3rem !important;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", Georgia, serif;
  font-size: clamp(2.25rem, 4.2vw, 3.6rem);
  font-weight: 600;
  letter-spacing: 0.015em;
  line-height: 1.6;
}

.insurance-heroLead {
  margin-top: 2rem !important;
  color: var(--ink-soft);
  font-size: 0.95rem;
  line-height: 2;
}

.insurance-heroLeadFollow {
  margin-top: 1rem !important;
}

.insurance-heroLead a {
  text-decoration: underline;
  text-decoration-color: rgba(185, 149, 88, 0.55);
  text-underline-offset: 0.25em;
}

.insurance-titlePhrase {
  display: inline-block;
  white-space: nowrap;
}

.insurance-premiumNote a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.insurance-reviewMeta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  align-items: center;
  margin-top: 2rem;
  color: var(--ink-soft);
  font-size: 0.72rem;
}

.insurance-draftBadge {
  padding: 0.3rem 0.8rem;
  border: 1px solid rgba(131, 103, 53, 0.35);
  border-radius: 999px;
  background: rgba(232, 213, 164, 0.18);
  color: #75592a;
  font-weight: 700;
}

.insurance-heroNote {
  padding: clamp(1.75rem, 3vw, 3rem);
  border: 1px solid rgba(185, 149, 88, 0.45);
  border-radius: 1.4rem 1.4rem 5rem 1.4rem;
  background: rgba(255, 253, 248, 0.86);
  box-shadow: 0 20px 60px rgba(23, 41, 54, 0.045);
}

.insurance-heroNote h2 {
  margin-top: 1.1rem;
  font-size: clamp(1.2rem, 2.2vw, 1.6rem);
  line-height: 1.6;
}

.insurance-featuredProducts {
  margin-top: 1rem !important;
  padding: 0;
  list-style: none;
}

.insurance-featuredProducts li + li {
  margin-top: 1rem;
}

.insurance-featuredProducts strong,
.insurance-featuredProducts span {
  display: block;
}

.insurance-featuredProducts strong {
  font-size: 0.95rem;
}

.insurance-featuredProducts span {
  margin-top: 0.2rem;
  color: var(--ink-soft);
  font-size: 0.76rem;
}

.insurance-noteRule {
  width: 3rem;
  height: 1px;
  margin-block: 1.75rem;
  background: var(--gold);
}

.insurance-heroNote > p:last-of-type {
  color: var(--ink-soft);
  font-size: 0.85rem;
}

.insurance-officialLink {
  display: inline-flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  min-height: 3.5rem;
  padding: 1rem 1.2rem;
  border-radius: 0.7rem;
  background: var(--navy);
  color: #fff !important;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.65;
}

.insurance-officialLink:hover {
  background: #1b4057;
}

.insurance-heroNote .insurance-officialLink {
  width: 100%;
  margin-top: 1.8rem;
}

.insurance-contents {
  width: min(100% - 3rem, 1120px);
  margin-inline: auto;
  padding: 2rem 2.5rem;
  border-block: 1px solid var(--line);
}

.insurance-contents > p {
  font-size: 0.78rem;
  font-weight: 700;
}

.insurance-contents ol {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.6rem 2rem;
  margin-top: 1.25rem;
  padding: 0;
  list-style: none;
}

.insurance-contents a {
  display: flex;
  gap: 0.8rem;
  align-items: baseline;
  min-height: 2.75rem;
  padding-block: 0.4rem;
  font-size: 0.82rem;
}

.insurance-contents a:hover {
  color: #75592a;
}

.insurance-contents a > span {
  flex: none;
  color: #836735;
  font-family: Georgia, serif;
  font-size: 0.76rem;
}

.insurance-article {
  width: min(100% - 3rem, 1040px);
  margin-inline: auto;
}

.insurance-section {
  margin-block: clamp(4rem, 7vw, 6rem);
}

.insurance-sectionHeading {
  margin-bottom: 2rem;
}

.insurance-sectionHeading h2,
.insurance-consideration h2,
.insurance-officialPanel h2 {
  margin-top: 0.85rem;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", Georgia, serif;
  font-size: clamp(1.6rem, 2.6vw, 2.15rem);
  font-weight: 600;
  line-height: 1.65;
}

.insurance-sectionHeading > p:last-child:not(.insurance-eyebrow) {
  margin-top: 0.8rem;
  color: var(--ink-soft);
  font-size: 0.9rem;
}

.insurance-overviewPanel {
  padding: clamp(1.5rem, 3.5vw, 3rem);
  border: 1px solid var(--line);
  border-radius: 1.25rem;
  background: var(--white);
}

.insurance-productGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

.insurance-productGrid .insurance-overviewPanel {
  display: flex;
  flex-direction: column;
  padding: 2rem;
}

.insurance-productGrid .insurance-productFacts {
  grid-template-columns: minmax(0, 1fr);
  gap: 1.4rem;
}

.insurance-productGrid .insurance-officialLink {
  width: 100%;
  margin-top: auto;
}

.insurance-productHeading {
  padding-bottom: 1.75rem;
  border-bottom: 1px solid var(--line);
}

.insurance-productHeading h3 {
  font-size: 1.4rem;
  line-height: 1.6;
}

.insurance-productHeading p {
  margin-top: 0.4rem;
  color: var(--ink-soft);
  font-size: 0.85rem;
}

.insurance-productFacts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.75rem 3rem;
  padding-block: 2rem;
}

.insurance-productFacts dt {
  color: var(--ink-soft);
  font-size: 0.76rem;
}

.insurance-productFacts dd {
  margin-top: 0.55rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.8;
  white-space: pre-line;
}

.insurance-premiumNote {
  padding-top: 1.4rem;
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 0.78rem;
  line-height: 1.9;
  white-space: pre-line;
}

.insurance-claimNote {
  margin-top: 1.5rem;
  padding: 1.25rem 1.6rem;
  border-left: 3px solid var(--gold);
}

.insurance-claimNote h4 {
  font-size: 0.9rem;
}

.insurance-productGrid .insurance-claimNote {
  margin-bottom: 1.5rem;
  padding: 0.25rem 0 0.25rem 1rem;
}

.insurance-comparison {
  border: 1px solid var(--line);
  border-radius: 1.1rem;
  background: var(--white);
}

.insurance-comparisonRow {
  display: grid;
  grid-template-columns: minmax(0, 0.75fr) minmax(0, 2fr);
  gap: 1.5rem;
  padding: 1.6rem 2rem;
}

.insurance-comparisonRow + .insurance-comparisonRow {
  border-top: 1px solid var(--line);
}

.insurance-comparisonRow h3 {
  padding-top: 0.1rem;
  font-size: 0.92rem;
  line-height: 1.85;
}

.insurance-comparisonValues {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.75rem;
}

.insurance-comparisonValues > div + div {
  padding-left: 1.75rem;
  border-left: 1px solid var(--line);
}

.insurance-comparisonValues dt {
  color: #836735;
  font-size: 0.74rem;
  font-weight: 700;
  line-height: 1.75;
}

.insurance-comparisonValues dd {
  margin-top: 0.65rem;
  color: var(--ink-soft);
  font-size: 0.86rem;
  line-height: 1.9;
  white-space: pre-line;
}

.insurance-claimNote p {
  margin-top: 0.5rem;
  color: var(--ink-soft);
  font-size: 0.87rem;
  white-space: pre-line;
}

.insurance-reasonGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

.insurance-reasonCard {
  padding: 1.75rem 2rem 2rem;
  border: 1px solid var(--line);
  border-radius: 1.1rem;
  background: var(--white);
}

.insurance-cardNumber {
  color: #836735;
  font-family: Georgia, serif;
  font-size: 1.1rem;
}

.insurance-reasonCard h3 {
  margin-top: 0.75rem;
  font-size: 1rem;
  line-height: 1.75;
}

.insurance-reasonCard p {
  margin-top: 0.8rem;
  color: var(--ink-soft);
  font-size: 0.88rem;
  white-space: pre-line;
}

.insurance-exclusionList {
  padding-inline: 2rem;
  border: 1px solid var(--line);
  border-radius: 1.1rem;
  background: rgba(234, 241, 243, 0.45);
}

.insurance-exclusionList article {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 2fr);
  gap: 2rem;
  padding-block: 1.65rem;
}

.insurance-exclusionList article + article {
  border-top: 1px solid var(--line);
}

.insurance-exclusionList h3 {
  font-size: 0.95rem;
  line-height: 1.9;
}

.insurance-exclusionList p {
  color: var(--ink-soft);
  font-size: 0.88rem;
  white-space: pre-line;
}

.insurance-considerations {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  margin-block: 5rem;
}

.insurance-consideration {
  padding: 2.2rem;
  border: 1px solid rgba(185, 149, 88, 0.35);
  border-radius: 1.1rem;
  background: rgba(255, 253, 248, 0.5);
}

.insurance-consideration h2 {
  font-size: 1.55rem;
}

.insurance-consideration > p:last-child {
  margin-top: 1.1rem;
  color: var(--ink-soft);
  font-size: 0.88rem;
  white-space: pre-line;
}

.insurance-checklist {
  padding: 0;
  border-top: 1px solid var(--line);
  list-style: none;
}

.insurance-checklist li {
  display: flex;
  gap: 1rem;
  align-items: baseline;
  padding: 1.1rem 0.5rem;
  border-bottom: 1px solid var(--line);
  font-size: 0.92rem;
}

.insurance-checklist li::before {
  flex: none;
  width: 0.65rem;
  height: 0.65rem;
  border: 1px solid var(--gold);
  content: "";
}

.insurance-faqList {
  border-top: 1px solid var(--line);
}

.insurance-faqItem {
  border-bottom: 1px solid var(--line);
}

.insurance-faqItem summary {
  display: flex;
  gap: 1.25rem;
  align-items: center;
  justify-content: space-between;
  min-height: 4.5rem;
  padding: 1.3rem 0.5rem;
  cursor: pointer;
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.8;
  list-style: none;
}

.insurance-faqItem summary::-webkit-details-marker {
  display: none;
}

.insurance-faqItem summary > span {
  position: relative;
  flex: none;
  width: 1.3rem;
  height: 1.3rem;
}

.insurance-faqItem summary > span::before,
.insurance-faqItem summary > span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.8rem;
  height: 1px;
  background: var(--gold);
  content: "";
  transform: translate(-50%, -50%);
}

.insurance-faqItem summary > span::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.insurance-faqItem[open] summary > span::after {
  display: none;
}

.insurance-faqItem > p {
  max-width: 56rem;
  padding: 0 2.5rem 1.65rem 0.5rem;
  color: var(--ink-soft);
  font-size: 0.9rem;
  white-space: pre-line;
}

.insurance-officialPanel {
  display: flex;
  gap: 2.5rem;
  align-items: center;
  justify-content: space-between;
  margin-block: 5rem 3.5rem;
  padding: clamp(2rem, 4vw, 3.5rem);
  border-radius: 1.3rem;
  background: var(--navy);
  color: #fffdf8;
}

.insurance-officialPanel .insurance-eyebrow {
  color: #ddc595;
}

.insurance-officialPanel h2 {
  font-size: clamp(1.6rem, 2.7vw, 2.1rem);
}

.insurance-officialPanel p:last-child {
  margin-top: 1rem;
  color: #d4dde2;
  font-size: 0.8rem;
}

.insurance-officialLinkLight {
  flex: none;
  max-width: 21rem;
  background: var(--white);
  color: var(--navy) !important;
}

.insurance-officialLinkLight:hover {
  background: #f0e6d3;
}

.insurance-officialActions {
  display: grid;
  flex: none;
  gap: 0.85rem;
  max-width: 21rem;
}

.insurance-officialActions .insurance-officialLink {
  width: 100%;
}

.insurance-sources {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.5fr);
  gap: 2rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid var(--line);
}

.insurance-sources h2 {
  margin-top: 0.6rem;
  font-size: 0.95rem;
}

.insurance-sources p:last-child {
  margin-top: 0.5rem;
  color: var(--ink-soft);
  font-size: 0.74rem;
}

.insurance-sources ol {
  padding-left: 1.2rem;
  color: var(--ink-soft);
  font-size: 0.8rem;
}

.insurance-sources li + li {
  margin-top: 0.6rem;
}

.insurance-sources a {
  display: inline-block;
  padding-block: 0.25rem;
  text-decoration: underline;
  text-decoration-color: rgba(185, 149, 88, 0.55);
  text-underline-offset: 0.25em;
}

.insurance-sources a:hover {
  color: var(--navy);
}

.insurance-related {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  margin-block: 3rem 5rem;
}

.insurance-related > a {
  padding: 2rem;
  border: 1px solid var(--line);
  border-radius: 1rem;
}

.insurance-related > a:hover {
  background: var(--white);
}

.insurance-related h2 {
  margin-top: 0.75rem;
  font-size: 1.15rem;
  line-height: 1.7;
}

.insurance-related p:not(.insurance-eyebrow) {
  margin-top: 0.5rem;
  color: var(--ink-soft);
  font-size: 0.83rem;
}

.insurance-related span {
  display: flex;
  justify-content: space-between;
  margin-top: 1.25rem;
  font-size: 0.8rem;
  font-weight: 700;
}

.insurance-related b {
  color: #836735;
  font-weight: 400;
}

.insurance-footer {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  justify-content: space-between;
  width: min(100% - 3rem, 1320px);
  min-height: 7rem;
  margin-inline: auto;
  padding-block: 1.75rem;
  border-top: 1px solid var(--line);
}

.insurance-footer .insurance-brand {
  font-size: 1.2rem;
}

.insurance-footer > p {
  color: var(--ink-soft);
  font-size: 0.7rem;
}

@media (max-width: 900px) {
  .insurance-header {
    grid-template-columns: 1fr auto;
    gap: 0.25rem 1rem;
    padding-top: 0.9rem;
  }

  .insurance-headerNav {
    grid-row: 2;
    grid-column: 1 / -1;
    justify-content: center;
    gap: 0.25rem 1.5rem;
    padding-bottom: 0.7rem;
  }

  .insurance-heroInner {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.5rem;
  }

  .insurance-heroNote {
    max-width: 38rem;
  }

  .insurance-heroNote .insurance-officialLink {
    width: auto;
  }

  .insurance-officialPanel {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.75rem;
  }

  .insurance-officialLinkLight {
    flex: initial;
    max-width: none;
  }
}

@media (max-width: 640px) {
  .insurance-header,
  .insurance-hero,
  .insurance-contents,
  .insurance-article,
  .insurance-footer {
    width: calc(100% - 2rem);
  }

  .insurance-header {
    flex-wrap: wrap;
    gap: 0.85rem;
    min-height: 0;
    padding-block: 1rem;
  }

  .insurance-brand {
    gap: 0.6rem;
    font-size: 1.2rem;
  }

  .insurance-brand img {
    width: 2.75rem;
    height: 2.75rem;
  }

  .insurance-headerNav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    gap: 0.25rem 0.75rem;
    font-size: 0.72rem;
  }

  .insurance-headerNav a {
    justify-content: center;
    padding-block: 0.35rem;
  }

  .insurance-hero {
    padding-top: 1rem;
  }

  .insurance-breadcrumb {
    font-size: 0.68rem;
  }

  .insurance-heroInner {
    padding-block: 3rem;
  }

  .insurance-heroCopy h1 {
    font-size: 0.86rem;
  }

  .insurance-heroTitle {
    margin-top: 1rem !important;
    font-size: clamp(1.8rem, 7.7vw, 2.8rem);
    line-height: 1.65;
  }

  .insurance-heroLead {
    margin-top: 1.5rem !important;
    font-size: 0.88rem;
  }

  .insurance-desktopBreak {
    display: none;
  }

  .insurance-heroNote {
    padding: 1.65rem 1.4rem 2rem;
    border-bottom-right-radius: 3.5rem;
  }

  .insurance-heroNote .insurance-officialLink {
    width: 100%;
  }

  .insurance-contents {
    padding: 1.5rem 0;
  }

  .insurance-contents ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.4rem 0.75rem;
    margin-top: 1rem;
  }

  .insurance-contents a {
    gap: 0.5rem;
    font-size: 0.76rem;
    line-height: 1.8;
  }

  .insurance-section {
    margin-block: 3.5rem;
  }

  .insurance-sectionHeading {
    margin-bottom: 1.5rem;
  }

  .insurance-sectionHeading h2 {
    font-size: 1.55rem;
  }

  .insurance-overviewPanel {
    padding: 1.4rem 1.25rem;
  }

  .insurance-productHeading h3 {
    font-size: 1.2rem;
  }

  .insurance-productFacts {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.4rem;
    padding-block: 1.5rem;
  }

  .insurance-productFacts dd {
    font-size: 0.93rem;
  }

  .insurance-claimNote {
    padding: 0.75rem 1rem;
  }

  .insurance-reasonGrid,
  .insurance-productGrid,
  .insurance-considerations,
  .insurance-sources,
  .insurance-related {
    grid-template-columns: minmax(0, 1fr);
  }

  .insurance-productGrid .insurance-overviewPanel {
    padding: 1.4rem 1.25rem;
  }

  .insurance-comparisonRow {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    padding: 1.4rem 1.25rem;
  }

  .insurance-comparisonRow h3 {
    padding-bottom: 0.7rem;
    border-bottom: 1px solid var(--line);
  }

  .insurance-comparisonValues {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.1rem;
  }

  .insurance-comparisonValues > div + div {
    padding-top: 1rem;
    padding-left: 0;
    border-top: 1px dashed var(--line);
    border-left: none;
  }

  .insurance-reasonCard {
    padding: 1.4rem 1.25rem 1.65rem;
  }

  .insurance-exclusionList {
    padding-inline: 1.25rem;
  }

  .insurance-exclusionList article {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.5rem;
    padding-block: 1.4rem;
  }

  .insurance-considerations {
    gap: 1.25rem;
    margin-block: 3.5rem;
  }

  .insurance-consideration {
    padding: 1.6rem 1.3rem;
  }

  .insurance-consideration h2 {
    font-size: 1.4rem;
  }

  .insurance-checklist li,
  .insurance-faqItem summary {
    font-size: 0.88rem;
  }

  .insurance-faqItem > p {
    padding-right: 0.5rem;
    font-size: 0.85rem;
  }

  .insurance-officialPanel {
    margin-block: 3.5rem 2.5rem;
    padding: 2rem 1.4rem;
  }

  .insurance-officialLinkLight {
    width: 100%;
  }

  .insurance-officialActions {
    width: 100%;
    max-width: none;
  }

  .insurance-sources {
    gap: 1.25rem;
    padding-bottom: 2.5rem;
  }

  .insurance-related {
    gap: 1rem;
    margin-block: 2.5rem 3.5rem;
  }

  .insurance-related > a {
    padding: 1.6rem 1.3rem;
  }

  .insurance-footer {
    flex-direction: column;
    gap: 0.6rem;
    padding-block: 2rem;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .insurance-page *,
  .insurance-page *::before,
  .insurance-page *::after {
    scroll-behavior: auto !important;
  }
}
