/* «دليل المستقلين» (pro/freelancers/): على رموز fahs.css. الجوال أولاً، ثم 700px شبكة بعمودين، و1100px بثلاثة */
section.fd-hero,section.fd-res,section.fd-prof,section.fd-sec{border-top:0}
section.fd-res,section.fd-prof{padding-top:0}
section.fd-sec{padding-block:0}
.fd-hero{padding-block:clamp(28px,5vw,60px) clamp(18px,3vw,28px);max-width:900px}
.fd-hero.mini{padding-block:clamp(18px,3vw,28px) 6px}
.fd-hero.mini h1,.fd-hero.mini .fd-lead,.fd-hero.mini .fd-specs,.fd-hero.mini .fd-q{display:none}
.fd-kick{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--terra);letter-spacing:.01em}
.fd-hero h1{font-size:clamp(28px,4.4vw,46px);line-height:1.3;margin:0;max-width:20ch}
.fd-lead{margin:16px 0 0;font-size:clamp(15.5px,1.5vw,17.5px);line-height:1.95;color:var(--ink-2);max-width:62ch}
.fd-q{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:24px;padding:14px;border:1px solid var(--line-2);border-radius:18px;background:var(--sheet)}
.fd-q .f{display:flex;flex-direction:column;gap:4px;min-width:0}
.fd-q label{font-size:12.5px;color:var(--ink-2);font-weight:700}
.fd-q input,.fd-q select{width:100%;min-width:0;font:inherit;font-size:15px}
.fd-q .btn{align-self:end;min-height:46px;border-radius:999px}
.fd-specs{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.fd-specs a{font-size:13.5px;padding:5px 12px;border:1px solid var(--line-2);border-radius:999px;background:var(--sheet);color:var(--ink);text-decoration:none}
.fd-specs a:hover,.fd-specs a:focus-visible{border-color:var(--terra);color:var(--terra)}
.fd-res{padding-bottom:clamp(30px,5vw,56px)}
.fd-rh{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:8px 0 14px;border-top:2px solid var(--ink);padding-top:16px}
.fd-rh h2{font-size:clamp(20px,2.4vw,26px);margin:0}
.fd-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.fd-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:0 0 14px;border:1px solid var(--line-2);border-radius:18px;background:var(--sheet);color:var(--ink);text-decoration:none;overflow:hidden;transition:border-color .15s,box-shadow .2s,transform .15s}
.fd-card:hover,.fd-card:focus-visible{border-color:var(--terra);box-shadow:0 18px 40px -28px rgba(31,26,23,.55);transform:translateY(-1px);outline:none}
.fd-card>*:not(.fd-cov){margin-inline:16px}
.fd-cov{height:140px;background:var(--paper);position:relative;overflow:hidden}
.fd-cov img{width:100%;height:100%;object-fit:cover;display:block}
.fd-cov.none,.fd-pim.none{background:repeating-linear-gradient(135deg,var(--paper) 0 10px,color-mix(in srgb,var(--line) 60%,var(--paper)) 10px 11px)}
.fd-ch{display:flex;align-items:center;gap:10px;min-width:0}
.fd-cht{display:flex;flex-direction:column;min-width:0}
.fd-cht b{font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.fd-cht small{font-size:13px;color:var(--ink-2);line-height:1.6}
.fd-av{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--terra) 12%,var(--sheet));color:var(--terra);font-weight:700;font-size:17px;flex:none}
.fd-av.big{width:64px;height:64px;border-radius:18px;font-size:26px}
.fd-ver{display:inline-flex;align-items:center;gap:3px;margin-inline-start:7px;padding:1px 8px 1px 7px;border-radius:99px;font-size:11.5px;font-weight:700;line-height:1.7;vertical-align:middle;color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,var(--sheet))}
.fd-bio{margin-top:0;margin-bottom:0;font-size:14px;line-height:1.85;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fd-cf{font-size:12.5px;color:var(--ink-2);margin-top:auto}
.fd-empty{grid-column:1/-1;display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:22px;border:1px dashed var(--line-2);border-radius:18px;background:var(--sheet)}
.fd-empty p{margin:0;color:var(--ink-2);line-height:1.8}
/* الملف */
.fd-prof{padding-bottom:clamp(30px,5vw,56px)}
.fd-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;color:var(--terra);font-weight:700;text-decoration:none}
.fd-back::before{content:"→";font-weight:400}
.fd-back:hover,.fd-back:focus-visible{text-decoration:underline;text-underline-offset:4px}
.fd-ph{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 16px;align-items:center;padding:18px;border:1px solid var(--line-2);border-radius:20px;background:var(--sheet)}
.fd-ph h2{margin:0;font-size:clamp(22px,3vw,30px);line-height:1.35;overflow-wrap:anywhere}
.fd-pm{margin:4px 0 0;color:var(--ink-2);font-size:14.5px;line-height:1.7}
.fd-pa{grid-column:1/-1}
.fd-pa .btn{width:100%;min-height:48px;border-radius:999px}
.fd-st{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:14px;border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--line)}
.fd-st div{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:var(--sheet);min-width:0}
.fd-st b{font-size:20px;font-variant-numeric:tabular-nums}
.fd-st span{font-size:12px;color:var(--ink-2);line-height:1.5}
.fd-sec{margin-top:22px}
.fd-sec h3{font-size:17px;margin:0 0 10px}
.fd-bioL{margin:0;font-size:15.5px;line-height:2;max-width:70ch;white-space:pre-line}
.fd-port{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.fd-pi{margin:0;border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--sheet)}
.fd-pim{aspect-ratio:4/3;background:var(--paper)}
.fd-pim img{width:100%;height:100%;object-fit:cover;display:block}
.fd-pi figcaption{display:flex;flex-direction:column;gap:2px;padding:10px 14px 12px}
.fd-pi figcaption b{font-size:15px}
.fd-pi figcaption span{font-size:13px;color:var(--ink-2);line-height:1.7}
.fd-note{margin:22px 0 0;font-size:13.5px;color:var(--ink-2);line-height:1.8;padding-top:14px;border-top:1px dashed var(--line-2)}
/* كيف يعمل */
.fd-how{border-top:2px solid var(--ink);padding-block:clamp(26px,4vw,44px) clamp(36px,5vw,60px)}
.fd-how h2{font-size:clamp(20px,2.4vw,26px);margin:0 0 16px}
.fd-how-g{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.fd-how article{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line-2);border-radius:18px;background:var(--sheet);align-items:flex-start}
.fd-how .k{font-size:12.5px;font-weight:700;color:var(--terra)}
.fd-how h3{margin:0;font-size:17px}
.fd-how p{margin:0;font-size:14.5px;line-height:1.9;color:var(--ink-2)}
.fd-how .lnk{font-size:14px;font-weight:700;color:var(--terra);min-height:40px;display:inline-flex;align-items:center}
/* نافذة الدعوة */
body.fd-lock{overflow:hidden}
.fd-veil{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;background:rgba(31,26,23,.45);opacity:0;transition:opacity .18s}
.fd-veil.on{opacity:1}
.fd-dlg{width:100%;max-width:520px;max-height:90dvh;overflow:auto;background:var(--sheet);color:var(--ink);border-radius:20px 20px 0 0;box-shadow:0 -20px 50px -20px rgba(31,26,23,.5)}
.fd-dlg:focus{outline:none}
.fd-dh{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}
.fd-dh h2{margin:0;font-size:18px;line-height:1.5}
.fd-x{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--sheet);color:var(--ink-2);cursor:pointer;flex:none}
.fd-x:hover,.fd-x:focus-visible{color:var(--terra);border-color:var(--terra)}
.fd-db{padding:16px 18px calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:12px}
.fd-db>p{margin:0;font-size:15px;line-height:1.9;color:var(--ink-2)}
.fd-db .f{display:flex;flex-direction:column;gap:4px}
.fd-db input{width:100%;font:inherit}
.fd-acts{display:flex;flex-wrap:wrap;gap:10px}
.fd-acts .btn{border-radius:999px}
@media (min-width:700px){
  .fd-q{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) auto;align-items:end}
  .fd-grid,.fd-port,.fd-how-g{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fd-ph{grid-template-columns:auto minmax(0,1fr) auto}
  .fd-pa{grid-column:auto}
  .fd-pa .btn{width:auto;padding-inline:24px}
  .fd-veil{align-items:center}
  .fd-dlg{border-radius:20px}
}
@media (min-width:1100px){
  .fd-grid,.fd-how-g{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fd-port{grid-template-columns:repeat(3,minmax(0,1fr))}
}
