/* ══ أقسامُ الرئيسة — نُقلت من عشرة وسوم نمطٍ مضمَّنة في sections/*.blade.php (القاعدة 1 · 2026-09-03) ══
   ⚖ نقلٌ حرفيّ (صفرُ hex/rgba في هذه العشرة)؛ ما فيها من !important موروثٌ نُقل لا أُضيف. الوصلةُ تُدفع بـ@once من كلّ قسم. */

/* ── sections/blog (كانت عند السطر 59) ── */
.editorial-btn-outline {
    border-radius: 0;
    padding: 0.8rem 1.5rem;
    font-family: var(--fnv-font-body);
    font-size: 1rem;
    font-weight: 800;
    border: 2px solid var(--fnv-ink);
    background: transparent;
    color: var(--fnv-ink);
    text-transform: uppercase;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s, transform 0.3s;
}
.editorial-btn-outline:hover {
    background: var(--fnv-ink);
    color: var(--fnv-surface);
}
.blog-card:hover {
    transform: translate(-4px, -4px);
    box-shadow: none !important;
}
.blog-card:hover .blog-card-thumb img {
    transform: scale(1.05);
    filter: grayscale(0%);
}
.editorial-hover-link {
    transition: color 0.3s;
}
.editorial-hover-link:hover {
    color: var(--fnv-ink-muted) !important;
    text-decoration: underline !important;
}
.editorial-read-more {
    border-bottom: 2px solid var(--fnv-ink);
    padding-bottom: 2px;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s, transform 0.3s;
}
.editorial-read-more:hover {
    padding-right: 8px;
    color: var(--fnv-ink-muted) !important;
    border-color: var(--fnv-ink-muted);
}

/* ── sections/book_teaser (كانت عند السطر 74) ── */
.btn-fnv-institutional {
    background-color: var(--fnv-ink);
    color: var(--fnv-surface);
    font-family: var(--fnv-font-heading);
    font-weight: 800;
    border: 2px solid var(--fnv-ink);
    border-radius: 0 !important;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s, transform 0.3s;
    text-transform: uppercase;
    text-decoration: none;
}

.btn-fnv-institutional:hover {
    background-color: var(--fnv-surface);
    color: var(--fnv-ink);
    transform: translateY(-2px);
    box-shadow: none;
}

/* ── sections/comparison (كانت عند السطر 180) ── */
/* الأحاديّ على الجزء اللاتينيّ وحده: وضعُه على الحاوية يكسر الطباعة العربيّة (bug-136/145/149/157/160). */
.fnv-prov-badge { display:inline-block; border:1.5px solid var(--fnv-ink); font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:800; letter-spacing:normal; padding:6px 14px; margin-bottom:16px; color:var(--fnv-ink); }
.fnv-prov-badge i { font-family: var(--fnv-font-mono); font-style:normal; }
.fnv-prov-h2 { font-family: var(--fnv-font-heading); font-weight:900; color:var(--fnv-ink); font-size:clamp(26px,3vw,40px); margin-bottom:16px; letter-spacing:normal; }
.fnv-prov-lead { font-family: var(--fnv-font-body); color:var(--fnv-ink-muted); font-weight:500; line-height:1.9; font-size:clamp(15px,1.3vw,18px); }
.fnv-prov-lead b { color:var(--fnv-ink); font-weight:800; }
.fnv-prov-chips { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.fnv-prov-chip { font-family: var(--fnv-font-body); font-size:.82rem; font-weight:700; color:var(--fnv-ink); background:var(--fnv-surface-2); border:1px solid var(--fnv-border); padding:8px 14px; }
.fnv-prov-chip::before { content:'●'; color:var(--fnv-up); font-size:.8125rem; margin-inline-end:7px; vertical-align:middle; }

.fnv-trk { border:0.5px solid var(--fnv-ink); background:var(--fnv-surface); }
.fnv-trk__head { display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center; justify-content:space-between; border-bottom:2px solid var(--fnv-dark-bg); padding:16px 24px; }
.fnv-trk__ttl { font-family: var(--fnv-font-heading); font-weight:900; font-size:clamp(18px,1.8vw,24px); color:var(--fnv-ink); margin:0; }
.fnv-trk__tag { font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:700; letter-spacing:.04em; color:var(--fnv-ink-3); }
.fnv-trk__tag i { font-family: var(--fnv-font-mono); font-style:normal; }

/* الدائرة + المؤشّرات: صفٌّ واحد على الحاسوب، عمودٌ على الهاتف. */
.fnv-trk__top { display:flex; flex-wrap:wrap; align-items:center; gap:28px; padding:24px; border-bottom:0.5px solid var(--fnv-border); }
.fnv-trk__donut { position:relative; width:132px; height:132px; flex:0 0 auto; margin:0; }
.fnv-trk__donut svg { width:100%; height:100%; display:block; }
.fnv-trk__donut-c { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; }
.fnv-trk__donut-c .n { font-family: var(--fnv-font-mono); font-size:1.5rem; font-weight:800; color:var(--fnv-ink); line-height:1; }
.fnv-trk__donut-c .l { font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:700; color:var(--fnv-ink-3); }
.fnv-trk__kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(112px,1fr)); gap:0; background:var(--fnv-surface); flex:1 1 320px; min-width:0; border-block-start:1px solid var(--fnv-border);border-inline-start:1px solid var(--fnv-border); }
/* ⚖ hairgrid (2026-09-06): الخطوطُ من حدود البطاقات لا من خلفيّةٍ تحت الفجوات — لا خلايا رماديّةً يتيمة. */
.fnv-trk__kpis>*{border-block-end:1px solid var(--fnv-border);border-inline-end:1px solid var(--fnv-border);min-width:0}
.fnv-trk__kpi { background:var(--fnv-surface); padding:12px 14px; display:flex; flex-direction:column; gap:4px; }
.fnv-trk__kpi .v { font-family: var(--fnv-font-mono); font-size:1.05rem; font-weight:800; color:var(--fnv-ink); line-height:1.2; }
.fnv-trk__kpi .v .x { font-size:.8125rem; font-weight:700; color:var(--fnv-ink-3); }
.fnv-trk__kpi .l { font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:600; color:var(--fnv-ink-3); }

