.funds-page { line-height: 1.75; }
.funds-page h2 { font-size: var(--title-medium); line-height: 1.25; }
.funds-hero { background: #1e1e1e; color: #fff; padding: 55px 0 80px; }
.funds-hero h1 { color: #008cff; }
.funds-hero p:last-child { max-width: 750px; margin-bottom: 0; color: #ddd; }
.funds-back { display: inline-block; margin-bottom: 36px; color: #ddd; }
.funds-back:hover { color: #0ea6ff; }
.return-marker { display: inline-block; width: 18px; height: 18px; margin-right: 6px; vertical-align: -3px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.return-marker--positive { color: #16803c; }
.return-marker--negative { color: #c62828; }
.return-marker--neutral { color: #737373; }
.fund-badge { align-self: flex-start; background: #fff0e2; padding: 3px 12px; margin-bottom: 24px; font-size: var(--text-medium); }
.funds-list { padding-block: 45px 65px; }
.funds-note { background: #f3f5f7; border-left: 3px solid #ff7800; padding: 20px; font-size: var(--text-medium); }
.funds-note a { text-decoration: underline; }
/* Fund explorer: sidebar filters and a light, sortable comparison table. */
.funds-toolbar:not([hidden]) { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin: 35px 0 20px; }
.funds-toolbar > p { margin: 0; font-size: var(--text-medium); }
#filters-toggle { border: 2px solid #222; border-radius: 24px; background: #fff; color: #222; padding: 6px 20px; font-weight: 650; font-size: var(--text-medium); cursor: pointer; }
#filters-toggle span { margin-left: 12px; }
.funds-search { margin-left: auto; display: flex; align-items: center; gap: 12px; font-size: var(--text-medium); }
.funds-search input { width: 290px; max-width: 100%; min-width: 0; padding: 10px 14px; border: 1px solid #888; background: #fff; color: #222; border-radius: 4px; }
.funds-search input:focus-visible, .funds-table-wrap:focus-visible, .fund-filters input:focus-visible { outline: 3px solid #0ea6ff; outline-offset: 3px; }
.funds-explorer { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.funds-explorer.has-filters { grid-template-columns: 230px minmax(0, 1fr); }
.funds-results { min-width: 0; }
.fund-filters { border-top: 1px solid #ccc; font-size: var(--text-medium); }
.filters-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 18px 0; }
.filters-heading button { border: 0; padding: 4px 0; background: none; color: #006ba8; text-decoration: underline; cursor: pointer; font-size: var(--text-medium); }
.fund-filters fieldset { border: 0; border-top: 1px solid #ccc; margin: 0; padding: 18px 0; min-width: 0; }
.fund-filters legend { padding: 0 8px 0 0; font-weight: 700; }
.fund-filters label { display: flex; align-items: center; gap: 10px; margin: 8px 0; cursor: pointer; }
.fund-filters input { width: 17px; height: 17px; accent-color: #111; }
.filters-note { color: #606060; font-size: var(--text-small); border-top: 1px solid #ccc; padding-top: 18px; }
.funds-scroll-hint { color: #606060; font-size: var(--text-small); margin-bottom: 12px; }
.funds-table-wrap { overflow-x: auto; border-top: 1px solid #ccc; }
.funds-table-wrap table { border-collapse: separate; border-spacing: 0; width: 100%; min-width: 1040px; font-size: var(--text-medium); }
.funds-table-wrap caption { text-align: left; padding: 0; height: 1px; overflow: hidden; clip-path: inset(50%); }
.funds-table-wrap th, .funds-table-wrap td { padding: 20px 14px; text-align: right; vertical-align: middle; border-bottom: 1px solid #d9dfe3; font-variant-numeric: tabular-nums; }
.funds-table-wrap thead { background: #f5f6f6; color: #222; }
.funds-table-wrap thead th { font-weight: 500; padding: 18px 12px; }
.funds-table-wrap thead button { border: 0; padding: 6px 0; background: none; color: inherit; cursor: pointer; font-size: var(--text-medium); text-align: inherit; }
.funds-table-wrap th:first-child { position: sticky; left: 0; z-index: 1; width: 300px; min-width: 300px; max-width: 300px; text-align: left; background: #fff; }
.funds-table-wrap thead th:first-child { background: #f5f6f6; z-index: 2; }
.funds-table-wrap tbody th { font-weight: 400; }
.funds-table-wrap td:nth-child(2), .funds-table-wrap td:nth-child(5) { text-align: left; }
.funds-table-wrap tbody a { display: inline-block; color: #006ba8; font-weight: 750; text-decoration: none; }
.funds-table-wrap tbody a:hover { text-decoration: underline; }
.fund-description { display: block; margin-top: 4px; line-height: 1.6; }
.fund-status { display: inline-block; margin-top: 10px; background: #e1f4ef; color: #21483f; padding: 1px 8px; font-size: var(--text-small); font-weight: 650; }
.risk-level { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #ffe9ac; color: #171717; font-weight: 750; }
.risk-level[data-level="4"] { background: #ffcc55; }
.risk-level[data-level="5"] { background: #ffb600; }
.funds-table-wrap tbody tr:hover, .funds-table-wrap tbody tr:hover th { background: #f6fafc; }
@media (max-width: 900px) {
  .funds-explorer.has-filters { grid-template-columns: 190px minmax(0, 1fr); gap: 20px; }
  .funds-search { margin-left: 0; }
}
@media (max-width: 760px) {
  .funds-explorer.has-filters { grid-template-columns: minmax(0, 1fr); }
  .funds-search { width: 100%; flex-wrap: wrap; }
  .funds-search input { width: 100%; }
  .funds-table-wrap th:first-child { width: 200px; min-width: 200px; max-width: 200px; }
}
.funds-cta { padding: 60px 0; background: #f3f5f7; }

@media (max-width: 600px) {
  .funds-hero { padding: 35px 0 50px; }

}


