/* ===========================================================
   Egypt Recruiting Community
   نظام واحد يخدم اللغتين والاتجاهين وثلاثة أوضاع مظهر.
   كل لون معرَّف ثلاث مرات: :root ثم كتلة الوضع الليلي التلقائي
   ثم كتلة الاختيار الصريح. غيّر أي لون في الثلاث معاً.
   =========================================================== */

:root{
  /* الأشرطة الداكنة والفوتر */
  --deep:#0F2340;   --deep-2:#0A1930;
  /* النص فوق الداكن — ثابت في الوضعين عمداً */
  --on-deep:#EDF2F9; --on-deep-2:#AEC0D6;

  /* اللون الدافئ الوحيد: زر أساسي · شريحة فلتر نشطة · خط تحت الروابط. لا شيء غيرها. */
  --brand:#C4145F; --brand-strong:#A21050; --on-brand:#FFFFFF;

  /* ألوان علامة الوردة — لا تُستخدم إلا داخل العلامة نفسها */
  --rose-p:#EA1A76; --rose-y:#F5EC00; --rose-v:#7440A6; --rose-c:#45A3EC;

  --paper:#FFFFFF; --tint:#F8F4EE; --line:#E4DCD0;
  --ink:#16233A; --ink2:#4B5A70; --ink3:#61708A;
  --heading:#10233F;          /* ← رمز مستقل: ينقلب ليلاً. لا تستخدم --deep لنص فوق الصفحة */

  --err-bg:#FDECEA; --err-line:#EFC3BC; --err-ink:#8C2318;
  --ok-bg:#ECF6F0; --ok-line:#BEDECB; --ok-ink:#17603F;

  --shadow:0 1px 2px rgba(15,35,64,.05), 0 10px 30px -16px rgba(15,35,64,.25);
  --shadow-lift:0 2px 6px rgba(15,35,64,.07), 0 24px 48px -20px rgba(15,35,64,.34);

  --r:16px; --r-s:10px; --r-pill:999px;
  --wrap:1180px; --narrow:720px;
  --pad:clamp(1.15rem,4vw,2.5rem);
  --sec:clamp(2.75rem,5.5vw,4.5rem);
  --font:"IBM Plex Sans","IBM Plex Sans Arabic",system-ui,"Segoe UI",Helvetica,Arial,sans-serif;
  --font-ar:"IBM Plex Sans Arabic","IBM Plex Sans",system-ui,"Segoe UI",Tahoma,sans-serif;
  --lh:1.6;
  color-scheme:light;
}
.lang-ar{ --lh:1.85; }

/* الوضع الليلي تلقائياً مع النظام، ما لم يختر الزائر «مضيء» صراحةً */
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --deep:#060C16; --deep-2:#04080F;
    --on-deep:#EDF2F9; --on-deep-2:#AEC0D6;
    --brand:#FF6BA6; --brand-strong:#FF8FBD; --on-brand:#2B0413;
    --rose-p:#FF4E96; --rose-y:#F7EE3A; --rose-v:#A473D6; --rose-c:#63B6F5;
    --paper:#121B2B; --tint:#0B1220; --line:#25344B;
    --ink:#E7EEF8; --ink2:#AEBCD0; --ink3:#93A3B9;
    --heading:#E9F0FA;
    --err-bg:#3A1512; --err-line:#6B2A20; --err-ink:#FAC0B7;
    --ok-bg:#0E2B1E; --ok-line:#1F4E38; --ok-ink:#9BE0BC;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px -16px rgba(0,0,0,.7);
    --shadow-lift:0 2px 6px rgba(0,0,0,.45), 0 26px 50px -20px rgba(0,0,0,.8);
    color-scheme:dark;
  }
}
/* والاختيار الصريح يغلب النظام في الاتجاهين */
:root[data-theme="dark"]{
  --deep:#060C16; --deep-2:#04080F;
  --on-deep:#EDF2F9; --on-deep-2:#AEC0D6;
  --brand:#FF6BA6; --brand-strong:#FF8FBD; --on-brand:#2B0413;
  --rose-p:#FF4E96; --rose-y:#F7EE3A; --rose-v:#A473D6; --rose-c:#63B6F5;
  --paper:#121B2B; --tint:#0B1220; --line:#25344B;
  --ink:#E7EEF8; --ink2:#AEBCD0; --ink3:#93A3B9;
  --heading:#E9F0FA;
  --err-bg:#3A1512; --err-line:#6B2A20; --err-ink:#FAC0B7;
  --ok-bg:#0E2B1E; --ok-line:#1F4E38; --ok-ink:#9BE0BC;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px -16px rgba(0,0,0,.7);
  --shadow-lift:0 2px 6px rgba(0,0,0,.45), 0 26px 50px -20px rgba(0,0,0,.8);
  color-scheme:dark;
}