.fnv-trk__tablewrap { overflow-x:auto; }
.fnv-trk__table { width:100%; border-collapse:collapse; }
.fnv-trk__cap { caption-side:top; text-align:start; font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:700; color:var(--fnv-ink-3); padding:12px 24px 8px; }
.fnv-trk__table th { font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:800; color:var(--fnv-ink-muted); text-align:start; padding:8px 24px; border-bottom:1px solid var(--fnv-dark-bg); white-space:nowrap; }
.fnv-trk__table td { font-size:.82rem; font-weight:600; color:var(--fnv-ink-muted); padding:8px 24px; border-bottom:0.5px solid var(--fnv-border); white-space:nowrap; }
.fnv-trk__table .mono { font-family: var(--fnv-font-mono); }
.fnv-trk__table .num { text-align:end; font-weight:800; }
/* ⛔ الترويسةُ الرقميّةُ تُحاذي حافّةَ بياناتها لا مقابلتَها (بلاغُ المالك · 2026-08-22):
     `end` على خليّةٍ `dir="ltr"` تعني **يميناً**، وعلى ترويسةٍ عربيّةٍ ترث `rtl`
     تعني **يساراً** — كلمةٌ واحدةٌ وحافّتان متقابلتان. التفصيلُ في `p-theo-edge.css`. */
.fnv-trk__table thead th.num { text-align:start; }
.fnv-trk__table tr:last-child td { border-bottom:none; }
/* شارة المصدر: إطار ونصّ — لا تعبئة لونيّة (ميثاق §4). */
.fnv-trk__src { display:inline-block; font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:800; padding:2px 8px; border:1px solid var(--fnv-border); color:var(--fnv-ink-3); }
.fnv-trk__src.is-auto { border-color:var(--fnv-ink); color:var(--fnv-ink); }

.fnv-trk__note { font-family: var(--fnv-font-body); font-size:.8125rem; font-weight:500; color:var(--fnv-ink-muted); line-height:1.85; text-align:center; padding:18px 24px; background:var(--fnv-surface-2); border-top:0.5px solid var(--fnv-border); margin:0; }
.fnv-trk__note--empty { font-size:clamp(13px,1.15vw,16px); font-weight:600; }
.fnv-trk__note b { color:var(--fnv-ink); font-weight:900; }
/* لون النصّ !important إلزاميّ: قاعدة روابط عامّة تقلب الأبيض لأسود → نصّ غير مرئيّ (راجع buglog: btn-white-text-invisible). */
.fnv-trk__cta { display:inline-flex; align-items:center; gap:8px; font-family: var(--fnv-font-body); font-weight:800; font-size:15px; color:var(--fnv-dark-text) !important; background:var(--fnv-dark-bg); border:2px solid var(--fnv-dark-bg); padding:12px 28px; text-decoration:none !important; margin:24px 0; transition: background-color .2s, color .2s, border-color .2s, transform .2s; }
.fnv-trk__cta:hover { background:var(--fnv-surface); color:var(--fnv-ink) !important; }

@media (max-width:768px) {
    .fnv-trk__top { gap:18px; justify-content:center; }
    .fnv-trk__table th, .fnv-trk__table td { padding:8px 14px; }
    .fnv-trk__cap { padding:12px 14px 8px; }
}

/* ── sections/faq (كانت عند السطر 106) ── */
.editorial-accordion .accordion-button:not(.collapsed) {
    background-color: var(--fnv-ink) !important;
    color: var(--fnv-surface) !important;
}
.editorial-accordion .accordion-button::after {
    background-image: none !important;
    content: "+" !important;
    font-size: 2rem;
    font-weight: 400;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    margin-left: 0 !important;
    margin-right: auto !important;
    position: absolute;
    left: 1rem;
    color: var(--fnv-ink);
    transition: transform 0.3s ease;
}
.editorial-accordion .accordion-button:not(.collapsed)::after {
    content: "-" !important;
    transform: rotate(180deg);
    color: var(--fnv-surface);
    font-size: 2.5rem;
    line-height: 0.8;
}
/* ── Force dark text in FAQ answers regardless of TinyMCE inline color styles ── */
.editorial-accordion .accordion-body,
.editorial-accordion .accordion-body p,
.editorial-accordion .accordion-body span,
.editorial-accordion .accordion-body div,
.editorial-accordion .accordion-body li,
.editorial-accordion .accordion-body a {
    color: var(--fnv-ink) !important;
}
/* Closed button: force dark text + no blue outline */
.editorial-accordion .accordion-button.collapsed {
    color: var(--fnv-ink) !important;
    background-color: var(--fnv-surface) !important;
    box-shadow: none !important;
}
.editorial-accordion .accordion-button:focus {
    box-shadow: none !important;
    outline: none !important;
}

