:root{
    --primary:#1D6FB8;
    --primary-light:#4A94D6;
    --secondary:#F5A623;
    --secondary-light:#FFC768;
    --accent-green:#6DBE45;
    --ink:#16324A;
    --text-dark:#1e293b;
    --muted:#5c6b73;
    --cream:#f6f9f9;
    --line:rgba(22,50,74,.1);
}

*{ margin:0; padding:0; box-sizing:border-box; font-family:'Cairo', sans-serif; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible{
  outline:2.5px solid var(--secondary) !important; outline-offset:3px !important; border-radius:4px;
}
html{ scroll-behavior:smooth; height:100%; }
/* تثبيت الفوتر أسفل الصفحة فعليًا حتى لو كان محتوى الصفحة أقصر من ارتفاع الشاشة (نمط sticky
   footer): body عمود flex بأقل ارتفاع = الشاشة كاملة، والفوتر يُدفَع لأسفله عبر margin-top:auto
   بدل أن يظهر معلّقًا بعد محتوى قصير وفراغ أبيض تحته. */
body{ background:#fff; color:var(--text-dark); direction:rtl; text-align:right; overflow-x:hidden; min-height:100vh; display:flex; flex-direction:column; }
/* في عمود flex هذا، عناصر body المباشرة (غير المُثبَّتة) لا تتمدد تلقائيًا لعرض الشاشة الكامل
   بحكم حجمها الافتراضي المبني على المحتوى رغم stretch — نفرضه صراحة بدل الاعتماد على السلوك
   الافتراضي، حتى لا تنكمش أي قطاعات (كقسم الإنجازات، الأعمال، دعوة التبرع...) لعرض أضيق. */
body > *{ width:100%; }
body > .tk-footer{ margin-top:auto; }
img{ max-width:100%; display:block; }
a{ text-decoration:none; color:inherit; }
button{ border:none; background:none; cursor:pointer; font-family:'Cairo', sans-serif; }

/* ================= Loader ================= */
.tk-loader{
    position:fixed; inset:0; z-index:99999; overflow:hidden;
    background:
        radial-gradient(circle at 15% 20%, rgba(29,111,184,.16) 0%, transparent 45%),
        radial-gradient(circle at 85% 15%, rgba(109,190,69,.14) 0%, transparent 42%),
        radial-gradient(circle at 20% 85%, rgba(245,166,35,.14) 0%, transparent 42%),
        radial-gradient(circle at 88% 88%, rgba(29,111,184,.12) 0%, transparent 45%),
        #F7FAFC;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px;
    transition:opacity .5s ease, visibility .5s ease;
}
body.tk-loaded .tk-loader{ opacity:0; visibility:hidden; pointer-events:none; }

.tk-loader-stage{ position:relative; width:180px; height:180px; }
/* صورة ثابتة (بدون model-viewer حي) */
.tk-loader-model-wrap{
    position:absolute; inset:0; width:180px; height:180px; object-fit:contain;
    opacity:0; transform:scale(.7); transition:opacity .7s ease, transform .7s cubic-bezier(.34,1.56,.64,1);
}
.tk-loader-stage.tk-revealed .tk-loader-model-wrap{ transform:scale(1); }
.tk-loader-stage.tk-revealed .tk-loader-model-wrap{ opacity:1; }

.tk-loader-pieces{ position:absolute; inset:0; transition:opacity .3s ease; }
.tk-loader-piece{ position:absolute; width:36px; height:36px; border-radius:50%; opacity:1; box-shadow:0 8px 18px rgba(0,0,0,.15); transition:transform 1s cubic-bezier(.34,1.56,.64,1); }
.tk-piece-1{ background:var(--primary); top:14px; left:56px; transform:translate(-130px,-110px) rotate(-120deg) scale(.6); }
.tk-piece-2{ background:var(--accent-green); bottom:24px; left:16px; transform:translate(150px,90px) rotate(140deg) scale(.6); }
.tk-piece-3{ background:var(--secondary); bottom:24px; right:16px; transform:translate(-160px,110px) rotate(-140deg) scale(.6); }
.tk-loader-stage.tk-assembled .tk-loader-piece{ transform:translate(0,0) rotate(0deg) scale(1); }
.tk-loader-stage.tk-spin-out .tk-loader-pieces{ animation:tkPiecesSpinOut .6s ease-in forwards; }
@keyframes tkPiecesSpinOut{ from{ transform:rotate(0) scale(1); opacity:1; } to{ transform:rotate(-300deg) scale(.3); opacity:0; } }
.tk-loader-stage.tk-revealed .tk-loader-pieces{ display:none; }

.tk-loader-name{ font-weight:800; font-size:15px; color:var(--ink); text-align:center; max-width:340px; text-wrap:balance; opacity:0; transform:translateY(10px); transition:opacity .6s ease, transform .6s ease; }
.tk-loader-stage.tk-revealed ~ .tk-loader-name{ opacity:1; transform:translateY(0); }

/* ================= Header ================= */
.tk-header{
    position:fixed; top:0; right:0; left:0; z-index:1000; height:84px;
    background:rgba(255,255,255,.85); backdrop-filter:blur(16px) saturate(180%); -webkit-backdrop-filter:blur(16px) saturate(180%);
    box-shadow:0 1px 0 rgba(22,50,74,.06), 0 12px 30px -14px rgba(22,50,74,.15);
    transition:background .3s ease, box-shadow .3s ease;
}
.tk-header.tk-header-on-hero{ background:rgba(255,255,255,.92); }
.tk-header-inner{
    max-width:1360px; margin:0 auto; height:84px; padding:0 24px;
    display:flex; align-items:center; justify-content:space-between; gap:20px;
}
/* الشعار أقصى يمين الهيدر (أول عنصر في اتجاه RTL)، بتخطيط flex */
.tk-logo{ display:flex; align-items:center; gap:10px; flex-shrink:0; order:1; }
.tk-logo-icon{ width:40px; height:40px; flex-shrink:0; }
.tk-logo-text{ font-weight:900; font-size:16px; color:var(--ink); white-space:nowrap; }
.tk-logo-text-wrap{ display:flex; flex-direction:column; line-height:1.35; white-space:nowrap; }
.tk-logo-text-wrap strong{ font-size:15px; font-weight:900; color:var(--primary); }
.tk-logo-text-wrap span{ font-size:11px; font-weight:700; color:var(--muted); }
.tk-logo img{ height:56px; width:auto; }
.tk-logo img.tk-logo-full{ height:54px; width:auto; max-width:100%; }
.tk-header-actions-col{ display:flex; align-items:center; justify-content:flex-start; gap:14px; order:3; }
.tk-header-inner > .tk-nav{ order:2; }
.tk-nav{ list-style:none; display:flex; align-items:center; gap:4px; flex:1; justify-content:center; }
.tk-nav > li{ position:relative; }
.tk-nav > li > a{ position:relative; display:flex; align-items:center; gap:6px; padding:11px 16px; font-weight:700; font-size:14px; color:var(--ink); border-radius:10px; transition:.2s; }
.tk-nav > li > a::after{
    content:''; position:absolute; right:16px; left:16px; bottom:5px; height:2px; border-radius:2px;
    background:linear-gradient(90deg, var(--primary), var(--accent-green)); transform:scaleX(0); transform-origin:center; transition:transform .25s ease;
}
.tk-nav > li > a:hover{ color:var(--primary); background:var(--cream); }
.tk-nav > li > a:hover::after{ transform:scaleX(1); }
.tk-nav > li > a.active{ color:var(--primary); }
.tk-nav > li > a.active::after{ transform:scaleX(1); }
.tk-dropdown li a.active{ background:var(--cream); color:var(--primary); }
.tk-dropdown li a.active i:first-child{ background:var(--primary); color:#fff; }
.tk-nav > li > a .chev{ font-size:10px; transition:transform .25s ease; opacity:.6; }
.tk-nav > li:hover > a .chev{ transform:rotate(180deg); opacity:1; }
.tk-dropdown{
    list-style:none; position:absolute; top:calc(100% + 16px); right:0; min-width:260px;
    background:rgba(255,255,255,.92); backdrop-filter:blur(20px) saturate(180%); -webkit-backdrop-filter:blur(20px) saturate(180%);
    border:1px solid rgba(255,255,255,.8); border-radius:20px; box-shadow:0 28px 60px -14px rgba(22,50,74,.25);
    padding:12px; opacity:0; visibility:hidden; transform:translateY(8px) scale(.97); transition:.25s cubic-bezier(.22,1,.36,1); z-index:50;
    column-gap:8px;
}
/* لا overflow:hidden هنا عمدًا: كانت تقصّ أي قائمة فرعية أعمق (مستوى ثالث فأكثر) تنفتح
   جانبيًا خارج حدود هذا الصندوق. الشريط اللوني ::before يحمل نفس انحناء الحواف بدل
   الاعتماد على قصّ الأب، فتبقى الزوايا مستديرة بصريًا دون كسر تعشيش القوائم. */
.tk-dropdown::before{
    content:''; position:absolute; top:0; right:0; left:0; height:3px; border-radius:20px 20px 0 0;
    background:linear-gradient(90deg, var(--primary), var(--accent-green), var(--secondary-light));
}
.tk-nav > li > .tk-dropdown:has(li:nth-child(5)){ columns:2; min-width:430px; }
.tk-nav > li > .tk-dropdown:has(li:nth-child(9)){ columns:3; min-width:630px; max-height:70vh; overflow-y:auto; }
.tk-nav > li:hover > .tk-dropdown{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }

/* المستوى الثالث فأكثر (قائمة داخل قائمة داخل قائمة...): ينفتح جانبيًا (flyout) بدل
   الظهور أسفل الأب مباشرة، بنفس أسلوب ووردبريس للقوائم المتداخلة. */
.tk-dropdown li.tk-has-children{ position:relative; }
.tk-dropdown li.tk-has-children:hover > .tk-dropdown{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.tk-dropdown .tk-dropdown{ top:-12px; right:calc(100% + 10px); left:auto; columns:1 !important; min-width:240px; max-height:none; overflow-y:visible; }
.tk-dropdown li.tk-has-children:hover > a .chev{ transform:rotate(180deg); opacity:1; }
.tk-dropdown li{ break-inside:avoid; }
.tk-dropdown li a{ display:flex; align-items:center; gap:10px; padding:10px 12px; font-size:13.5px; font-weight:700; color:var(--ink); border-radius:12px; transition:.2s; }
.tk-dropdown li a i:first-child{
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
    width:22px; height:22px; border-radius:50%; background:var(--cream); color:var(--primary); font-size:10px; transition:.2s;
}
.tk-dropdown li a:hover{ background:var(--cream); color:var(--primary); }
.tk-dropdown li a:hover i:first-child{ background:var(--primary); color:#fff; transform:translateX(-2px); }
.tk-cta{
    display:inline-flex; align-items:center; gap:8px; background:var(--secondary); color:#2b2007;
    font-weight:800; font-size:14px; padding:12px 22px; border-radius:12px; transition:.25s;
}
.tk-cta:hover{ background:var(--secondary-light); transform:translateY(-2px); }
.tk-cta-light{ background:#fff; color:var(--primary); }
.tk-header-actions{ display:flex; align-items:center; gap:10px; }
/* زر المتجر يُدفع لأقصى يسار الهيدر: order أعلى من بقية عناصر هذا الصندوق يضعه آخر
   العناصر في تدفّق RTL، أي أبعدها عن الشعار (يمين) وأقربها لحافة الشاشة اليسرى. */
.tk-cta-store{ order:3; }
.tk-account-avatar{
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
    width:42px; height:42px; border-radius:50%; background:transparent;
    border:1px solid rgba(22,50,74,.18); color:var(--ink); font-size:16px; transition:.2s;
}
.tk-account-avatar:hover{ background:var(--cream); color:var(--primary); border-color:var(--primary); }
.tk-burger{ display:none; font-size:20px; color:var(--ink); }
.tk-mobile-only{ display:none; }

@media (max-width:960px){
    .tk-nav{
        position:fixed; top:0; left:0; height:100vh; width:min(320px,85vw); background:#fff;
        flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0; padding:20px;
        transform:translateX(-100%); transition:transform .35s ease; overflow-y:auto; z-index:1100;
        box-shadow:20px 0 50px rgba(0,0,0,.15);
    }
    .tk-nav.tk-open{ transform:translateX(0); }
    .tk-nav > li{ width:100%; }
    .tk-dropdown{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; display:none; padding-inline-start:14px; border-top:none; columns:1 !important; min-width:0 !important; right:auto; }
    /* > .tk-dropdown مباشرة (بلا .tk-nav>) حتى يعمل التوسيع على أي مستوى تعشيش، وليس
       المستوى الأول فقط كما كان سابقًا. */
    .tk-has-children.tk-expanded > .tk-dropdown{ display:block; }
    .tk-mobile-only{ display:flex; }
    .tk-nav-head{ justify-content:space-between; align-items:center; margin-bottom:14px; }
    .tk-nav-head-logo img{ height:40px; }
    .tk-nav-close{ font-size:18px; color:var(--ink); }
    .tk-nav-foot{ margin-top:auto; flex-direction:column; gap:10px; padding-top:16px; border-top:1px solid var(--line); }
    .tk-nav-foot-social{ display:flex; gap:14px; }
    .tk-nav-foot-social a{ color:var(--primary); font-size:16px; }
    .tk-nav-foot-note{ font-size:12px; color:var(--muted); font-weight:700; }
    .tk-nav-donate-li{ margin:10px 0; }
    .tk-desktop-only{ display:none; }
    .tk-burger{ display:flex; }
    /* الهيدر في الهاتف أضيق بكثير من سطح المكتب: نقلّص شعار النص الفرعي وحشوة زر
       المتجر حتى لا يفيض المحتوى أفقيًا خارج عرض الشاشة. */
    .tk-header-inner{ padding:0 14px; gap:8px; }
    .tk-logo-text-wrap{ white-space:normal; max-width:150px; }
    .tk-logo-text-wrap span{ display:block; font-size:9px; line-height:1.4; white-space:normal; }
    .tk-logo-text-wrap strong{ font-size:12.5px; white-space:normal; }
    .tk-logo img{ height:42px; }
    .tk-logo img.tk-logo-full{ height:38px; }
    .tk-logo-icon{ width:30px; height:30px; }
    .tk-mobile-header-cta{ padding:10px 14px; font-size:13px; gap:6px; }
    /* شفافة بالكامل، فوق المحتوى لإغلاق القائمة عند الضغط خارجها، تحت الهيدر (z-index أقل من 1000) */
    .tk-nav-scrim{ position:fixed; inset:0; background:transparent; opacity:0; visibility:hidden; transition:.3s; z-index:900; }
    .tk-nav-scrim.tk-show{ opacity:1; visibility:visible; }
}

/* ================= Hero + About ================= */
.tk-hero-about{ position:relative; width:100%; height:100vh; min-height:560px; overflow:hidden; background:#fff; }
.tk-hero-video{
    position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:2;
    transition:opacity 1s ease;
}
.tk-hero-video.tk-fade-out{ opacity:0; pointer-events:none; }
/* توسيط عبر flexbox */
.tk-hero-about-bg{
    position:absolute; inset:0; z-index:1;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
    padding:90px 4% 30px;
}
.tk-hero-bg-layer{ position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.6s ease; z-index:-1; }
.tk-hero-bg-layer.tk-active{ opacity:1; }

/* الشعار: خارج البطاقة تمامًا وثابت، يتوسط تلقائيًا بحكم عمود flex الأب */
.tk-hero-badge{ position:relative; z-index:3; display:flex; flex-direction:column; align-items:center; gap:6px; }
.tk-hero-badge-caption{ background:#fff; border:1px solid var(--line); box-shadow:0 10px 24px -14px rgba(22,50,74,.3); border-radius:999px; padding:6px 16px; font-size:clamp(12px,2.8vw,13px); font-weight:800; color:var(--ink); white-space:normal; text-align:center; }
.tk-about-model-slot{
    width:96px; height:96px; filter:drop-shadow(0 10px 20px rgba(22,50,74,.2)); margin:0 auto;
    background-size:75%; background-repeat:no-repeat; background-position:center;
}
.tk-about-model{ display:block; width:100%; height:100%; --poster-color:transparent; }
/* تحجز model-viewer مساحتها كـ block دائمًا بغض النظر عن حالة تحميل مكتبتها */
model-viewer{ display:block; }
.tk-spin-clockwise{ animation:tkSpinClockwise 14s linear infinite; }
@keyframes tkSpinClockwise{ 100%{ transform:rotate(360deg); } }

/* بطاقة النص: تتوسط تلقائيًا (margin:auto ضمن عمود flex)، عرضها الأقصى
   قابل للتحكم من لوحة التحكم (hero_card_max_width) */
.tk-hero-framebox{
    position:relative; z-index:1; width:100%; max-width:760px; min-height:260px;
    background:rgba(255,255,255,.88); backdrop-filter:blur(16px) saturate(160%); -webkit-backdrop-filter:blur(16px) saturate(160%);
    border:1px solid rgba(255,255,255,.9); border-radius:28px; box-shadow:0 30px 60px -20px rgba(22,50,74,.25);
    display:grid; padding:34px 30px;
}
.tk-hero-cycle{ display:grid; }
.tk-hero-slide{
    grid-area:1/1; display:flex; align-items:center; justify-content:center; gap:3%; padding:0 2%;
    opacity:0; visibility:hidden; transform:scale(.97); filter:blur(6px);
    transition:opacity 1s var(--ease,ease), transform 1s ease, filter 1s ease, visibility 0s linear 1s;
    pointer-events:none;
}
.tk-hero-slide.tk-active{ opacity:1; visibility:visible; transform:scale(1); filter:blur(0); pointer-events:auto; transition-delay:0s; }

.tk-about-copy-slot{ position:relative; z-index:1; max-width:100%; text-align:center; }
.tk-about-copy-slot h2{ font-size:clamp(16px,2.2vw,25px); font-weight:900; color:var(--ink); margin:8px 0 8px; }
.tk-about-copy-slot h2 span{ color:var(--primary); }
.tk-about-copy-slot p{ font-size:clamp(14px,1.15vw + 12px,15px); line-height:1.75; color:var(--muted); font-weight:600; }
.tk-section-eyebrow{ display:inline-block; font-size:12.5px; font-weight:800; color:var(--secondary); background:rgba(245,166,35,.12); padding:6px 14px; border-radius:999px; }

.tk-hero-welcome-shadow{ position:absolute; width:70%; max-width:340px; aspect-ratio:1/1; top:50%; left:50%; transform:translate(-50%,-50%); z-index:0; pointer-events:none; }
.tk-hero-welcome-title{ position:relative; z-index:1; font-size:clamp(20px,2.8vw,30px); font-weight:900; color:var(--ink); margin-bottom:8px; }
.tk-hero-welcome-sub{ position:relative; z-index:1; font-size:clamp(12px,1.4vw,15px); font-weight:700; color:var(--primary); }
.tk-hero-slide[data-slide="welcome"]{ flex-direction:column; text-align:center; }

/* زخارف SVG متحركة داخل المربع */
.tk-hero-decor-svg{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; border-radius:20px; }
.tk-hero-decor-svg svg{ width:100%; height:100%; }
.tk-decor-dot{ animation:tkDotFloat 5s ease-in-out infinite; transform-origin:center; }
.tk-decor-dot-1{ fill:var(--primary-light); animation-delay:0s; }
.tk-decor-dot-2{ fill:var(--accent-green); animation-delay:.8s; }
.tk-decor-dot-3{ fill:var(--secondary-light); animation-delay:1.6s; }
.tk-decor-dot-4{ fill:var(--primary); animation-delay:2.4s; }
@keyframes tkDotFloat{ 0%,100%{ transform:translateY(0) scale(1); opacity:.7; } 50%{ transform:translateY(-14px) scale(1.3); opacity:1; } }
.tk-decor-arc{ stroke-width:2.5; opacity:.5; stroke-dasharray:8 6; animation:tkArcDash 6s linear infinite; }
.tk-decor-arc-1{ stroke:var(--primary-light); }
.tk-decor-arc-2{ stroke:var(--accent-green); }
@keyframes tkArcDash{ to{ stroke-dashoffset:-100; } }

@media (max-width:900px){
    /* تخطيط عمودي بسيط: نمط ألوان بدل صورة الخلفية، الشعار أعلى، النص أسفل */
    .tk-hero-about{ height:auto; min-height:100vh; }
    .tk-hero-about-bg{
        padding:110px 6% 50px;
        background:
            radial-gradient(circle at 15% 20%, rgba(29,111,184,.16), transparent 55%),
            radial-gradient(circle at 85% 30%, rgba(109,190,69,.16), transparent 55%),
            radial-gradient(circle at 50% 90%, rgba(245,166,35,.18), transparent 55%),
            #F4F7FB;
    }
    .tk-hero-bg-layer{ display:none; }
    .tk-about-model-slot{ width:90px; height:90px; }
    .tk-hero-framebox{ padding:26px 18px; min-height:0; }
    .tk-hero-slide{ flex-direction:column; gap:14px; padding:0; }
    .tk-about-copy-slot{ max-width:none; }
}

/* ================= صفحة الخطأ (404/403) ================= */
.tk-error-page{ min-height:80vh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:60px 5%; gap:14px; }
.tk-error-svg{ width:180px; height:150px; margin-bottom:6px; }
.tk-error-piece{ animation:tkErrorFloat 3.5s ease-in-out infinite; transform-origin:center; }
.tk-error-piece-1{ animation-delay:0s; }
.tk-error-piece-2{ animation-delay:.4s; }
.tk-error-piece-3{ animation-delay:.8s; }
@keyframes tkErrorFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-10px); } }
.tk-error-arc{ opacity:.5; animation:tkArcDash 5s linear infinite; }
.tk-error-code{ font-size:clamp(48px,8vw,80px); font-weight:900; background:linear-gradient(135deg,var(--primary),var(--accent-green)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; line-height:1; }
.tk-error-page h1{ font-size:clamp(20px,2.6vw,28px); font-weight:900; color:var(--ink); }
.tk-error-page p{ font-size:14px; color:var(--muted); font-weight:600; max-width:420px; }
.tk-error-page .tk-cta{ margin-top:10px; }

/* ================= Section shell ================= */
.tk-section{ padding:80px 5%; max-width:1360px; margin:0 auto; }
.tk-section-head{ text-align:center; margin-bottom:44px; }
.tk-section-head h2{ font-size:clamp(24px,3vw,34px); font-weight:900; color:var(--ink); margin-top:10px; }
.tk-section-head h2 span{ color:var(--primary); }
.tk-section-head-light h2{ color:#fff; }

/* ================= Partners (مؤشر متحرك) ================= */
.tk-partners-marquee{ overflow:hidden; -webkit-mask-image:linear-gradient(to left, transparent, #000 8%, #000 92%, transparent); mask-image:linear-gradient(to left, transparent, #000 8%, #000 92%, transparent); }
.tk-partners-track{ display:flex; gap:20px; width:max-content; animation:tkPartnersScroll 34s linear infinite; }
.tk-partners-marquee:hover .tk-partners-track{ animation-play-state:paused; }
@keyframes tkPartnersScroll{ 0%{ transform:translateX(0); } 100%{ transform:translateX(50%); } }
.tk-partner-card{
    background:#fff; border:1px solid var(--line); border-radius:18px; padding:20px;
    display:flex; align-items:center; justify-content:center; height:110px; width:170px; flex-shrink:0;
    box-shadow:0 10px 26px -14px rgba(22,50,74,.15); transition:.3s;
}
.tk-partner-card:hover{ transform:translateY(-6px); box-shadow:0 18px 34px -14px rgba(22,50,74,.25); }
.tk-partner-card img{ max-width:100%; max-height:100%; object-fit:contain; }

.tk-mark-divider{ position:relative; display:flex; align-items:center; justify-content:center; padding:40px 5% 100px; }
.tk-mark-glow{ position:absolute; width:280px; height:280px; border-radius:50%; background:radial-gradient(circle, rgba(29,111,184,.14), rgba(109,190,69,.1) 45%, transparent 72%); filter:blur(6px); z-index:0; }
.tk-mark-model-wrap{ position:relative; z-index:1; width:220px; height:220px; background-size:60%; background-repeat:no-repeat; background-position:center; border-radius:50%; }
.tk-mark-model{ width:100%; height:100%; --poster-color:transparent; }

/* ================= Works showcase (سلايدر أفقي) ================= */
.tk-works-section{ max-width:none; }
.tk-works-slider-wrap{ position:relative; display:flex; align-items:center; gap:10px; }
.tk-works-grid{
    display:flex; gap:24px; overflow-x:auto; scroll-snap-type:x proximity; scroll-behavior:smooth;
    padding:6px 2px 16px; flex:1; scrollbar-width:none;
}
.tk-works-grid::-webkit-scrollbar{ display:none; }
.tk-works-nav{
    flex-shrink:0; width:46px; height:46px; border-radius:50%; background:#fff; border:1px solid var(--line);
    color:var(--primary); font-size:16px; display:flex; align-items:center; justify-content:center;
    box-shadow:0 10px 24px -12px rgba(22,50,74,.25); transition:.25s;
}
.tk-works-nav:hover{ background:var(--primary); color:#fff; }
.tk-work-card{ background:#fff; border:1px solid var(--line); border-radius:22px; overflow:hidden; box-shadow:0 14px 34px -18px rgba(22,50,74,.2); display:flex; flex-direction:column; flex:0 0 300px; scroll-snap-align:start; }
@media (max-width:640px){
    .tk-works-nav{ display:none; }
    .tk-works-grid{ gap:12px; }
    .tk-work-card{ flex:0 0 calc(50% - 6px); }
    .tk-work-cover{ aspect-ratio:1/1; }
    .tk-work-body{ padding:12px; gap:8px; }
    .tk-work-body h3{ font-size:13px; line-height:1.4; }
    .tk-work-view-btn{ font-size:11.5px; padding:8px 12px; }
}
.tk-work-cover{ position:relative; aspect-ratio:4/3; background:var(--cream); overflow:hidden; }
.tk-work-cover img, .tk-work-cover canvas{ width:100%; height:100%; object-fit:cover; }
.tk-work-cover-placeholder{ position:relative; width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--cream),#e9eef3); overflow:hidden; }
.tk-work-cover-placeholder i{ font-size:2.6rem; color:var(--primary); opacity:.4; }
.tk-work-cover-placeholder canvas.tk-work-cover-canvas{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.tk-work-cover.tk-cover-loading::before{
    content:''; position:absolute; inset:0; z-index:1;
    background:linear-gradient(90deg, var(--cream) 25%, #eef2f6 37%, var(--cream) 63%);
    background-size:400% 100%; animation:tkShimmer 1.4s ease infinite;
}
.tk-work-cover.tk-cover-loading::after{
    content:''; position:absolute; z-index:2; top:50%; left:50%; width:28px; height:28px; margin:-14px 0 0 -14px;
    border-radius:50%; border:3px solid rgba(29,111,184,.2); border-top-color:var(--primary); animation:tkPdfSpin 1s linear infinite;
}
@keyframes tkShimmer{ 0%{ background-position:100% 0; } 100%{ background-position:0 0; } }
.tk-work-body{ padding:20px; display:flex; flex-direction:column; gap:14px; flex:1; }
.tk-work-body h3{ font-size:17px; font-weight:800; color:var(--ink); }
.tk-work-view-btn{ align-self:flex-start; }
.tk-work-gallery{ display:none; }

.tk-pdf-overlay{
    position:fixed; inset:0; z-index:5000; background:rgba(10,20,30,.96);
    display:flex; flex-direction:column; opacity:0; visibility:hidden; transition:.3s ease;
}
.tk-pdf-overlay.tk-open{ opacity:1; visibility:visible; }
.tk-pdf-overlay-head{ display:flex; align-items:center; justify-content:space-between; padding:18px 24px; color:#fff; }
.tk-pdf-overlay-title{ font-weight:800; font-size:15px; }
.tk-pdf-overlay-close{ color:#fff; font-weight:700; font-size:13px; display:flex; align-items:center; gap:8px; }
.tk-pdf-overlay-track{
    flex:1; display:flex; align-items:center; gap:0; overflow:hidden; padding:0 10px; position:relative;
}
.tk-pdf-overlay-track canvas{ max-height:80vh; max-width:100%; margin:0 auto; border-radius:10px; box-shadow:0 20px 60px rgba(0,0,0,.5); display:none; }
.tk-pdf-overlay-track canvas.tk-active{ display:block; }
.tk-pdf-overlay-nav{ display:flex; align-items:center; justify-content:center; gap:24px; padding:16px; color:#fff; }
.tk-pdf-nav-btn{ color:#fff; font-size:20px; width:44px; height:44px; border-radius:50%; background:rgba(255,255,255,.1); }
.tk-pdf-nav-btn:hover{ background:rgba(255,255,255,.2); }
.tk-pdf-overlay-page{ font-weight:700; font-size:13px; min-width:80px; text-align:center; }

.tk-pdf-loading{ display:none; flex-direction:column; align-items:center; gap:16px; margin:auto; color:#fff; text-align:center; max-width:320px; padding:20px; }
.tk-pdf-loading.tk-show{ display:flex; }
.tk-pdf-loading span{ font-size:13px; font-weight:700; opacity:.85; }
.tk-pdf-loading-svg{ width:64px; height:64px; animation:tkPdfSpin 1.4s linear infinite; }
.tk-pdf-loading-track{ fill:none; stroke:rgba(255,255,255,.15); stroke-width:6; }
.tk-pdf-loading-arc{ fill:none; stroke:var(--secondary); stroke-width:6; stroke-linecap:round; stroke-dasharray:140; stroke-dashoffset:100; transform-origin:40px 40px; }
@keyframes tkPdfSpin{ 100%{ transform:rotate(360deg); } }

/* ================= Achievements ================= */
.tk-achievements-section{ position:relative; overflow:hidden; background:linear-gradient(135deg,var(--accent-green),#4e9e2c); max-width:none; border-radius:0; }
.tk-achievements-doves{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.tk-dove{ position:absolute; width:52px; filter:drop-shadow(0 4px 8px rgba(0,0,0,.15)); animation:tkDoveFly linear infinite; }
.tk-dove-1{ top:8%; width:44px; animation-duration:22s; animation-delay:0s; }
.tk-dove-2{ top:55%; width:34px; animation-duration:28s; animation-delay:-9s; }
.tk-dove-3{ top:30%; width:26px; animation-duration:19s; animation-delay:-4s; }
@keyframes tkDoveFly{
    0%{ transform:translateX(-10%) translateY(0) scaleX(-1); opacity:0; }
    8%{ opacity:1; }
    50%{ transform:translateX(55%) translateY(-18px) scaleX(-1); }
    92%{ opacity:1; }
    100%{ transform:translateX(115%) translateY(6px) scaleX(-1); opacity:0; }
}
.tk-achievements-section .tk-section-head{ position:relative; z-index:1; }
.tk-achievements-grid{ position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); gap:20px; max-width:1200px; margin:0 auto; }
.tk-achievement-tile{
    background:rgba(255,255,255,.94); border-radius:18px; padding:28px 16px 22px; text-align:center;
    box-shadow:0 14px 30px -18px rgba(0,0,0,.35); transition:transform .25s ease, box-shadow .25s ease;
}
.tk-achievement-tile:hover{ transform:translateY(-6px); box-shadow:0 20px 36px -16px rgba(0,0,0,.4); }
.tk-achievement-icon{
    width:44px; height:44px; border-radius:12px; margin:0 auto 12px;
    background:linear-gradient(135deg,var(--accent-green),var(--primary)); color:#fff;
    display:flex; align-items:center; justify-content:center; font-size:17px;
    box-shadow:0 8px 18px -8px rgba(29,111,184,.5);
}
.tk-achievement-value{ display:block; font-size:36px; font-weight:900; background:linear-gradient(135deg,var(--primary),var(--accent-green)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin-bottom:6px; }
.tk-achievement-tile span{ font-size:13px; font-weight:700; color:var(--muted); }
@media (max-width:768px){ .tk-achievements-grid{ grid-template-columns:repeat(2,1fr); } .tk-dove{ display:none; } }

/* ================= Greeting video (بامتداد كامل المساحة البيضاء) ================= */
/* يربط خلفية قسم الإنجازات الخضراء (فوق) بخلفية قسم دعوة التبرع الزرقاء (تحت) خلف الفيديو
   مباشرة، بدل الخط الأبيض الفاصل الذي كان يظهر بينهما — والفيديو نفسه بعرض الشاشة الكامل
   بلا أي قياسات ثابتة أو حواف مستديرة. */
.tk-greeting-section{ position:relative; padding:0; overflow:hidden; }
.tk-greeting-section::before{
    content:''; position:absolute; inset:0 0 50% 0;
    background:linear-gradient(135deg,var(--accent-green),#4e9e2c);
}
.tk-greeting-section::after{
    content:''; position:absolute; inset:50% 0 0 0; background:var(--primary);
}
.tk-greeting-wrap{ position:relative; z-index:1; width:100%; }
.tk-greeting-video{ width:100%; display:block; object-fit:cover; }

/* ================= Donate CTA ================= */
.tk-donate-cta-section{ position:relative; overflow:hidden; max-width:none; background:var(--primary); padding:0; }
.tk-shooting-stars{ position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none; }
.tk-star{ position:absolute; width:120px; height:2px; background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.9)); border-radius:2px; opacity:0; transform:rotate(-35deg); animation:tkShoot 6s linear infinite; }
.tk-star::after{ content:''; position:absolute; left:100%; top:50%; width:6px; height:6px; margin-top:-3px; background:#fff; border-radius:50%; box-shadow:0 0 10px 2px rgba(255,255,255,.9); }
.tk-star-1{ top:10%; right:-10%; animation-delay:0s; }
.tk-star-2{ top:40%; right:-10%; animation-delay:2s; }
.tk-star-3{ top:65%; right:-10%; animation-delay:4s; }
.tk-star-4{ top:25%; right:-10%; animation-delay:5.2s; width:80px; }
@keyframes tkShoot{
    0%{ transform:translate(0,0) rotate(-35deg); opacity:0; }
    8%{ opacity:1; }
    35%{ opacity:1; }
    45%{ transform:translate(-620px,420px) rotate(-35deg); opacity:0; }
    100%{ transform:translate(-620px,420px) rotate(-35deg); opacity:0; }
}
.tk-donate-cta-wrap{ position:relative; z-index:1; max-width:1200px; margin:0 auto; padding:70px 5%; display:flex; align-items:center; gap:40px; flex-wrap:wrap; }
.tk-donate-cta-copy{ flex:1; min-width:280px; color:#fff; }
.tk-donate-cta-copy h2{ font-size:clamp(24px,3vw,32px); font-weight:900; margin-bottom:16px; }
.tk-donate-cta-copy p{ font-size:14.5px; line-height:2; opacity:.92; margin-bottom:26px; }
.tk-donate-cta-art{ flex:0 0 300px; max-width:100%; }
.tk-donate-svg{ width:100%; height:auto; display:block; }
.tk-donate-bars rect{ transform-box:fill-box; transform-origin:bottom; animation:tkDonateBarGrow .9s cubic-bezier(.22,1,.36,1) backwards; }
.tk-donate-bars rect:nth-child(1){ animation-delay:.05s; }
.tk-donate-bars rect:nth-child(2){ animation-delay:.18s; }
.tk-donate-bars rect:nth-child(3){ animation-delay:.31s; }
.tk-donate-bars rect:nth-child(4){ animation-delay:.44s; }
@keyframes tkDonateBarGrow{ from{ transform:scaleY(0); opacity:0; } to{ transform:scaleY(1); opacity:1; } }
.tk-donate-arrow{ stroke-dasharray:220; stroke-dashoffset:220; animation:tkDonateArrowDraw 1.1s .5s ease-out forwards; }
@keyframes tkDonateArrowDraw{ to{ stroke-dashoffset:0; } }
.tk-donate-ring-people circle{ opacity:0; animation:tkDonateFadeIn .5s .9s ease-out forwards; }
@keyframes tkDonateFadeIn{ to{ opacity:1; } }

/* ================= Footer (مطابق لتصميم مكتبة التقارير: زجاجي فاتح فوق فقاعات ملونة) ================= */
.tk-footer{ position:relative; overflow:hidden; background:rgba(255,255,255,.65); backdrop-filter:blur(20px) saturate(160%); -webkit-backdrop-filter:blur(20px) saturate(160%); color:var(--ink); padding:60px 5% 0; }
.tk-footer::before{ content:''; position:absolute; inset:0; z-index:-1; background:#F4F7FB; }
.tk-footer-blobs{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.tk-footer-blob{ position:absolute; border-radius:50%; filter:blur(90px); opacity:.5; animation:tkFooterFloat 18s ease-in-out infinite alternate; }
.tk-footer-blob-blue{ width:42vw; height:42vw; max-width:480px; max-height:480px; background:var(--primary-light); top:-15%; right:-10%; }
.tk-footer-blob-green{ width:36vw; height:36vw; max-width:420px; max-height:420px; background:var(--accent-green); bottom:-15%; left:0; animation-delay:-6s; }
.tk-footer-blob-orange{ width:30vw; height:30vw; max-width:360px; max-height:360px; background:var(--secondary-light); bottom:20%; right:30%; animation-delay:-11s; opacity:.35; }
@keyframes tkFooterFloat{ 0%{ transform:translate(0,0) scale(1); } 100%{ transform:translate(30px,-20px) scale(1.15); } }
.tk-footer-main{ position:relative; z-index:1; width:100%; }
.tk-footer-grid{ max-width:1360px; margin:0 auto; padding:0 5%; display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:36px; }
.tk-footer-brand-logo{ height:64px; margin-bottom:16px; }
.tk-footer-about p{ font-size:13.5px; line-height:1.9; color:var(--muted); margin-bottom:18px; }
.tk-social{ display:flex; gap:14px; }
.tk-social a{ width:46px; height:46px; border-radius:50%; background:#fff; border:1px solid var(--line); color:var(--primary); display:flex; align-items:center; justify-content:center; transition:.3s; font-size:16px; box-shadow:0 5px 15px rgba(0,0,0,.05); }
.tk-social a:hover{ background:linear-gradient(135deg,var(--primary-light),var(--primary)); color:#fff; transform:translateY(-4px) rotate(8deg); border-color:transparent; }
.tk-social-whatsapp{ color:#25D366 !important; border-color:rgba(37,211,102,.3) !important; }
.tk-social-whatsapp:hover{ background:#25D366 !important; color:#fff !important; transform:translateY(-4px) scale(1.06); }
.tk-footer-col h4{ font-size:15px; font-weight:800; margin-bottom:18px; color:var(--ink); }
.tk-footer-links{ list-style:none; display:flex; flex-direction:column; gap:10px; font-size:13px; color:var(--muted); }
.tk-footer-links li{ display:flex; align-items:center; gap:8px; }
.tk-footer-links a:hover{ color:var(--primary); }
.tk-footer-map iframe{ width:100%; height:120px; border:0; border-radius:12px; pointer-events:none; }

.tk-footer-cta-bar{
    max-width:1300px; margin:40px auto 0; padding:30px 5% 0; border-top:1px solid rgba(0,0,0,.06);
    display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap-reverse; gap:24px;
}
.tk-footer-contact-list{ list-style:none; display:flex; flex-direction:column; gap:12px; font-size:14px; font-weight:600; color:var(--ink); }
.tk-footer-contact-list li{ display:flex; align-items:center; gap:10px; }
.tk-footer-contact-list li i{ color:var(--primary); width:18px; text-align:center; }
.tk-footer-cta-left{ display:flex; flex-direction:column; align-items:center; gap:14px; }
.tk-footer-contact-btn{
    font-weight:800; color:var(--primary); background:rgba(255,255,255,.7); border:1px solid rgba(255,255,255,.9);
    padding:6px 20px; border-radius:20px; font-size:13.5px; box-shadow:0 4px 10px rgba(0,0,0,.03); letter-spacing:.5px;
}

.tk-footer-bottom{ position:relative; z-index:1; max-width:1300px; margin:30px auto 0; padding:22px 5%; border-top:1px solid rgba(0,0,0,.06); display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; font-size:13px; font-weight:700; color:var(--muted); text-align:right; }
@media (max-width:600px){ .tk-footer-bottom{ flex-direction:column; text-align:center; } }
.tk-footer-bottom a{ color:var(--primary); text-decoration:underline; }
@media (max-width:900px){ .tk-footer-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){
    .tk-footer-grid{ grid-template-columns:1fr; text-align:center; }
    .tk-footer-cta-bar{ flex-direction:column; text-align:center; }
    .tk-footer-contact-list{ align-items:center; }
}

/* Donate FAB */
.tk-donate-fab{
    position:fixed; bottom:26px; left:26px; z-index:900; display:flex; align-items:center; gap:8px;
    background:var(--secondary); color:#2b2007; padding:14px 18px; border-radius:999px; font-weight:800; font-size:13px;
    box-shadow:0 14px 34px -10px rgba(245,166,35,.6); transition:.25s;
}
.tk-donate-fab:hover{ transform:translateY(-3px); }
.tk-donate-fab-svg{ width:22px; height:22px; }
.tk-donate-fab-ring{ fill:none; stroke:#2b2007; stroke-width:0; }
.tk-donate-fab-heart{ fill:#2b2007; }

/* ================= Donate page ================= */
.tk-donate-hero{ background:var(--cream); padding:130px 5% 60px; }
.tk-donate-hero-wrap{ max-width:1100px; margin:0 auto; display:flex; align-items:center; gap:40px; flex-wrap:wrap; }
.tk-donate-hero-wrap img{ flex:0 0 280px; max-width:100%; border-radius:20px; }
.tk-donate-hero-copy{ flex:1; min-width:260px; }
.tk-donate-hero-copy h1{ font-size:clamp(24px,3vw,32px); font-weight:900; color:var(--ink); margin:10px 0 14px; }
.tk-donate-hero-copy p{ font-size:14.5px; line-height:2; color:var(--muted); font-weight:600; }

.tk-bank-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:26px; }
.tk-bank-card{
    background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px 24px;
    display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center;
    box-shadow:0 14px 34px -18px rgba(22,50,74,.2);
}
.tk-bank-card-head{ display:flex; align-items:center; gap:10px; color:var(--primary); }
.tk-bank-card-head i{ font-size:22px; }
.tk-bank-card-head h3{ font-size:16.5px; font-weight:800; color:var(--ink); }
.tk-bank-qr{ width:140px; height:140px; border-radius:12px; border:1px solid var(--line); padding:6px; }
.tk-bank-field{ width:100%; display:flex; flex-direction:column; gap:4px; }
.tk-bank-field span{ font-size:11.5px; font-weight:700; color:var(--muted); }
.tk-bank-field b{ font-size:13px; font-weight:800; color:var(--ink); direction:ltr; word-break:break-all; }
.tk-bank-copy{ cursor:pointer; display:inline-flex; align-items:center; gap:6px; justify-content:center; }
.tk-bank-copy:hover{ color:var(--primary); }
.tk-bank-copy.tk-copied::after{ content:'تم النسخ'; font-size:11px; color:var(--accent-green); margin-inline-start:6px; }
.tk-bank-download{ margin-top:6px; width:100%; justify-content:center; }

/* ================= Inner content pages (shared shell) ================= */
.tk-page-hero{ background:var(--cream); padding:130px 5% 60px; text-align:center; }
.tk-page-hero-wrap{ max-width:820px; margin:0 auto; }
.tk-page-hero h1{ font-size:clamp(24px,3vw,34px); font-weight:900; color:var(--ink); margin:10px 0 14px; }
.tk-page-hero p{ font-size:14.5px; line-height:2; color:var(--muted); font-weight:600; }

.tk-info-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:26px; }
.tk-info-card{ background:#fff; border:1px solid var(--line); border-radius:22px; padding:30px 26px; box-shadow:0 14px 34px -18px rgba(22,50,74,.2); text-align:center; transition:.3s; }
.tk-info-card:hover{ transform:translateY(-6px); box-shadow:0 20px 40px -16px rgba(22,50,74,.28); }
.tk-info-card i{ font-size:30px; color:var(--primary); margin-bottom:16px; }
.tk-info-card h3{ font-size:16.5px; font-weight:800; color:var(--ink); margin-bottom:10px; }
.tk-info-card p{ font-size:13.5px; line-height:1.9; color:var(--muted); font-weight:600; }

.tk-prose{ max-width:900px; margin:0 auto; }
.tk-prose p{ font-size:15px; line-height:2.1; color:var(--muted); font-weight:600; margin-bottom:18px; }
.tk-prose h2, .tk-prose h3{ color:var(--ink); font-weight:900; margin:26px 0 14px; }

.tk-fact-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; margin-top:30px; }
.tk-fact-card{ background:var(--cream); border-radius:16px; padding:20px; text-align:center; }
.tk-fact-card span{ display:block; font-size:12px; font-weight:700; color:var(--muted); margin-bottom:6px; }
.tk-fact-card b{ font-size:15px; font-weight:800; color:var(--ink); }

.tk-doc-list{ display:flex; flex-direction:column; gap:14px; }
.tk-doc-row{ display:flex; align-items:center; gap:16px; padding:18px 20px; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:0 10px 26px -16px rgba(22,50,74,.18); flex-wrap:wrap; }
.tk-doc-icon{ width:52px; height:52px; border-radius:14px; background:var(--cream); display:flex; align-items:center; justify-content:center; font-size:1.4rem; color:var(--primary); flex-shrink:0; }
.tk-doc-info{ flex:1; min-width:180px; }
.tk-doc-title{ font-weight:800; color:var(--ink); margin-bottom:4px; }
.tk-doc-meta{ font-size:12.5px; color:var(--muted); font-weight:600; }
.tk-doc-actions{ display:flex; gap:10px; }

.tk-empty-state{ text-align:center; padding:70px 20px; color:var(--muted); background:var(--cream); border-radius:22px; border:2px dashed var(--line); }
.tk-empty-state i{ font-size:3.4rem; margin-bottom:18px; opacity:.35; color:var(--primary); }
.tk-empty-state p{ font-weight:700; font-size:14.5px; }

.tk-timeline{ position:relative; max-width:760px; margin:0 auto; padding-inline-start:28px; border-inline-start:2px solid var(--line); }
.tk-timeline-item{ position:relative; padding-bottom:34px; }
.tk-timeline-item:last-child{ padding-bottom:0; }
.tk-timeline-item::before{ content:''; position:absolute; right:-35px; top:4px; width:14px; height:14px; border-radius:50%; background:var(--primary); border:3px solid #fff; box-shadow:0 0 0 2px var(--line); }
.tk-timeline-item h4{ color:var(--ink); font-weight:800; margin-bottom:6px; }
.tk-timeline-item p{ color:var(--muted); font-size:13.5px; font-weight:600; line-height:1.9; }

.tk-org-tree{ display:flex; flex-direction:column; align-items:center; gap:14px; }
.tk-org-row{ display:flex; gap:20px; flex-wrap:wrap; justify-content:center; }
.tk-org-node{ background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px 24px; text-align:center; box-shadow:0 10px 26px -16px rgba(22,50,74,.18); min-width:180px; }
.tk-org-node b{ display:block; color:var(--ink); font-weight:800; font-size:14px; }
.tk-org-node span{ font-size:12px; color:var(--muted); font-weight:600; }
.tk-org-node.tk-org-top{ background:var(--primary); color:#fff; }
.tk-org-node.tk-org-top b{ color:#fff; }
.tk-org-connector{ width:2px; height:20px; background:var(--line); }

.tk-form{ max-width:720px; margin:0 auto; background:#fff; border:1px solid var(--line); border-radius:22px; padding:34px 30px; box-shadow:0 14px 34px -18px rgba(22,50,74,.2); display:flex; flex-direction:column; gap:18px; }
.tk-form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.tk-field{ display:flex; flex-direction:column; gap:6px; }
.tk-field label{ font-size:13px; font-weight:800; color:var(--ink); }
.tk-field input, .tk-field select, .tk-field textarea{
    border:1px solid var(--line); border-radius:12px; padding:12px 14px; font-family:'Cairo',sans-serif;
    font-size:14px; color:var(--ink); background:var(--cream); resize:vertical; width:100%;
}
.tk-field input:focus, .tk-field select:focus, .tk-field textarea:focus{ outline:2px solid var(--primary-light); }
.tk-form-note{ font-size:12px; color:var(--muted); font-weight:600; text-align:center; }
.tk-hp{ position:absolute; left:-9999px; top:-9999px; opacity:0; height:0; width:0; overflow:hidden; }
.tk-form-success{ background:#eafaf0; color:#1b7a43; border:1px solid #bce9cd; padding:16px 20px; border-radius:14px; font-weight:800; text-align:center; max-width:720px; margin:0 auto 24px; display:flex; align-items:center; justify-content:center; gap:10px; }
.tk-contact-info{ display:flex; flex-wrap:wrap; gap:22px; justify-content:center; margin-bottom:40px; }
.tk-contact-info a{ display:flex; align-items:center; gap:10px; font-weight:800; font-size:14px; color:var(--ink); background:#fff; border:1px solid var(--line); padding:14px 22px; border-radius:14px; }
.tk-contact-info a i{ color:var(--primary); }

@media (max-width:768px){
    .tk-page-hero{ padding:110px 5% 40px; }
    .tk-form-row{ grid-template-columns:1fr; }
    .tk-form{ padding:26px 20px; }
}

.tk-error-alert{ max-width:820px; margin-inline:auto; display:flex; align-items:center; gap:10px; background:#fdecec; color:#b52424; border:1px solid #f4c2c2; border-radius:16px; padding:14px 18px; font-weight:800; font-size:14px; margin-bottom:22px; line-height:1.7; }
.tk-file-field input[type=file]{ position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }
.tk-file-drop{ display:flex; align-items:center; justify-content:center; gap:10px; padding:18px; border:2px dashed rgba(29,111,184,.35); border-radius:16px; background:rgba(255,255,255,.7); color:var(--blue-1,#1D6FB8); font-weight:800; font-size:13.5px; cursor:pointer; text-align:center; transition:.2s; }
.tk-file-drop:hover{ background:rgba(29,111,184,.06); border-color:var(--blue-1,#1D6FB8); }
.tk-file-drop.has-files{ border-style:solid; background:rgba(109,190,69,.1); color:#3d7a22; }

.tk-ref-alert{ max-width:820px; margin:0 auto 22px; text-align:center; background:#eafaf0; border:1px solid #bce9cd; color:#1b7a43; border-radius:20px; padding:18px 20px; font-weight:800; }
.tk-ref-alert b{ display:block; font-size:1.7rem; letter-spacing:1px; margin:4px 0; color:#14508a; }
.tk-ref-alert .tk-ref-note{ font-size:13px; font-weight:700; }

.tk-track-cta{ max-width:820px; margin:22px auto 0; display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap; background:rgba(255,255,255,.85); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.95); border-radius:20px; padding:16px 22px; font-weight:800; color:var(--text-muted,#4A5568); box-shadow:0 10px 26px rgba(22,50,74,.06); }
.tk-track-cta a{ display:inline-flex; align-items:center; gap:8px; background:linear-gradient(135deg,#4AADD6 0%,#1D6FB8 100%); color:#fff; padding:11px 24px; border-radius:14px; font-weight:800; font-size:14px; box-shadow:0 8px 20px -8px rgba(29,111,184,.5); transition:.2s; }
.tk-track-cta a:hover{ transform:translateY(-2px); }