/* ── الأساس ─────────────────────────────────────────────── */
*,*::before,*::after{ box-sizing:border-box; }
/* display في القواعد أدناه يغلب [hidden] الافتراضي، فنثبّته هنا */
[hidden]{ display:none !important; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--tint); color:var(--ink);
  font-family:var(--font); font-size:clamp(1rem,.97rem + .18vw,1.075rem);
  line-height:var(--lh); -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.lang-ar body,.lang-ar{ font-family:var(--font-ar); }
img,svg{ max-width:100%; }
img{ height:auto; display:block; }
h1,h2,h3,h4{ color:var(--heading); line-height:1.22; margin:0; font-weight:600; letter-spacing:-.012em; }
.lang-ar h1,.lang-ar h2,.lang-ar h3,.lang-ar h4{ line-height:1.52; letter-spacing:0; }
p{ margin:0; }
a{ color:inherit; }
button,input,select,textarea{ font:inherit; color:inherit; }
:focus-visible{ outline:2px solid var(--heading); outline-offset:3px; border-radius:4px; }

.wrap{ inline-size:min(100% - 2*var(--pad),var(--wrap)); margin-inline:auto; }
.skip{
  position:absolute; inset-block-start:-100px; inset-inline-start:var(--pad); z-index:80;
  background:var(--deep); color:var(--on-deep); padding:.7rem 1.1rem; border-radius:var(--r-s);
}
.skip:focus{ inset-block-start:.6rem; }

/* ── علامة الوردة ────────────────────────────────────────── */
.rose{ display:block; }
.rose line{ stroke-linecap:round; }
.rose .p{ stroke:var(--rose-p); } .rose .y{ stroke:var(--rose-y); }
.rose .v{ stroke:var(--rose-v); } .rose .c{ stroke:var(--rose-c); }

/* ── الترويسة ───────────────────────────────────────────── */
.site{
  position:sticky; inset-block-start:0; z-index:50;
  background:color-mix(in srgb,var(--tint) 88%,transparent);
  backdrop-filter:saturate(1.4) blur(10px);
  border-block-end:1px solid transparent; transition:border-color .25s, box-shadow .25s;
}
.site.is-stuck{ border-block-end-color:var(--line); box-shadow:var(--shadow); }
.site__in{ display:flex; align-items:center; gap:1rem; min-block-size:66px; }
.brand{ display:inline-flex; align-items:center; gap:.6rem; text-decoration:none; margin-inline-end:auto; }
.brand .rose{ inline-size:28px; block-size:28px; flex:none; }
.brand__t{ font-weight:600; color:var(--heading); letter-spacing:-.01em; font-size:1.02rem; white-space:nowrap; }
.brand__t--long{ display:none; }
@media (min-width:560px){ .brand__t--short{ display:none; } .brand__t--long{ display:inline; } }

.nav{ display:none; gap:.15rem; }
@media (min-width:1000px){ .nav{ display:flex; } }
.nav a{
  text-decoration:none; color:var(--ink2); padding:.5rem .72rem; border-radius:var(--r-pill);
  font-size:.94rem; transition:color .2s, background .2s;
}
.nav a:hover{ color:var(--heading); background:color-mix(in srgb,var(--ink) 6%,transparent); }

.ctrls{ display:flex; gap:.4rem; align-items:center; }
.ctrl{
  display:inline-flex; align-items:center; gap:.4rem; cursor:pointer;
  background:var(--paper); border:1px solid var(--line); color:var(--ink2);
  padding:.45rem .7rem; border-radius:var(--r-pill); font-size:.86rem; line-height:1;
  transition:border-color .2s, color .2s, transform .2s;
}
.ctrl:hover{ color:var(--heading); border-color:color-mix(in srgb,var(--ink) 22%,transparent); }
.ctrl:active{ transform:translateY(1px); }
.ctrl .ico{ inline-size:16px; block-size:16px; display:none; }
.ctrl[data-mode="auto"] .ico--auto,
.ctrl[data-mode="light"] .ico--light,
.ctrl[data-mode="dark"] .ico--dark{ display:block; animation:pop .3s ease; }
@keyframes pop{ from{ opacity:0; transform:scale(.7) rotate(-25deg); } to{ opacity:1; transform:none; } }
.ctrl__t{ display:none; }
@media (min-width:640px){ .ctrl__t{ display:inline; } }