/* ── sections/how_it_work (كانت عند السطر 69) ── */
@keyframes pulse {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.2); opacity: 0.3; }
    100% { transform: scale(1); opacity: 1; }
}
.work-step-card:hover {
    border-color: var(--fnv-dark-text) !important;
    transform: translateY(-8px);
    box-shadow: none;
}
.work-step-card:hover .step-img {
    filter: grayscale(0%);
    opacity: 1 !important;
}

/* Ensure right alignment in RTL */
html[dir="rtl"] .text-lg-start {
    text-align: right !important;
}

/* ── sections/inside_platform (كانت عند السطر 159) ── */
.fnv-ip{background:var(--fnv-surface);padding:64px 0;border-top:1px solid var(--fnv-border);
    font-family: var(--fnv-font-body);}
.fnv-ip__head{max-width:760px;margin-bottom:30px;}
.fnv-ip__eyebrow{display:inline-block;font-family: var(--fnv-font-body);font-size:.8125rem;font-weight:800;
    color:var(--fnv-dark-text);background:var(--fnv-dark-bg);padding:5px 11px;margin-bottom:14px;}
.fnv-ip__title{font-family: var(--fnv-font-body);font-weight:800;font-size:clamp(1.5rem,3.4vw,2.15rem);
    line-height:1.5;color:var(--fnv-ink);margin:0 0 12px;}
.fnv-ip__sub{font-family: var(--fnv-font-body);font-size:.95rem;line-height:2;color:var(--fnv-ink-muted);margin:0;}
.fnv-ip__sub b{color:var(--fnv-ink);font-weight:700;}

.fnv-ip__board{border:1.5px solid var(--fnv-ink);}

/* ══ شريط الحالة ══ */
.fnv-ip__bar{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;
    background:var(--fnv-dark-bg);color:var(--fnv-dark-text);padding:11px 16px;}
/* الخطّ الماسح: أثرُ آلةٍ تعمل. أبيضُ باهت لا لونَ حالة (الميثاق §4). */
.fnv-ip__scan{position:absolute;top:0;bottom:0;inset-inline-start:0;width:120px;
    background:var(--fnv-surface);opacity:.07;animation:fnvIpScan 6s linear infinite;pointer-events:none;}
@keyframes fnvIpScan{from{inset-inline-start:-120px;}to{inset-inline-start:100%;}}
/* النقطة بيضاء لا خضراء: الأخضر محجوز لنصّ الأرقام. النبض وحده يقول «حيّ». */
.fnv-ip__live{width:8px;height:8px;background:var(--fnv-surface);flex-shrink:0;position:relative;
    animation:fnvIpPulse 2.4s ease-out infinite;}
@keyframes fnvIpPulse{0%{opacity:1;}55%{opacity:.25;}100%{opacity:1;}}
.fnv-ip__barlbl{font-family: var(--fnv-font-body);font-size:.8125rem;font-weight:800;
    color:var(--fnv-dark-text);position:relative;}
.fnv-ip__meter{margin-inline-start:auto;display:inline-flex;align-items:baseline;gap:6px;position:relative;}
.fnv-ip__meter b{font-family: var(--fnv-font-mono);font-size:.9rem;font-weight:700;color:var(--fnv-dark-text);}
.fnv-ip__of{font-family: var(--fnv-font-body);font-size:.8125rem;color:var(--fnv-dark-muted);}
/* أرقامٌ جدوليّة: العدّاد يتبدّل مع كلّ تصفية، وبعرضٍ متغيّر يقفز ما بعده. */
.fnv-ip__shown{font-variant-numeric:tabular-nums;}

/* ══ الرقائق ══ */
.fnv-ip__chips{display:flex;flex-wrap:wrap;gap:1px;background:var(--fnv-border);
    border-bottom:1px solid var(--fnv-border);}
.fnv-ip__chip{appearance:none;border:0;background:var(--fnv-surface);color:var(--fnv-ink-muted);
    font-family: var(--fnv-font-body);font-size:.8125rem;font-weight:700;padding:10px 15px;cursor:pointer;
    flex:1 1 auto;transition:background .16s ease,color .16s ease;}
.fnv-ip__chip:hover{background:var(--fnv-grid);color:var(--fnv-ink);}
.fnv-ip__chip.is-on{background:var(--fnv-ink);color:var(--fnv-bg);}
.fnv-ip__chip:focus-visible{outline:2px solid var(--fnv-ink);outline-offset:-3px;}

/* ══ الشبكة ══ */
.fnv-ip__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(276px,1fr));gap:0;
    background:var(--fnv-surface);border-block-start:1px solid var(--fnv-border);border-inline-start:1px solid var(--fnv-border)}
/* ⚖ hairgrid (2026-09-06): الخطوطُ من حدود البطاقات لا من خلفيّةٍ تحت الفجوات — لا خلايا رماديّةً يتيمة. */
.fnv-ip__grid>*{border-block-end:1px solid var(--fnv-border);border-inline-end:1px solid var(--fnv-border);min-width:0}
.fnv-ip__c{background:var(--fnv-surface);padding:16px 18px;position:relative;min-width:0;
    transition:background .16s ease;}
