/* Reader-facing improvements; product conditions and tracking remain unchanged. */
:root { --reader-link: #075c8d; --reader-gold: #73551d; --reader-muted: #455e6e; }
main a:not([class]) { color: inherit; }
.article-card > p > a:not([class]), .article-card > a:not([class]), main .text-link { color: var(--reader-link); text-underline-offset: .22em; }
main .eyebrow, main .author-role { color: var(--reader-gold); }
main .industry-top3-section__eyebrow, main .survey-eyebrow { color: #075c8d; }
main .industry-top3-section__note { color: var(--reader-muted); }
main :is(h1, h2, h3) { text-wrap: pretty; }
main :is(p, li, dd) { overflow-wrap: break-word; }
main :is(.article-layout, .article-body, .article-card, .page-shell__inner, .article-main,
  .bizcre-article-content, .table-scroll, .query-answer-block, .context-card-rail,
  .recommendation-card, .card-market-item) { min-width: 0; max-width: 100%; }
.article-body > *, .article-layout > *, .article-body .article-card > * { min-width: 0; max-width: 100%; }
.table-scroll { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.table-scroll:has(> .survey-data-table) { position: relative; overflow: hidden; height: 1px; }
.survey-data-table {
  position: absolute !important; width: 1px !important; height: 1px !important;
  max-width: 1px !important; min-width: 0 !important; padding: 0 !important;
  overflow: hidden !important; clip: rect(0, 0, 0, 0); clip-path: inset(50%);
  white-space: nowrap !important; border: 0 !important;
}
.mobile-menu-panel[aria-hidden="true"] { visibility: hidden; }
.mobile-menu-panel[aria-hidden="false"] { visibility: visible; }
.card-market-item__name-line { display: inline-block; max-width: 100%; white-space: normal; text-wrap: balance; }
.bizcre-main-content .card-market-item__name { display: block; max-height: none; overflow: visible; -webkit-line-clamp: unset; overflow-wrap: break-word; }
.executive-gp :is(h1, h2, h3) { word-break: normal; overflow-wrap: break-word; }
.executive-gp-hero h1 span { white-space: normal; }
.survey-hero__actions a:first-child, .sole-proprietor-entry-cta { background: #075c8d; color: #fff; }
main .survey-editorial-label, main .top10-kicker { color: #075c8d; }
main .feature-grade-page .eyebrow { color: #73551d; }
.feature-grade-page .cards-section-heading > .eyebrow { color: #73551d; }
main .feature-grade-page .feature-interview-case .eyebrow { color: #e3c681; }
.article-visual-block__eyebrow { background: #075c8d; color: #fff; }
.executive-gp-button--primary { background: #795b24; color: #fff; border-color: #795b24; }
.top10-button--primary { background: #075c8d; color: #fff; border-color: #075c8d; }
.top10-hero__actions .top10-button--primary { background: #075c8d; color: #fff; border-color: #075c8d; }
.alert-box.inline-alert > strong { color: #fff; background: #98452e; }
.calculator-choice-grid button[aria-pressed="true"] { background: #075c8d; border-color: #075c8d; color: #fff; }

/* Give the recommendation a readable place, separate from fees and cautions. */
:is(.card-market-item__masayuki-note, .context-card__reason, .survey-card__reason,
  .recommendation-card__reason, .industry-top3-card__reason) {
  padding: 12px 14px; border: 1px solid #dccb9e; border-left: 4px solid #b3872c;
  border-radius: 9px; background: #fff9eb; color: #263b46; line-height: 1.75;
  font-size: 14px; font-weight: 500; overflow-wrap: break-word;
}
:is(.card-market-item__masayuki-note, .context-card__reason, .survey-card__reason,
  .recommendation-card__reason) > strong { display: block; margin-bottom: 5px; color: #73551d; font-size: 12px; font-weight: 800; }
.industry-top3-card__reason summary { color: #73551d; min-height: 44px; font-weight: 800; }
.card-detail-intro { border-color: #ccd9df; }
.card-detail-intro-group:not(.card-detail-intro-group--check) { background: #fff9eb; border: 1px solid #dccb9e; }
.card-detail-intro-group:not(.card-detail-intro-group--check) h3, .card-article-shell__inner > #conclusion > h2 { color: #73551d; }
.issuer-summary-points { margin: 18px 0 0; padding-left: 1.25em; color: #263b46; line-height: 1.85; }
.issuer-summary-points li + li { margin-top: 6px; }
.reader-next { margin: 28px 0; padding: clamp(18px, 3vw, 28px); border: 1px solid #ccdce5; border-radius: 16px; background: #f3f9fc; }
.reader-next h2 { margin: 0 0 10px; color: #123c55; font-size: clamp(20px, 2.5vw, 27px); }
.reader-next p { margin: 0 0 16px; color: #455e6e; }
.reader-next__links { display: flex; flex-wrap: wrap; gap: 10px; }
.reader-next__links a { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 11px 18px; border: 1px solid #075c8d; border-radius: 9px; background: #fff; color: #075c8d; font-weight: 750; text-decoration: none; }
.reader-next__links a:first-child { background: #075c8d; color: #fff; }
.reader-next__links a:hover { box-shadow: 0 3px 10px rgb(7 92 141 / .15); }
main :is(a, button, summary):focus-visible { outline: 3px solid #a35e00; outline-offset: 4px; }
main :is(input, select, textarea):focus-visible { outline: 3px solid #075c8d; outline-offset: 2px; }
[data-interview-theme="continuity"] .interview-detail-hero--card-only .interview-detail-hero__content > p:first-child,
[data-interview-theme="continuity"] .interview-detail-hero--card-only .interview-detail-hero__facts dt,
[data-interview-theme="continuity"] .interview-detail-hero__single-card > span { color: #755923; }
[data-interview-theme="continuity"] .interview-detail-hero--card-only h1 .interview-hero-title-line + .interview-hero-title-line { color: #846325; }
.interview-feature-prompt__dismiss { width: 44px !important; height: 44px !important; }
.interview-feature-prompt__link { padding-right: 48px; }
main .feature-interview-case .eyebrow, main .bizcre-interview-case-link__eyebrow { color: #e3c681; }

@media (max-width: 980px) {
  .company-fit-sticky { min-height: 0; padding: 8px 54px 8px 10px; background: rgb(255 255 255 / .98); box-shadow: 0 4px 16px rgb(17 53 75 / .12); }
  .company-fit-sticky > strong { display: none; }
  .company-fit-sticky__close { width: 44px; height: 44px; top: 8px; right: 6px; }
  .company-fit-sticky__actions a { min-height: 44px; font-size: 14px; }
  .card-rank-sticky { bottom: calc(10px + env(safe-area-inset-bottom, 0px)); }
  body:has(.company-fit-sticky.is-visible) .card-rank-sticky { visibility: hidden; pointer-events: none; }
  body:has(.interview-feature-prompt.is-visible) :is(.company-fit-sticky, .card-rank-sticky) { visibility: hidden; pointer-events: none; }
  .interview-feature-prompt { bottom: calc(12px + env(safe-area-inset-bottom, 0px)); left: 12px; width: min(336px, calc(100vw - 24px)); }
}
@media (max-width: 767px) {
  .interview-detail-hero h1:not(:has(.interview-hero-title-lines--mobile)) > .interview-hero-title-lines--desktop { display: block !important; }
  .interview-detail-hero h1:not(:has(.interview-hero-title-lines--mobile)) { font-size: clamp(2rem, 8vw, 2.8rem); }
  .interview-detail-hero h1:not(:has(.interview-hero-title-lines--mobile)) .interview-hero-title-line { white-space: normal; }
  #home-company-entry-title { font-size: clamp(22px, 6vw, 26px); }
  #home-company-entry-title > span { display: block; }
  main :is(h1, h2, h3):not(.sr-only) { word-break: normal; overflow-wrap: break-word; }
  :is(.article-body, .article-layout) .article-card { width: 100%; }
  body[data-issuer-slug] .page-shell__inner { padding-left: 16px; padding-right: 16px; }
  body[data-issuer-slug] .article-card { padding: 16px 12px; }
  body[data-issuer-slug] .card-market-grid { gap: 12px; }
  body[data-issuer-slug] .card-market-item { padding-left: 10px; padding-right: 10px; }
  body[data-issuer-slug] .card-market-item__name { font-size: 14px; line-height: 1.55; }
  .card-market-item__name { display: block; max-height: none; overflow: visible; -webkit-line-clamp: unset; }
  .card-market-item__name-line { display: inline-block; max-width: 100%; white-space: normal; text-wrap: balance; }
  .card-market-item__mobile-meta { display: grid; grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .card-market-item__mobile-fee { overflow: visible; max-width: 100%; white-space: normal; text-overflow: clip; line-height: 1.6; }
  .card-market-item__mobile-fee small { display: block; }
  :is(.card-market-item__name, .context-card__title, .recommendation-card__name) .card-title-display-line { white-space: normal; }
  .card-market-item__masayuki-note { display: block !important; padding: 9px 8px; font-size: 12px; line-height: 1.65; }
  .card-market-item__masayuki-note > strong { font-size: 11px; margin-bottom: 4px; }
  .context-card__reason, .survey-card__reason, .recommendation-card__reason { font-size: 14px; }
  .reader-next__links { display: grid; }
  .reader-next__links a { width: 100%; }
  main :is(.table-cta, .muted-cta) { min-height: 44px; }
  .faq-related-links a { display: inline-flex; align-items: center; min-height: 44px; }
}