.burger{ display:inline-flex; }
@media (min-width:1000px){ .burger{ display:none; } }
.burger svg{ inline-size:18px; block-size:18px; }
.menu{ display:none; padding-block:.4rem 1rem; border-block-start:1px solid var(--line); }
.menu[data-open="true"]{ display:block; }
@media (min-width:1000px){ .menu{ display:none !important; } }
.menu a{
  display:block; text-decoration:none; color:var(--ink2);
  padding:.66rem .3rem; border-block-end:1px solid var(--line);
}
.menu a:last-child{ border-block-end:0; }

/* ── الأزرار ────────────────────────────────────────────── */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  padding:.8rem 1.35rem; border-radius:var(--r-pill); text-decoration:none; cursor:pointer;
  border:1px solid transparent; font-weight:500; font-size:.98rem; line-height:1.2;
  transition:transform .18s, box-shadow .22s, background .2s, border-color .2s, color .2s;
}
.btn:active{ transform:translateY(1px); }
.btn--primary{ background:var(--brand); color:var(--on-brand); box-shadow:var(--shadow); }
.btn--primary:hover{ background:var(--brand-strong); box-shadow:var(--shadow-lift); }
.btn--ghost{ border-color:var(--line); color:var(--heading); background:var(--paper); }
.btn--ghost:hover{ border-color:color-mix(in srgb,var(--ink) 26%,transparent); box-shadow:var(--shadow); }
.btn--onDeep{ border-color:color-mix(in srgb,var(--on-deep) 34%,transparent); color:var(--on-deep); background:transparent; }
.btn--onDeep:hover{ background:color-mix(in srgb,var(--on-deep) 12%,transparent); }
.btn svg{ inline-size:17px; block-size:17px; flex:none; }

/* ── البطل ──────────────────────────────────────────────── */
.hero{ position:relative; padding-block:clamp(3rem,7vw,5.5rem) clamp(3rem,7vw,5rem); overflow:hidden; }
.hero__in{ position:relative; display:grid; gap:clamp(2rem,5vw,3rem); align-items:center; }
@media (min-width:960px){ .hero__in{ grid-template-columns:1.08fr .92fr; } }

.hero__art{ position:absolute; inset:0; display:grid; place-items:center; z-index:0; pointer-events:none; }
.hero__art .rose{ inline-size:min(126%,640px); block-size:auto; opacity:.13; animation:turn 90s linear infinite; }
.hero__txt{ position:relative; z-index:1; }
@media (min-width:960px){
  .hero__art{ position:static; place-items:center end; }
  .hero__art .rose{ inline-size:min(100%,500px); opacity:.95; }
}
@keyframes turn{ to{ transform:rotate(360deg); } }

.eyebrow{
  display:inline-block; font-size:.85rem; color:var(--ink3);
  border:1px solid var(--line); background:var(--paper);
  padding:.34rem .8rem; border-radius:var(--r-pill); margin-block-end:1.1rem;
}
.hero h1{ font-size:clamp(2.05rem,1.35rem + 3.1vw,3.5rem); font-weight:600; }
.hero__lead{ margin-block-start:1.1rem; color:var(--ink2); font-size:clamp(1.03rem,1rem + .35vw,1.2rem); max-inline-size:40ch; }
.hero__acts{ display:flex; flex-wrap:wrap; gap:.7rem; margin-block-start:1.8rem; }

.stats{ display:flex; flex-wrap:wrap; gap:clamp(1.2rem,4vw,2.6rem); margin-block-start:2.4rem; padding-block-start:1.6rem; border-block-start:1px solid var(--line); }
.stat b{ display:block; color:var(--heading); font-size:1.35rem; font-weight:600; font-feature-settings:"tnum"; }
.stat span{ font-size:.86rem; color:var(--ink3); }