.fnv-ip__c[hidden]{display:none;}
.fnv-ip__c:hover{background:var(--fnv-bg);}
.fnv-ip__ch{display:flex;align-items:center;gap:9px;margin-bottom:8px;flex-wrap:wrap;}
.fnv-ip__no{font-family: var(--fnv-font-mono);font-size:.8125rem;font-weight:700;color:var(--fnv-ink-3);}
.fnv-ip__ch i{font-size:1.15rem;color:var(--fnv-ink);}
.fnv-ip__cl{font-family: var(--fnv-font-body);font-weight:800;font-size:.95rem;color:var(--fnv-ink);}
.fnv-ip__cd{font-family: var(--fnv-font-body);font-size:.83rem;line-height:1.95;color:var(--fnv-ink-muted);margin:0;}
/* اسم المجموعة داخل البطاقة: يبقى الانتماء مقروءاً بعد التصفية حين تغيب العناوين. */
.fnv-ip__grp{display:block;font-family: var(--fnv-font-body);font-size:.8125rem;font-weight:700;
    color:var(--fnv-ink-3);margin-top:9px;}
/* ⚠️ لا تُسمِّ هذا الصنف `badge` ولا تُدخِل «tag» في اسمه: قاعدة عامّة في
   finviro-base.css تستهدف `[class*="badge"]` و`[class*="tag"]` وتفرض خطّاً
   أحاديّاً وتباعدَ أحرف بـ!important ⇒ يُفكّ وصل العربيّة داخله (bug-136/145).
   الاسم السابق كان `fnv-ip__badge` وكان يقع في الفخّ فعلاً. */
.fnv-ip__state{font-family: var(--fnv-font-body);font-size:.8125rem;font-weight:800;
    padding:3px 7px;border:1px solid var(--fnv-border);color:var(--fnv-ink-3);margin-inline-start:auto;
    display:inline-flex;align-items:center;gap:4px;white-space:nowrap;}
.fnv-ip__state i{font-size:.8125rem;color:var(--fnv-ink-3);}
.fnv-ip__state--free{background:var(--fnv-dark-bg);color:var(--fnv-dark-text);border-color:var(--fnv-ink);}
.fnv-ip__state--free i{color:var(--fnv-dark-text);}
/* المقفل يُميَّز بحدٍّ جانبيّ لا بضبابٍ يُخفي النصّ — الوصف يجب أن يُقرأ. */
.fnv-ip__c.is-locked{border-inline-start:3px solid var(--fnv-border);}
.fnv-ip__c.is-free{border-inline-start:3px solid var(--fnv-dark-bg);}

/* الظهور المتدرّج يُركَّب بصنفٍ من JS فقط ⇒ من لا JS لديه يرى الشبكة كاملة. */
.fnv-ip__grid.is-anim .fnv-ip__c{opacity:0;transform:translateY(12px);}
.fnv-ip__grid.is-anim.is-in .fnv-ip__c{opacity:1;transform:none;
    transition:opacity .4s ease,transform .4s ease;
    transition-delay:calc(var(--fnv-ip-i,1) * 28ms);}

.fnv-ip__none{font-family: var(--fnv-font-body);font-size:.85rem;color:var(--fnv-ink-muted);
    margin:0;padding:22px 18px;text-align:center;background:var(--fnv-surface);}
.fnv-ip__none[hidden]{display:none;}

.fnv-ip__cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
    margin-top:26px;padding:20px 22px;border:1.5px solid var(--fnv-ink);}
.fnv-ip__ctatext{font-family: var(--fnv-font-body);font-size:.88rem;line-height:1.95;color:var(--fnv-ink-muted);
    flex:1 1 320px;margin:0;}
.fnv-ip__ctatext b{color:var(--fnv-ink);font-weight:800;}
/* !important إلزاميّ: قاعدة روابط عامّة تقلب الأبيض أسود ⇒ نصّ غير مرئيّ (bug-084). */
.fnv-ip__btn{font-family: var(--fnv-font-body);font-weight:800;font-size:.9rem;background:var(--fnv-dark-bg);
    color:var(--fnv-dark-text) !important;padding:13px 26px;text-decoration:none;white-space:nowrap;
    flex:0 0 auto;border:1.5px solid var(--fnv-dark-bg);}
.fnv-ip__btn:hover{background:var(--fnv-surface);color:var(--fnv-ink) !important;}

@media (max-width:600px){
    .fnv-ip{padding:44px 0;}
    .fnv-ip__cta{padding:16px;}
    .fnv-ip__chip{flex:1 1 44%;font-size:.8125rem;padding:9px 10px;}
}
@media (prefers-reduced-motion:reduce){
    .fnv-ip__scan,.fnv-ip__live{animation:none;}
    .fnv-ip__grid.is-anim .fnv-ip__c{opacity:1;transform:none;transition:none;}
}

