.index-directory{padding-top:32px;padding-bottom:48px}
.index-directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px}
.index-directory .search-line{margin:0;flex:1;align-items:center;max-width:650px}
.index-directory .search-line input{max-width:460px;min-width:0;flex:1}
.index-directory .search-line .button{flex-shrink:0}
.index-directory-clear{font-size:.8rem;text-decoration:underline;text-underline-offset:3px}
.index-directory-count{margin:0;color:var(--muted);font-size:.8rem;white-space:nowrap}
.index-directory-nav{display:flex;flex-wrap:wrap;gap:12px 28px;padding:22px 0 26px}
.index-directory-nav a{display:inline-flex;align-items:center;gap:9px;font-size:.8rem;font-weight:600;color:var(--navy)}
.index-directory-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.index-directory-nav a span{font-size:.65rem;color:var(--muted);font-variant-numeric:tabular-nums}
.index-directory-group{border-top:1px solid var(--line);padding:24px 0 34px;scroll-margin-top:110px}
.index-directory-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:18px}
.index-directory-group-heading h2{font-size:1.8rem;line-height:1.25;letter-spacing:-.02em}
.index-directory-group-heading>span{color:var(--muted);font-size:.74rem;white-space:nowrap}
.index-directory .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.index-directory .index-directory-card{--card-inset:22px;--card-logo-size:32px;--card-icon-inset:12px;position:relative;padding:var(--card-inset);min-height:0;min-width:0;gap:14px;background:#fff}
.index-directory-card-heading{min-width:0}
.index-directory-card-title{min-width:0}
.index-directory-card .eyebrow{font-size:.62rem;letter-spacing:.08em;line-height:1.5;margin-bottom:8px;padding-right:var(--card-logo-size)}
.index-directory-card .index-directory-card-name{font-family:var(--serif);font-size:1.42rem;font-weight:400;line-height:1.24;letter-spacing:-.015em;color:var(--navy);overflow-wrap:break-word;margin:0}
.index-directory-card .index-directory-card-name:first-child{padding-top:26px}
.index-directory-card .index-pictogram{position:absolute;top:var(--card-icon-inset);right:var(--card-icon-inset);width:var(--card-logo-size);height:var(--card-logo-size);margin:0;background:transparent;border-radius:0}
.index-directory-card p.index-directory-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden;max-height:6.2em;font-size:.86rem;line-height:1.55;color:var(--muted);margin:0;text-align:justify;text-align-last:left;hyphens:auto}
.index-directory-details{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--muted);font-size:.68rem;line-height:1.6}
.index-directory-details>span+span{border-left:1px solid var(--line);padding-left:14px}
.index-directory-card p.index-directory-tracking{font-size:.72rem;line-height:1.5;color:var(--blue);margin:0}
.index-directory-card .catalog-foot{font-size:.73rem;padding-top:13px;gap:12px}
.index-directory-ticker{color:var(--navy);font-size:.68rem;font-weight:650;letter-spacing:.06em}
.index-directory-card .catalog-foot b{margin-left:5px;font-size:.95rem;font-weight:400;color:var(--blue)}
.index-directory .empty-state a{text-decoration:underline;text-underline-offset:3px}
.index-directory .index-directory-family-card{background:var(--paper);border-color:#bdcddd}
.index-directory-family-card .index-directory-card-name{font-size:1.8rem}
.index-directory-family-card .index-directory-summary{max-width:54rem}
.index-bond-subindexes{border-left:2px solid var(--line);margin-top:22px;padding-left:22px}
.index-bond-subindexes-title{font-family:var(--sans);font-size:.75rem;font-weight:650;letter-spacing:.07em;text-transform:uppercase;color:var(--blue);line-height:1.5;margin:0 0 14px}
@media(max-width:1100px){.index-directory .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
    .index-directory{padding-top:24px}
    .index-directory-toolbar{align-items:stretch;flex-direction:column;gap:12px}
    .index-directory .search-line{flex-wrap:nowrap;max-width:none}
    .index-directory .search-line .button{padding:13px 17px}
    .index-directory-count{font-size:.72rem}
    .index-directory-nav{gap:12px 20px;padding:20px 0 24px}
    .index-directory-nav a{font-size:.74rem;gap:7px}
    .index-directory .catalog-grid{grid-template-columns:minmax(0,1fr);gap:14px}
    .index-directory-group{padding-top:22px;padding-bottom:28px;scroll-margin-top:105px}
    .index-directory-group-heading h2{font-size:1.55rem}
    .index-directory .index-directory-card{--card-inset:20px;--card-logo-size:30px;gap:12px}
    .index-directory-card .index-directory-card-name{font-size:1.4rem}
    .index-directory-family-card .index-directory-card-name{font-size:1.6rem}
    .index-bond-subindexes{margin-top:18px;padding-left:14px}
}