/* ── الأقسام ────────────────────────────────────────────── */
.sec{ padding-block:var(--sec); }
.sec__head{ max-inline-size:var(--narrow); margin-block-end:clamp(2rem,4vw,3rem); }
.k{ display:block; font-size:.82rem; color:var(--ink3); font-weight:600; margin-block-end:.7rem; }
.sec h2{ font-size:clamp(1.6rem,1.2rem + 1.7vw,2.35rem); }
.sec__lead{ margin-block-start:.9rem; color:var(--ink2); font-size:1.03rem; }

.card{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); box-shadow:var(--shadow); }

/* من نحن */
.about{ display:grid; gap:clamp(1.6rem,4vw,3rem); }
@media (min-width:900px){ .about{ grid-template-columns:1fr 1fr; align-items:start; } }
.about p + p{ margin-block-start:1.1rem; }
.about p{ color:var(--ink2); }
.pull{
  margin:0; padding:clamp(1.4rem,3vw,2rem); border-radius:var(--r);
  background:var(--paper); border:1px solid var(--line);
  border-inline-start:3px solid var(--line);
  color:var(--heading); font-size:clamp(1.15rem,1rem + .8vw,1.5rem); line-height:1.4;
}
.lang-ar .pull{ line-height:1.6; }

/* كيف نلتقي */
.grid4{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.fmt{ padding:clamp(1.3rem,2.4vw,1.7rem); }
.fmt__ico{ inline-size:34px; block-size:34px; color:var(--ink3); margin-block-end:1rem; }
.fmt h3{ font-size:1.1rem; }
.fmt p{ margin-block-start:.6rem; color:var(--ink2); font-size:.96rem; }

/* الشريط الداكن */
.band{ background:var(--deep); color:var(--on-deep); border-radius:var(--r); overflow:hidden; }
.band__in{ padding:clamp(2rem,5vw,3.2rem); display:grid; gap:1.4rem; align-items:center; }
@media (min-width:860px){ .band__in{ grid-template-columns:1fr auto; gap:2.5rem; } }
.band h2{ color:var(--on-deep); font-size:clamp(1.35rem,1.1rem + 1.1vw,1.9rem); }
.band p{ margin-block-start:.8rem; color:var(--on-deep-2); max-inline-size:62ch; }

/* الجلسات */
.chips{ display:flex; flex-wrap:wrap; gap:.5rem; margin-block-end:1.8rem; }
.chip{
  cursor:pointer; background:var(--paper); border:1px solid var(--line); color:var(--ink2);
  padding:.48rem .95rem; border-radius:var(--r-pill); font-size:.9rem;
  transition:background .2s, color .2s, border-color .2s;
}
.chip:hover{ border-color:color-mix(in srgb,var(--ink) 24%,transparent); color:var(--heading); }
.chip[aria-pressed="true"]{ background:var(--brand); border-color:var(--brand); color:var(--on-brand); }

.sessions{ display:grid; gap:1.3rem; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.ses{ overflow:hidden; display:flex; flex-direction:column; opacity:0; animation:rise .6s cubic-bezier(.22,.72,.3,1) forwards; animation-delay:calc(var(--i,0) * 90ms); }
.ses__fig{ margin:0; background:var(--tint); border-block-end:1px solid var(--line); }
.ses__fig img{ inline-size:100%; aspect-ratio:3/2; object-fit:cover; }
.ses__b{ padding:clamp(1.2rem,2.2vw,1.5rem); display:flex; flex-direction:column; flex:1; }
.tags{ display:flex; flex-wrap:wrap; gap:.4rem; margin-block-end:.85rem; }
.tag{
  font-size:.76rem; padding:.24rem .62rem; border-radius:var(--r-pill);
  background:color-mix(in srgb,var(--ink) 6%,transparent); color:var(--ink3); border:1px solid var(--line);
}
.ses h3{ font-size:1.18rem; }
.ses__sub{ color:var(--ink3); font-size:.95rem; margin-block-start:.3rem; }
.ses__by{ margin-block-start:.9rem; font-size:.92rem; color:var(--ink2); }
.ses__by b{ color:var(--heading); font-weight:600; }
.ses__sum{ margin-block-start:.9rem; color:var(--ink2); font-size:.96rem; }
.ses details{ margin-block-start:1rem; border-block-start:1px solid var(--line); padding-block-start:.9rem; }
.ses summary{ cursor:pointer; font-size:.9rem; color:var(--ink3); list-style:none; }
.ses summary::-webkit-details-marker{ display:none; }
.ses summary::after{ content:"+"; margin-inline-start:.4rem; }
.ses details[open] summary::after{ content:"–"; }
.ses details ul{ margin:.8rem 0 0; padding-inline-start:1.1rem; color:var(--ink2); font-size:.93rem; }
.ses details li{ margin-block-end:.3rem; }
.ses__foot{ margin-block-start:auto; }

/* المعرض */
.gal{ display:grid; gap:.9rem; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); }
.gal button{
  padding:0; border:1px solid var(--line); background:var(--paper); border-radius:var(--r);
  overflow:hidden; cursor:zoom-in; box-shadow:var(--shadow); display:block;
  transition:transform .3s cubic-bezier(.22,.72,.3,1), box-shadow .3s;
}
.gal button:hover{ transform:translateY(-3px); box-shadow:var(--shadow-lift); }
.gal img{ inline-size:100%; aspect-ratio:3/2; object-fit:cover; }
#lightbox{ border:0; padding:0; background:transparent; max-inline-size:min(96vw,1200px); }
#lightbox::backdrop{ background:rgba(6,12,22,.86); backdrop-filter:blur(3px); }
#lightbox img{ inline-size:100%; border-radius:var(--r); }
.lb__x{
  position:absolute; inset-block-start:.7rem; inset-inline-end:.7rem; z-index:2;
  inline-size:40px; block-size:40px; border-radius:50%; cursor:pointer;
  border:1px solid rgba(255,255,255,.32); background:rgba(10,18,32,.6); color:#fff;
  display:grid; place-items:center;
}

/* لمن هذا المجتمع */
.who{ display:grid; gap:.7rem; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); list-style:none; margin:0; padding:0; }
.who li{ display:flex; gap:.75rem; align-items:flex-start; padding:1rem 1.1rem; background:var(--paper); border:1px solid var(--line); border-radius:var(--r-s); color:var(--ink2); font-size:.98rem; }
.who svg{ inline-size:18px; block-size:18px; flex:none; margin-block-start:.22rem; color:var(--ink3); }