/* ── sections/market_week (كانت عند السطر 98) ── */
.fnv-week {
    padding: 80px 0; background: var(--fnv-dark-bg); color: var(--fnv-dark-text);
    font-family: var(--fnv-font-body); border-bottom: 2px solid var(--fnv-dark-text);
}
.fnv-week__container { max-width: 1000px; margin: 0 auto; padding: 0 20px; }
.fnv-week__head { margin-bottom: 40px; max-width: 720px; }
/* الشارة عربيّة ⇒ خطّ المتن بلا `text-transform` (العربيّة بلا حالة أحرف). */
.fnv-week__badge {
    display: inline-block; padding: 6px 12px; margin-bottom: 18px;
    background: var(--fnv-surface); color: var(--fnv-ink);
    font-family: var(--fnv-font-body); font-size: .8125rem; font-weight: 700;
}
.fnv-week__title {
    font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 700;
    line-height: 1.25; margin-bottom: 18px; color: var(--fnv-dark-text);
}
.fnv-week__lead { font-size: .97rem; line-height: 1.9; color: var(--fnv-dark-muted); margin: 0; }

.fnv-week__list {
    list-style: none; margin: 0; padding: 0;
    border-top: 1px solid var(--fnv-dark-border);
}
.fnv-week__day {
    display: flex; gap: 24px; align-items: flex-start;
    padding: 18px 0; border-bottom: 1px solid var(--fnv-dark-border);
}
.fnv-week__when { flex: 0 0 108px; display: flex; flex-direction: column; gap: 4px; }
.fnv-week__dow  { font-size: .86rem; font-weight: 700; color: var(--fnv-dark-text); }
.fnv-week__date { font-family: var(--fnv-font-mono); font-size: .8125rem; color: var(--fnv-dark-muted); }
.fnv-week__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.fnv-week__row  { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.fnv-week__time {
    flex: 0 0 92px; font-family: var(--fnv-font-mono); font-size: .8125rem;
    color: var(--fnv-dark-muted); letter-spacing: .02em;
}
/* صنفٌ مستقلّ لا تجاوزٌ على `__time`: «أرباح» عربيّة ⇒ خطّ المتن (الأحاديّ بلا
   محارف عربيّة فتنكسر الوصلات). فصل الصنفين يمنع عودة الأحاديّ سهواً على نصٍّ عربيّ. */
.fnv-week__kind {
    flex: 0 0 92px; font-family: var(--fnv-font-body); font-size: .8125rem;
    font-weight: 600; color: var(--fnv-dark-muted);
}
.fnv-week__label { font-size: .88rem; font-weight: 500; color: var(--fnv-dark-text); }
/* ⛔ لا أخضر/أحمر على الوسوم: محجوزان لنصّ الأرقام وحده (الميثاق §4).
   ترتيب الأهمّيّة يُقرأ من الوزن والحدّ لا من اللون. */
.fnv-week__label--critical {
    background: var(--fnv-surface); color: var(--fnv-ink);
    padding: 3px 10px; font-weight: 700;
}
.fnv-week__label--high {
    border: 1px solid var(--fnv-dark-text); padding: 3px 10px; font-weight: 600;
}
.fnv-week__label--low { color: var(--fnv-dark-muted); font-weight: 400; }

.fnv-week__syms { display: flex; flex-wrap: wrap; gap: 6px; }
.fnv-week__sym {
    font-family: var(--fnv-font-mono); font-size: .8125rem; font-weight: 600;
    padding: 3px 8px; border: 1px solid var(--fnv-dark-border); color: var(--fnv-dark-muted);
}
.fnv-week__sym--mega {
    border-color: var(--fnv-dark-text); color: var(--fnv-dark-text); font-weight: 700;
}
.fnv-week__more { font-family: var(--fnv-font-mono); font-size: .8125rem; color: var(--fnv-dark-muted); align-self: center; }

.fnv-week__foot {
    margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--fnv-dark-border);
    display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
}
.fnv-week__note { font-size: .8125rem; line-height: 1.8; color: var(--fnv-dark-muted); margin: 0; flex: 1; min-width: 260px; }
/* لونٌ صريح على الزرّ: خلفيّةٌ بيضاء داخل قسمٍ أسود ⇒ بدونه يرث النصّ الأبيض
   فيصير أبيضَ على أبيض (نفس عطب bug-084). */
.fnv-week__cta {
    display: inline-block; padding: 12px 26px;
    background: var(--fnv-surface); color: var(--fnv-ink);
    font-size: .88rem; font-weight: 700; text-decoration: none; flex-shrink: 0;
}
.fnv-week__cta:hover { background: var(--fnv-dark-muted); color: var(--fnv-ink); }

@media (max-width: 767.98px) {
    .fnv-week { padding: 56px 0; }
    .fnv-week__day { flex-direction: column; gap: 10px; }
    .fnv-week__when { flex-direction: row; align-items: baseline; gap: 10px; }
    .fnv-week__time, .fnv-week__kind { flex-basis: auto; }
}

/* ── sections/testimonial (كانت عند السطر 78) ── */
/* ══ Testimonials ══ */
.fnv-testimonials {
    padding: 80px 0 60px;
    background: var(--fnv-surface);
    border-top: 1.5px solid var(--fnv-ink);
}

.fnv-testi-header { text-align: center; margin-bottom: 48px; }

.fnv-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
}
.fnv-kicker-line {
    display: block;
    height: 1.5px;
    width: 36px;
    background: var(--fnv-ink);
}
.fnv-kicker-text {
    font-family: 'Readex Pro', sans-serif;
    font-size: 1.15rem;
    font-weight: 900;
    color: var(--fnv-ink);
}

