.dir-hero{padding:140px 24px 40px;max-width:900px;margin:0 auto}.dir-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,5vw,3rem);color:var(--dark);line-height:1.08;letter-spacing:-.03em;margin-bottom:18px}.dir-hero h1 .green{color:var(--green)}.dir-hero p{font-size:1.05rem;color:var(--text-muted);line-height:1.7;max-width:680px}.dir-trust{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:22px}.dir-trust span{font-size:.78rem;font-weight:600;color:var(--text-body);background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:100px;padding:7px 14px}.dir-controls{max-width:1200px;margin:32px auto 0;padding:0 24px;position:-webkit-sticky;position:sticky;top:76px;z-index:40}.dir-controls-inner{background:rgba(245,242,237,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:12px 0;border-bottom:1px solid rgba(0,0,0,.06)}.dir-search{width:100%;font-family:var(--font-body);font-size:.95rem;padding:13px 16px;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:#fff;color:var(--dark);outline:none;margin-bottom:12px;transition:border-color .18s,box-shadow .18s}.dir-search:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(212,113,58,.08)}.dir-chips{display:flex;flex-wrap:wrap;gap:8px}.dir-chip{font-family:var(--font-body);font-size:.82rem;font-weight:600;color:var(--text-body);background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:100px;padding:8px 15px;cursor:pointer;transition:background .18s,border-color .18s,color .18s;white-space:nowrap}.dir-chip:hover{border-color:var(--green)}.dir-chip.active{background:var(--dark);border-color:var(--dark);color:#fff}.dir-count{font-size:.82rem;color:var(--text-muted);margin:20px auto 0}.dir-count,.dir-grid{max-width:1200px;padding:0 24px}.dir-grid{margin:14px auto 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.tool{background:#fff;border-radius:var(--radius);padding:24px 22px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 8px rgba(0,0,0,.03);border:1px solid rgba(0,0,0,.06);border-top:3px solid transparent;transition:transform .2s,box-shadow .2s,border-color .2s}.tool:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.07);border-top-color:var(--green)}.tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.tool-name{font-family:var(--font-display);font-weight:600;font-size:1.2rem;color:var(--dark);letter-spacing:-.02em;line-height:1.15}.tool-vendor{font-size:.75rem;color:var(--text-muted);margin-top:2px}.tool-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-radius:100px;padding:4px 9px;white-space:nowrap;flex-shrink:0}.tool-badge--est{color:var(--text-muted);background:rgba(0,0,0,.05)}.tool-badge--rising{color:var(--green);background:rgba(212,113,58,.12)}.tool-badge--watch{color:#9A7B3A;background:rgba(180,140,60,.12);border:1px dashed rgba(154,123,58,.5)}.tool-tags{display:flex;flex-wrap:wrap;gap:6px}.tool-tag{font-size:.7rem;font-weight:600;color:var(--text-body);background:var(--cream);border-radius:6px;padding:4px 9px}.tool-tag--price{color:var(--green);background:rgba(212,113,58,.09)}.tool-line{font-size:.9rem;color:var(--text-body);line-height:1.55}.tool-meta{display:flex;flex-direction:column;gap:8px;border-top:1px solid rgba(0,0,0,.06);padding-top:14px;margin-top:2px}.tool-row{font-size:.82rem;line-height:1.5;color:var(--text-muted)}.tool-row b{color:var(--dark);font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:2px}.tool-row .deep{color:var(--green);font-weight:700}.tool-foot{font-size:.72rem;color:rgba(138,138,133,.8);margin-top:4px}.dir-empty{max-width:1200px;margin:20px auto;padding:40px 24px;text-align:center;color:var(--text-muted);font-size:.95rem}.dir-note{max-width:900px;margin:72px auto 0;padding:0 24px}.dir-note-card{background:var(--dark);border-radius:var(--radius);padding:44px 40px;box-shadow:0 24px 60px rgba(20,20,19,.18)}@media (max-width:600px){.dir-note-card{padding:32px 24px}}.dir-note-card .section-label{color:var(--green)}.dir-note-card h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,3vw,2rem);color:#fff;line-height:1.15;letter-spacing:-.02em;margin-bottom:20px}.dir-note-card p{font-size:.98rem;color:rgba(255,255,255,.62);line-height:1.75;max-width:680px}.dir-note-card p+p{margin-top:16px}.dir-note-card strong{color:#fff;font-weight:600}.dir-cta{max-width:900px;margin:24px auto 0;padding:0 24px}.dir-cta-inner{background:rgba(212,113,58,.08);border:1px solid rgba(212,113,58,.2);border-radius:var(--radius);padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.dir-cta-inner p{font-family:var(--font-display);font-weight:500;font-size:1.15rem;color:var(--dark);letter-spacing:-.01em;margin:0;flex:1 1;min-width:220px}.dir-cta-inner a{background:var(--green);color:var(--dark);font-family:var(--font-body);font-weight:700;font-size:.95rem;padding:14px 26px;border-radius:10px;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:transform .2s,box-shadow .2s}.dir-cta-inner a:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(212,113,58,.25)}