body{margin:0;background:#f4f7f6;color:#172725;font-family:Tajawal,Arial,sans-serif}
.directory{padding:108px 0 64px}
.directory-wrap{width:min(1180px,calc(100% - 32px));margin:0 auto}
.directory-hero span{color:#00845A;font-weight:800}
.directory-hero h1{margin:10px 0;font-size:clamp(32px,4vw,48px)}
.directory-hero h1 em{font-style:normal;color:#00845A}
.directory-hero p{max-width:680px;color:#687875;line-height:1.8}
.directory-layout{display:grid;grid-template-columns:280px 1fr;gap:18px;margin-top:28px}
.filters,.directory-empty{background:#fff;border:1px solid #e7efec;border-radius:18px}
.filters{padding:18px;height:max-content;position:sticky;top:96px}
.filter-head{display:flex;justify-content:space-between;align-items:center}
.filter-head h2{margin:0;font-size:18px}
.filter-head a{color:#00845A;font-weight:800}
.filters label{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:14px;margin-top:14px}
.filters input,.filters select,.sort-field select{min-height:44px;border:1px solid #dfe8e5;border-radius:12px;padding:8px 12px;font-family:inherit;background:#fff}
.filters button{margin-top:16px;width:100%;min-height:46px;border:0;border-radius:12px;background:#00845A;color:#fff;font-family:inherit;font-weight:800;cursor:pointer}
.results-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px}
.results-head h2,.results-head p{margin:0}
.results-head p{color:#687875}
.results-tools{display:flex;align-items:end;gap:10px}
.view-switch{display:flex;height:44px;border:1px solid #dfe8e5;border-radius:12px;overflow:hidden;background:#fff}
.view-switch label{width:44px;display:grid;place-items:center;color:#52615e;cursor:pointer}
.view-switch input{position:absolute;opacity:0;pointer-events:none}
.view-switch .is-active{background:#00845A;color:#fff}
.sort-field{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:13px;color:#52615e}
.directory-grid{display:grid;gap:14px}
.directory-grid.view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pro-card{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #e7efec;border-radius:20px;padding:18px 18px 16px;box-shadow:0 10px 28px rgba(18,59,50,.05)}
.pro-avatar{position:relative;width:84px;height:84px;flex:0 0 84px;border-radius:50%;background:#e8f6f0;color:#00845A;display:grid;place-items:center;font-size:32px;font-weight:800;text-decoration:none;cursor:pointer}
.pro-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;transition:transform .25s ease}
.pro-card:hover .pro-avatar img{transform:scale(1.04)}
.pro-avatar i{position:absolute;left:2px;bottom:4px;width:16px;height:16px;border-radius:50%;background:#2fbe78;border:2px solid #fff;z-index:2;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.pro-body{flex:1;min-width:0}
.pro-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.pro-card h3{margin:0;font-size:22px}
.pro-card h3 a{color:inherit;text-decoration:none;transition:color .2s ease}
.pro-card h3 a:hover{color:#00845A}
.pro-role{color:#00845A;font-weight:800;margin-top:2px}
.pro-rating{margin-top:4px;color:#7b8783;font-size:14px}
.pro-rating strong{color:#d99016}
.pro-exp{color:#52615e;font-weight:800;white-space:nowrap}
.pro-tags,.directory-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.pro-tags span,.directory-tags span{background:#eef6f3;color:#3d6b5d;border-radius:999px;padding:6px 10px;font-size:13px}
.pro-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pro-price{color:#00845A;font-size:18px;font-weight:800}
.pro-price.is-muted{color:#8a9693;font-size:14px;font-weight:700}
.pro-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid #00845A;border-radius:12px;color:#00845A;font-weight:800}
.pro-btn:hover{background:#00845A;color:#fff}
.view-grid .pro-card{flex-direction:column}
.view-grid .pro-top{width:100%}
.view-grid .pro-foot{align-items:stretch}
.view-grid .pro-btn{width:100%}
.directory-empty{padding:36px;text-align:center}
.profile{padding-top:28px}
.profile-back{color:#00845A;font-weight:800}
.profile-card{display:flex;gap:18px;margin-top:16px;background:#fff;border:1px solid #e7efec;border-radius:20px;padding:22px}
.profile-card h1{margin:0 0 4px;font-size:32px}
.profile-card h2{font-size:16px;margin:16px 0 8px}
.profile-bio{color:#172725;line-height:1.8}
.profile-card .pro-avatar{width:96px;height:96px;flex-basis:96px;font-size:36px}
@media(max-width:900px){
.directory{padding-top:96px}
.directory-layout,.directory-grid.view-grid{grid-template-columns:1fr}
.filters{position:static}
}
@media(max-width:620px){
.pro-card,.profile-card,.pro-top,.pro-foot,.results-head,.results-tools{flex-direction:column;align-items:stretch}
.pro-btn{width:100%}
}