.fnv-testi-title {
    font-family: 'Readex Pro', sans-serif;
    font-size: clamp(1.8rem, 3.5vw, 2.6rem);
    font-weight: 900;
    color: var(--fnv-ink);
    line-height: 1.2;
    margin: 0;
}

/* Slider */
.fnv-testi-slider-wrap {
    position: relative;
    max-width: 820px;
    margin: 0 auto;
}

.fnv-testi-track { position: relative; min-height: 280px; }

.fnv-testi-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease;
    display: flex;
    align-items: stretch;
}
.fnv-testi-slide.active {
    opacity: 1;
    pointer-events: auto;
    position: relative;
}

/* Card */
.fnv-testi-card {
    width: 100%;
    border: 2px solid var(--fnv-ink);
    box-shadow: none;
    background: var(--fnv-surface);
    padding: 40px 48px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.fnv-testi-stars { display: flex; gap: 4px; }

.fnv-testi-quote {
    font-family: 'Readex Pro', sans-serif;
    font-size: clamp(1.1rem, 1.8vw, 1.4rem);
    font-weight: 600;
    color: var(--fnv-ink);
    line-height: 1.75;
    margin: 0;
    quotes: none;
}

.fnv-testi-author {
    font-family:'Readex Pro', sans-serif;
    font-size: .8125rem;
    font-weight: 700;
    color: var(--fnv-ink-3);
    letter-spacing: 0.05em;
    font-style: normal;
    margin-top: auto;
}

/* Arrows */
.fnv-testi-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border: 1.5px solid var(--fnv-ink);
    background: var(--fnv-surface);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, color 0.2s;
    z-index: 10;
    color: var(--fnv-ink);
}
.fnv-testi-arrow:hover { background: var(--fnv-ink); color: var(--fnv-surface); }
.fnv-testi-prev { left: -54px; }
.fnv-testi-next { right: -54px; }

/* Dots */
.fnv-testi-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 32px;
}
.fnv-dot {
    width: 10px;
    height: 10px;
    border-radius:0; /* ⛔ كانت 50% — §4أ (2026-09-05) */
    border: 1.5px solid var(--fnv-ink);
    background: var(--fnv-surface);
    cursor: pointer;
    padding: 0;
    transition: background 0.25s, transform 0.25s;
}
.fnv-dot.active {
    background: var(--fnv-ink);
    transform: scale(1.25);
}

.fnv-testi-counter {
    text-align: center;
    margin-top: 14px;
    font-family:'Readex Pro', sans-serif;
    font-size: .85rem;
    color: var(--fnv-ink-muted);
    font-weight: 700;
    letter-spacing: 0.1em;
}
.fnv-testi-sep { margin: 0 6px; }

/* Mobile */
@media (max-width: 767px) {
    .fnv-testi-card { padding: 28px 24px; }
    .fnv-testi-prev { left: -8px; }
    .fnv-testi-next { right: -8px; }
    .fnv-testi-slider-wrap { padding: 0 40px; }
}

/* ── sections/tools_pipeline (كانت عند السطر 248) ── */
.fnv-pl{background:var(--fnv-dark-bg);color:var(--fnv-dark-text);padding:64px 0;
    border-block:1px solid var(--fnv-ink);font-family: var(--fnv-font-body);}
.fnv-pl__head{max-width:780px;margin:0 0 34px;}
/* الشارة عربيّة ⇒ خطّ المتن بلا تباعد أحرف؛ الكلمة اللاتينيّة وحدها أحاديّة. */
.fnv-pl__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:800;
    color:var(--fnv-ink);background:var(--fnv-surface);padding:5px 12px;margin-bottom:14px;}
.fnv-pl__eyebrow i{font-family: var(--fnv-font-mono);font-style:normal;letter-spacing:normal;font-size:.8125rem;}
.fnv-pl__h{font-family: var(--fnv-font-body);font-weight:800;color:var(--fnv-dark-text);
    font-size:clamp(1.45rem,3.2vw,2.15rem);line-height:1.5;margin:0 0 12px;}
.fnv-pl__lead{font-size:.95rem;line-height:2;color:var(--fnv-dark-muted);margin:0;}
.fnv-pl__lead b{color:var(--fnv-dark-text);font-weight:700;}

/* ══ السكّة ══ */
.fnv-pl__rail{position:relative;display:grid;grid-template-columns:repeat(4,1fr);
    gap:1px;background:var(--fnv-dark-border);border:1px solid var(--fnv-dark-border);}
.fnv-pl__track{position:absolute;inset-inline:0;top:0;height:2px;overflow:hidden;pointer-events:none;}
/* «الإشارة» التي تمشي في الخطّ: هي كلّ معنى الأتمتة في عنصرٍ واحد. */
.fnv-pl__signal{position:absolute;top:0;inset-inline-start:0;width:22%;height:100%;
    background:var(--fnv-surface);opacity:.55;animation:fnvPlSig 5.5s linear infinite;}
@keyframes fnvPlSig{from{inset-inline-start:-22%;}to{inset-inline-start:100%;}}

.fnv-pl__node{position:relative;appearance:none;border:0;background:var(--fnv-dark-bg);
    color:var(--fnv-dark-muted);font-family: var(--fnv-font-body);text-align:start;
    padding:16px 16px 18px;cursor:pointer;display:flex;flex-direction:column;gap:5px;
    transition:background .18s ease,color .18s ease;}