/* الشركاء */
.partners{ display:grid; gap:clamp(1.4rem,3vw,2.4rem); align-items:center; }
@media (min-width:820px){ .partners{ grid-template-columns:1.15fr .85fr; } }
.plist{ display:flex; flex-wrap:wrap; gap:.7rem; list-style:none; margin:0 0 1.2rem; padding:0; }
.plist li{ padding:.7rem 1.15rem; border:1px solid var(--line); border-radius:var(--r-s); background:var(--paper); color:var(--heading); font-weight:500; letter-spacing:-.01em; }
.partners figure{ margin:0; }
.partners figure img{ inline-size:100%; border-radius:var(--r); border:1px solid var(--line); }
.partners figcaption{ margin-block-start:.7rem; font-size:.85rem; color:var(--ink3); }

/* الأسئلة */
.faq{ max-inline-size:var(--narrow); }
.faq details{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r-s); margin-block-end:.6rem; }
.faq summary{ cursor:pointer; padding:1rem 1.2rem; font-weight:500; color:var(--heading); list-style:none; display:flex; justify-content:space-between; gap:1rem; align-items:center; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:""; inline-size:9px; block-size:9px; flex:none; border-inline-end:2px solid var(--ink3); border-block-end:2px solid var(--ink3); transform:rotate(45deg); transition:transform .25s; }
.faq details[open] summary::after{ transform:rotate(-135deg); }
.faq p{ padding:0 1.2rem 1.2rem; color:var(--ink2); margin:0; }

/* النموذج */
.join{ display:grid; gap:clamp(1.6rem,4vw,2.6rem); align-items:start; }
@media (min-width:940px){ .join{ grid-template-columns:1.05fr .95fr; } }
.form{ padding:clamp(1.4rem,3vw,2rem); }
.fgrid{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); }
.f{ display:flex; flex-direction:column; gap:.4rem; }
.f--full{ grid-column:1/-1; }
.f label{ font-size:.88rem; color:var(--ink2); }
.f input,.f select,.f textarea{
  background:var(--tint); border:1px solid var(--line); border-radius:var(--r-s);
  padding:.72rem .85rem; color:var(--ink); transition:border-color .2s, background .2s;
}
.f input:focus,.f select:focus,.f textarea:focus{ background:var(--paper); border-color:var(--ink3); outline:none; }
.f textarea{ min-block-size:104px; resize:vertical; }
.f input[dir="ltr"],.f select{ text-align:start; }
.hp{ position:absolute; inline-size:1px; block-size:1px; opacity:0; pointer-events:none; }
.form__foot{ margin-block-start:1.3rem; display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; }
.note{ font-size:.85rem; color:var(--ink3); }

