/* Feature directory, using the public V3 palette and typography. */
.v3-features-hero { padding-bottom:80px; }
.v3-feature-hero-facts { display:flex; flex-wrap:wrap; gap:12px 25px; margin-top:35px; font-size:.8rem; color:#c2d4f2; }
.v3-feature-hero-facts span+span { border-left:1px solid #6b82a7; padding-left:25px; }
.v3-feature-intro { padding-bottom:55px; }
.v3-feature-category-links { display:flex; flex-wrap:wrap; gap:10px; }
.v3-feature-category-links a { display:inline-flex; align-items:center; gap:10px; border:1px solid var(--v3-line); padding:10px 15px; border-radius:99px; color:#334b71; font-size:.8rem; font-weight:700; text-decoration:none; background:white; }
.v3-feature-category-links a:hover,.v3-feature-category-links a:focus-visible { border-color:var(--v3-blue); color:var(--v3-blue); background:#f1f5ff; }
.v3-feature-category-links a span { font-size:.7rem; color:#617087; background:#edf2fa; padding:1px 7px; border-radius:99px; }
.v3-feature-directory { padding-top:45px; }
.v3-feature-filter { display:flex; flex-wrap:wrap; align-items:flex-end; gap:18px; background:#fff; border:1px solid var(--v3-line); border-radius:18px; padding:23px; }
.v3-feature-filter[hidden],.v3-feature-group[hidden],.v3-feature-empty[hidden],.v3-feature-table tr[hidden] { display:none!important; }
.v3-feature-search { flex:1 1 300px; }
.v3-feature-category-select { flex:0 1 310px; }
.v3-feature-filter label { display:block; font-size:.8rem; font-weight:800; margin-bottom:7px; }
.v3-feature-filter input,.v3-feature-filter select { min-height:47px; font-size:.9rem; border-color:#c6d4e9; }
.v3-feature-filter .btn { padding:.65rem 1.2rem; min-height:47px; }
.v3-feature-result { margin:18px 0 40px; font-size:.83rem; color:#52647f; }
.v3-feature-group { margin-bottom:58px; scroll-margin-top:30px; }
.v3-feature-group-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:23px; }
.v3-feature-group-heading h2 { font-size:clamp(1.65rem,3.2vw,2.2rem); letter-spacing:-.035em; margin:12px 0 10px; }
.v3-feature-group-heading p { color:#617087; font-size:.95rem; margin:0; }
.v3-feature-group-count { flex-shrink:0; background:#e6edfb; color:#2454b6; border-radius:99px; padding:7px 13px; font-size:.75rem; font-weight:800; margin-top:10px; }
.v3-feature-table-wrap { border:1px solid #dce5f4; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 12px 38px rgba(16,44,98,.035); }
.v3-feature-table { width:100%; border-collapse:collapse; table-layout:fixed; text-align:left; }
.v3-feature-table thead { background:#102551; color:white; }
.v3-feature-table th,.v3-feature-table td { padding:19px 22px; vertical-align:top; font-size:.88rem; line-height:1.65; border-bottom:1px solid #e6edf7; overflow-wrap:anywhere; }
.v3-feature-table thead th { font-size:.74rem; letter-spacing:.055em; font-weight:800; padding-top:16px; padding-bottom:16px; }
.v3-feature-table th:first-child { width:25%; }
.v3-feature-table thead th:nth-child(2) { width:32%; }
.v3-feature-table tbody th { color:#1d3964; font-weight:800; }
.v3-feature-table td { color:#4c607b; }
.v3-feature-table td:nth-child(2) { color:#284877; }
.v3-feature-table tbody tr:nth-child(even) { background:#f9fbff; }
.v3-feature-table tbody tr:last-child th,.v3-feature-table tbody tr:last-child td { border-bottom:0; }
.v3-feature-mobile-label { display:none; }
.v3-feature-empty { padding:35px 25px; border:1px dashed #bacceb; background:#fff; border-radius:15px; color:#50647e; margin-bottom:35px; }
.v3-feature-scope { font-size:.83rem; color:#52647f; max-width:850px; margin-bottom:0; }
.v3-features-home { background:#edf3ff; }
.v3-features-home h2 { margin:13px 0; }
.v3-features-home p { color:#516683; max-width:760px; margin-bottom:0; }
.v3-features-home .v3-text-link { display:inline-block; margin-top:22px; }
.v3-features-inline-link { display:inline-block; color:#c4d9ff; font-size:.85rem; font-weight:700; margin-top:6px; }
.v3-features-inline-link:hover { color:white; }
@media(max-width:767px) {
.v3-features-hero { padding-bottom:62px; }
.v3-feature-hero-facts { gap:9px 15px; font-size:.72rem; }
.v3-feature-hero-facts span+span { padding-left:15px; }
.v3-feature-hero-facts span:last-child { width:100%; border:0; padding:0; }
.v3-feature-category-links a { padding:8px 12px; font-size:.74rem; }
.v3-feature-filter { padding:18px; gap:13px; }
.v3-feature-search,.v3-feature-category-select { flex:1 1 100%; }
.v3-feature-group-heading { gap:12px; }
.v3-feature-group-count { font-size:.65rem; padding:5px 9px; }
.v3-feature-table,.v3-feature-table tbody { display:block; }
.v3-feature-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.v3-feature-table tbody tr { display:grid; grid-template-columns:1fr; padding:21px; border-bottom:1px solid #dde6f4; }
.v3-feature-table tbody tr:last-child { border-bottom:0; }
.v3-feature-table th,.v3-feature-table td { display:block; width:auto!important; border:0; padding:0; font-size:.89rem; }
.v3-feature-table tbody th { font-size:1rem; margin-bottom:13px; }
.v3-feature-table td+td { margin-top:13px; }
.v3-feature-mobile-label { display:block; color:#49699b; font-size:.62rem; letter-spacing:.09em; text-transform:uppercase; font-weight:800; margin-bottom:4px; }
}