.fnv-pl__node:hover{background:var(--fnv-dark-surface);color:var(--fnv-dark-text);}
.fnv-pl__node.is-on{background:var(--fnv-surface);color:var(--fnv-ink);}
.fnv-pl__node:focus-visible{outline:2px solid var(--fnv-dark-text);outline-offset:-4px;}
.fnv-pl__num{font-family: var(--fnv-font-mono);font-size:.8125rem;font-weight:700;opacity:.75;}
.fnv-pl__tab{font-size:.92rem;font-weight:800;display:block;}
.fnv-pl__tab-en{display:block;font-family:'Readex Pro', sans-serif;font-size:.8125rem;
    font-weight:600;letter-spacing:.06em;opacity:.55;margin-top:2px;direction:ltr;}
.fnv-pl__prog{position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--fnv-dark-border);}
.fnv-pl__prog i{display:block;height:100%;width:0;background:var(--fnv-dark-bg);}
.fnv-pl__node.is-on .fnv-pl__prog i{width:100%;transition:width var(--fnv-pl-dur,6s) linear;}
.fnv-pl__node:not(.is-on) .fnv-pl__prog i{width:0;transition:none;}
/* التوقّف اليدويّ: تُنزَع الحركة فيتجمّد الشريط مكانه بدل أن يكذب بامتلائه. */
.fnv-pl.is-held .fnv-pl__node.is-on .fnv-pl__prog i{width:0;transition:none;}
.fnv-pl.is-held .fnv-pl__signal{animation-play-state:paused;}

/* ══ الشاشة ══ */
.fnv-pl__deck{border:1px solid var(--fnv-dark-border);border-top:0;}
.fnv-pl__panel{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:36px 30px;
    animation:fnvPlIn .34s ease both;}
.fnv-pl__panel[hidden]{display:none;}
/* `min-width:0` ليست زينة: عمود شبكةٍ افتراضُه `auto` فلا ينكمش دون محتواه،
   فسطرٌ طويل بلا مسافات (رابط، رمز) يوسّع الشبكة ويُخرج القسم أفقيّاً. */
.fnv-pl__txt{min-width:0;}
@keyframes fnvPlIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.fnv-pl__t{font-family: var(--fnv-font-body);font-weight:800;color:var(--fnv-dark-text);
    font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.6;margin:0 0 14px;}
.fnv-pl__d{font-size:.92rem;line-height:2;color:var(--fnv-dark-muted);margin:0 0 18px;}
.fnv-pl__ul{list-style:none;padding:0;margin:0;}
.fnv-pl__ul li{position:relative;font-size:.88rem;font-weight:500;line-height:1.8;
    color:var(--fnv-dark-text);padding-inline-start:20px;margin-bottom:9px;}
/* علامة بيضاء لا خضراء: الأخضر لنصّ الأرقام حصراً (الميثاق §4). */
.fnv-pl__ul li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;
    width:8px;height:2px;background:var(--fnv-surface);}

.fnv-pl__vis{display:flex;justify-content:center;}
.fnv-pl__scr{width:100%;max-width:440px;margin:0;background:var(--fnv-bg);border:2px solid var(--fnv-dark-text);}
.fnv-pl__bar{background:var(--fnv-grid);padding:9px 13px;display:flex;align-items:center;gap:6px;
    border-bottom:1px solid var(--fnv-border);}
.fnv-pl__dot{width:7px;height:7px;background:var(--fnv-ink-3);flex-shrink:0;}
.fnv-pl__url{margin-inline-start:auto;font-family: var(--fnv-font-mono);font-size:.8125rem;color:var(--fnv-ink-muted);}
/* لونٌ صريح إلزاميّ: صندوقٌ أبيض داخل قسمٍ أسود يرث النصّ الأبيض ⇒ أبيضُ على أبيض (bug-084). */
.fnv-pl__body{padding:26px;background:var(--fnv-bg);color:var(--fnv-ink);min-height:212px;
    display:flex;flex-direction:column;justify-content:center;align-items:center;}
.fnv-pl__body--tight{padding:16px;}
/* اللون يُقلَب مع الخلفيّة لا بعدها: هذا المتغيّر يقلب الشاشة إلى سوداء، ولو بقي
   `color` أسودَ من `.fnv-pl__body` لصار أيّ نصٍّ يُضاف هنا غيرَ مرئيّ (فخّ bug-084). */
.fnv-pl__body--rows{justify-content:flex-start;padding:16px;gap:8px;
    background:var(--fnv-dark-bg);color:var(--fnv-dark-text);}
.fnv-pl__note{font-size:.8125rem;color:var(--fnv-ink-muted);padding:8px 13px;text-align:center;
    border-top:1px solid var(--fnv-border);background:var(--fnv-grid);}

.fnv-pl__bars{display:flex;align-items:flex-end;gap:13px;height:112px;width:100%;justify-content:center;
    margin-bottom:18px;border-bottom:2px solid var(--fnv-ink);padding-bottom:9px;}
.fnv-pl__bars span{width:28px;background:var(--fnv-ink);transform-origin:bottom;
    animation:fnvPlBar .55s cubic-bezier(.2,.7,.3,1) both;}