.msg{ padding:.9rem 1.1rem; border-radius:var(--r-s); margin-block-end:1.1rem; font-size:.95rem; }
.msg--err{ background:var(--err-bg); border:1px solid var(--err-line); color:var(--err-ink); }
.done{ padding:clamp(1.6rem,3vw,2.2rem); text-align:center; }
.done__i{ inline-size:44px; block-size:44px; margin-inline:auto; color:var(--ok-ink); }
.done h3{ margin-block-start:1rem; }
.done p{ margin-block-start:.6rem; color:var(--ink2); }
.done .btn{ margin-block-start:1.4rem; }

.alt{ padding:clamp(1.4rem,3vw,2rem); }
.alt h3{ font-size:1.1rem; }
.alt p{ margin-block-start:.6rem; color:var(--ink2); font-size:.95rem; }
.alt__b{ display:flex; flex-direction:column; gap:.6rem; margin-block-start:1.2rem; }

/* تواصل */
.ci{ display:grid; gap:.9rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.ci > div{ padding:1.2rem 1.3rem; background:var(--paper); border:1px solid var(--line); border-radius:var(--r-s); }
.ci h3{ font-size:.86rem; color:var(--ink3); font-weight:500; }
.ci a,.ci span{ display:inline-block; margin-block-start:.45rem; color:var(--heading); text-decoration:none; word-break:break-word; }
.ci a{ text-decoration:underline; text-decoration-color:var(--brand); text-underline-offset:4px; text-decoration-thickness:1.5px; }

/* الفوتر */
.foot{ background:var(--deep-2); color:var(--on-deep-2); padding-block:clamp(2.4rem,5vw,3.4rem); }
.foot__in{ display:grid; gap:1.6rem; }
@media (min-width:760px){ .foot__in{ grid-template-columns:1fr auto; align-items:center; } }
.foot .brand__t{ color:var(--on-deep); }
.foot p{ margin-block-start:.6rem; font-size:.92rem; max-inline-size:44ch; }
.foot__links{ display:flex; flex-wrap:wrap; gap:1.2rem; align-items:center; }
.foot__links a{ color:var(--on-deep); text-decoration:none; font-size:.92rem; display:inline-flex; align-items:center; gap:.45rem; }
.foot__links a:hover{ text-decoration:underline; text-underline-offset:4px; }
.foot__links svg{ inline-size:17px; block-size:17px; }
.foot__bar{ margin-block-start:2rem; padding-block-start:1.4rem; border-block-start:1px solid color-mix(in srgb,var(--on-deep) 16%,transparent); display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; justify-content:space-between; font-size:.85rem; }
.foot__bar a{ color:var(--on-deep-2); }

/* ── الحركة: نظام واحد ─────────────────────────────────── */
.reveal{ opacity:0; transform:translateY(20px); transition:opacity .7s cubic-bezier(.22,.72,.3,1), transform .7s cubic-bezier(.22,.72,.3,1); }
.reveal.is-in{ opacity:1; transform:none; }
.stagger.reveal{ transform:none; }
/* ‏.reveal لا تُضاف إلا من جافاسكربت، فبدونه لا يُخفى ابن واحد */
.stagger.reveal > *{ opacity:0; transform:translateY(22px); }
.stagger.reveal.is-in > *{ animation:rise .66s cubic-bezier(.22,.72,.3,1) forwards; animation-delay:calc(var(--i,0) * 80ms); }
@keyframes rise{ to{ opacity:1; transform:none; } }

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .reveal,.stagger > *,.ses{ opacity:1 !important; transform:none !important; }
  .hero__art .rose{ animation:none; }
}
/* شبكة أمان: إن تعطّل IntersectionObserver لأي سبب فلا يختفي نص */
.no-io .reveal,.no-io .stagger > *,.no-io .ses{ opacity:1 !important; transform:none !important; }

@media print{
  .reveal,.stagger > *,.ses{ opacity:1 !important; transform:none !important; }
  .site,.ctrls,.burger,.menu,.hero__art,.gal button:hover{ display:none !important; }
  body{ background:#fff; color:#000; }
  .card,.band{ box-shadow:none; }
}