.fnv-pl__bars span:nth-child(2){animation-delay:.06s;}
.fnv-pl__bars span:nth-child(3){animation-delay:.12s;}
.fnv-pl__bars span:nth-child(4){animation-delay:.18s;}
.fnv-pl__bars span:nth-child(5){animation-delay:.24s;}
@keyframes fnvPlBar{from{transform:scaleY(0);}to{transform:scaleY(1);}}
/* البرتقاليّ = القراءة السالبة (الميثاق §4)، لا الأحمر المشعّ. */
.fnv-pl__bars span.is-neg{background:var(--fnv-gamma-neg);}
.fnv-pl__cap{font-size:.8125rem;font-weight:600;color:var(--fnv-ink);padding:7px 15px;
    background:var(--fnv-grid);border:1px solid var(--fnv-ink);}

.fnv-pl__gx{width:100%;border:1px solid var(--fnv-ink);padding:14px;}
.fnv-pl__gx-top{display:flex;align-items:baseline;justify-content:space-between;
    padding-bottom:9px;margin-bottom:11px;border-bottom:2px solid var(--fnv-ink);}
.fnv-pl__gx-row{display:flex;align-items:center;justify-content:space-between;
    padding:8px 10px;margin-bottom:7px;border:1px solid var(--fnv-border);}
.fnv-pl__gx-row:last-child{margin-bottom:0;}
/* أزرق = غاما موجبة (كبح) · برتقاليّ = سالبة (تسارع) — الميثاق §4. لا أخضر ولا أحمر. */
.fnv-pl__gx-row.is-pos{border-inline-start:3px solid var(--fnv-gamma-pos);background:var(--fnv-gamma-pos-bg);}
.fnv-pl__gx-row.is-neg{border-inline-start:3px solid var(--fnv-gamma-neg);background:var(--fnv-gamma-neg-bg);}
.fnv-pl__k{font-family: var(--fnv-font-mono);font-size:.8125rem;font-weight:700;color:var(--fnv-ink-muted);}
.fnv-pl__v{font-family: var(--fnv-font-mono);font-size:.86rem;font-weight:700;color:var(--fnv-ink);}
.fnv-pl__v--lg{font-size:1.02rem;}
.fnv-pl__empty{font-size:.85rem;color:var(--fnv-ink-muted);text-align:center;margin:0;}

.fnv-pl__fr{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
    padding:10px 12px;background:var(--fnv-dark-bg);border:1px solid var(--fnv-dark-border);}
.fnv-pl__fr .fnv-pl__k{color:var(--fnv-dark-text);font-size:.8125rem;}
.fnv-pl__mask{font-family: var(--fnv-font-mono);font-size:.8125rem;color:var(--fnv-dark-muted);letter-spacing:.12em;}
.fnv-pl__lock{font-size:.8125rem;font-weight:600;color:var(--fnv-dark-muted);
    display:inline-flex;align-items:center;gap:5px;}
.fnv-pl__lock i{font-size:.84rem;}

.fnv-pl__pbk-l{font-size:.8125rem;font-weight:600;color:var(--fnv-ink-muted);margin-bottom:9px;}
.fnv-pl__pbk-n{background:var(--fnv-ink);color:var(--fnv-bg);padding:9px 18px;margin-bottom:20px;
    font-family: var(--fnv-font-mono);font-weight:700;font-size:.92rem;}
.fnv-pl__pbk-g{display:flex;width:100%;border:1px solid var(--fnv-ink);}
.fnv-pl__pbk-g > div{flex:1;text-align:center;padding:11px 8px;}
.fnv-pl__pbk-g > div + div{border-inline-start:1px solid var(--fnv-ink);}
.fnv-pl__pbk-k{font-size:.8125rem;color:var(--fnv-ink-muted);margin-bottom:5px;}
/* الأحاديّ للقيمة الرقميّة وحدها — الخليّة العربيّة تأخذ خطّ المتن. */
.fnv-pl__pbk-v{font-size:.83rem;font-weight:700;color:var(--fnv-ink);}
.fnv-pl__pbk-v[dir="ltr"]{font-family: var(--fnv-font-mono);}

@media (max-width:860px){
    .fnv-pl__panel{grid-template-columns:1fr;gap:26px;padding:26px 18px;}
    .fnv-pl__rail{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
    .fnv-pl{padding:44px 0;}
    .fnv-pl__node{padding:12px 12px 15px;}
    .fnv-pl__tab{font-size:.85rem;}
}
/* ♿ من طلب تقليل الحركة يحصل على القسم كاملاً بلا حركةٍ واحدة. */
@media (prefers-reduced-motion:reduce){
    .fnv-pl__signal,.fnv-pl__bars span{animation:none;}
    .fnv-pl__panel{animation:none;}
    .fnv-pl__node.is-on .fnv-pl__prog i{transition:none;width:100%;}
}

/* ── sections/why_choose_us (كانت عند السطر 84) ── */
.editorial-card:hover {
    transform: translate(-4px, -4px);
    box-shadow: none !important;
    background: var(--fnv-surface-2) !important;
}

.fnv-btn-editorial {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--fnv-ink);
    color: var(--fnv-surface) !important;
    font-family: var(--fnv-font-heading, 'Readex Pro', sans-serif);
    font-weight: 800;
    font-size: 1.2rem;
    padding: 16px 40px;
    text-decoration: none;
    border: 2px solid var(--fnv-ink);
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
    box-shadow: none;
}
.fnv-btn-editorial:hover {
    background: var(--fnv-surface);
    color: var(--fnv-ink) !important;
    box-shadow: none;
    transform: translate(-2px, -2px);
}
