:root{
  --navy:#111E36; --navy-2:#1A2C4E; --navy-3:#24395F;
  --maroon:#8B1A1A; --maroon-soft:#A83232;
  --cream:#FAF6EE; --cream-2:#F2ECDF; --ink:#1B2233; --muted:#5C667B;
  --gold:#C9A24B; --line:rgba(17,30,54,.10); --line-light:rgba(255,255,255,.12);
  --ease:cubic-bezier(.32,.72,0,1);
  --font-display:'Bricolage Grotesque',sans-serif; --font-body:'Work Sans',sans-serif;
  --r-lg:2rem; --r-md:1.25rem;
}
html[dir="rtl"]{--font-display:'Tajawal',sans-serif;--font-body:'Tajawal',sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--ink);background:var(--cream);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.12;letter-spacing:-.015em}
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4{letter-spacing:0;line-height:1.3}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 24px}
section{padding:104px 0}
@media(max-width:768px){section{padding:64px 0}}

/* film grain */
body::after{content:"";position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}

/* eyebrow */
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;
  font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  border:1px solid var(--line);color:var(--maroon);background:rgba(139,26,26,.05)}
html[dir="rtl"] .eyebrow{letter-spacing:.05em}
.dark .eyebrow{border-color:var(--line-light);color:var(--gold);background:rgba(201,162,75,.08)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}

.sec-head{max-width:720px;margin-bottom:56px}
.sec-head h2{font-size:clamp(30px,4.4vw,50px);font-weight:800;margin:18px 0 14px}
.sec-head p{color:var(--muted);font-size:17px}
.dark .sec-head p{color:rgba(255,255,255,.65)}
.center{margin-left:auto;margin-right:auto;text-align:center}

/* reveal */
.rv{opacity:0;transform:translateY(34px);filter:blur(6px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
.rv.on{opacity:1;transform:none;filter:none}
.rv-d1{transition-delay:.08s}.rv-d2{transition-delay:.16s}.rv-d3{transition-delay:.24s}.rv-d4{transition-delay:.32s}

/* ============ NAV ============ */
.nav-wrap{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:center;padding:14px 16px;pointer-events:none}
.nav{pointer-events:auto;display:flex;align-items:center;gap:6px;background:rgba(250,246,238,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--line);border-radius:999px;padding:8px 10px;box-shadow:0 18px 50px -18px rgba(17,30,54,.25);
  transition:transform .6s var(--ease),box-shadow .6s var(--ease);max-width:100%}
.nav .brand{display:flex;align-items:center;gap:10px;padding:4px 14px 4px 6px;font-family:var(--font-display);font-weight:800;font-size:15.5px;color:var(--navy);white-space:nowrap}
html[dir="rtl"] .nav .brand{padding:4px 6px 4px 14px}
.brand-mark{height:36px;border-radius:11px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;padding:5px 8px;flex:none}
.brand-mark img{height:100%;width:auto;display:block}
.nav-links{display:flex;gap:2px}
.nav-links a{padding:8px 13px;border-radius:999px;font-size:13.5px;font-weight:500;color:var(--ink);transition:background .4s var(--ease),color .4s var(--ease);white-space:nowrap}
.nav-links a:hover{background:rgba(17,30,54,.07)}
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:var(--maroon);color:#fff;padding:9px 8px 9px 18px;border-radius:999px;font-size:13.5px;font-weight:600;transition:transform .5s var(--ease),background .5s var(--ease);white-space:nowrap}
html[dir="rtl"] .nav-cta{padding:9px 18px 9px 8px}
.nav-cta:hover{background:#761414}
.nav-cta:active{transform:scale(.97)}
.nav-cta .ic{width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:12px;transition:transform .5s var(--ease)}
.nav-cta:hover .ic{transform:translate(2px,-1px)}
html[dir="rtl"] .nav-cta:hover .ic{transform:translate(-2px,-1px)}
.lang-btn{border:1px solid var(--line);background:transparent;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;color:var(--navy);font-family:var(--font-body);transition:background .4s var(--ease);white-space:nowrap}
.lang-btn:hover{background:rgba(17,30,54,.07)}
.burger{display:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;position:relative;flex:none}
.burger span{position:absolute;left:10px;right:10px;height:1.6px;background:var(--navy);transition:transform .5s var(--ease),opacity .3s}
.burger span:nth-child(1){top:14px}.burger span:nth-child(2){top:22px}
.burger.open span:nth-child(1){transform:translateY(4px) rotate(45deg)}
.burger.open span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:95;background:rgba(17,30,54,.96);backdrop-filter:blur(24px);display:flex;flex-direction:column;justify-content:center;padding:40px 32px;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s}
.mobile-menu.open{opacity:1;visibility:visible}
.mobile-menu a{color:#fff;font-family:var(--font-display);font-size:clamp(26px,7vw,38px);font-weight:700;padding:10px 0;opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.mobile-menu.open a{opacity:1;transform:none}
.mobile-menu a:nth-child(1){transition-delay:.05s}.mobile-menu a:nth-child(2){transition-delay:.1s}.mobile-menu a:nth-child(3){transition-delay:.15s}.mobile-menu a:nth-child(4){transition-delay:.2s}.mobile-menu a:nth-child(5){transition-delay:.25s}.mobile-menu a:nth-child(6){transition-delay:.3s}.mobile-menu a:nth-child(7){transition-delay:.35s}
@media(max-width:1024px){.nav-links{display:none}.burger{display:block}}

/* ============ HERO ============ */
.hero{position:relative;min-height:100dvh;display:flex;align-items:center;background:linear-gradient(168deg,var(--navy) 0%,var(--navy-2) 55%,#15263f 100%);color:#fff;overflow:hidden;padding:140px 0 80px}
.hero-pattern{position:absolute;inset:0;opacity:.5;pointer-events:none}
.hero-glow{position:absolute;width:640px;height:640px;border-radius:50%;filter:blur(120px);opacity:.35;pointer-events:none;animation:drift 14s ease-in-out infinite alternate}
.hero-glow.g1{background:#8B1A1A;top:-180px;right:-140px}
.hero-glow.g2{background:#2c4a7c;bottom:-220px;left:-160px;animation-delay:-7s}
@keyframes drift{from{transform:translate(0,0) scale(1)}to{transform:translate(40px,30px) scale(1.08)}}
.hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
@media(max-width:980px){.hero .container{grid-template-columns:1fr}}
.hero-badge{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line-light);background:rgba(255,255,255,.06);border-radius:999px;padding:7px 16px;font-size:12.5px;font-weight:500;letter-spacing:.04em;margin-bottom:26px}
.pulse{width:8px;height:8px;border-radius:50%;background:#3ddc84;position:relative;flex:none}
.pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid #3ddc84;animation:pulse 1.8s var(--ease) infinite}
@keyframes pulse{from{transform:scale(.5);opacity:1}to{transform:scale(1.5);opacity:0}}
.hero h1{font-size:clamp(38px,6vw,72px);font-weight:800;margin-bottom:22px}
.hero h1 .accent{color:var(--gold);font-style:normal}
.hero-sub{font-size:clamp(15.5px,1.6vw,18.5px);color:rgba(255,255,255,.72);max-width:560px;margin-bottom:36px;font-weight:300}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:14px 10px 14px 26px;font-size:15px;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;transition:transform .5s var(--ease),background .5s var(--ease),box-shadow .5s var(--ease)}
html[dir="rtl"] .btn{padding:14px 26px 14px 10px}
.btn:active{transform:scale(.97)}
.btn .ic{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:13px;transition:transform .5s var(--ease)}
.btn:hover .ic{transform:translate(3px,-2px) scale(1.05)}
html[dir="rtl"] .btn:hover .ic{transform:translate(-3px,-2px) scale(1.05)}
.btn-primary{background:var(--maroon);color:#fff;box-shadow:0 20px 45px -14px rgba(139,26,26,.55)}
.btn-primary:hover{background:#9e2222}
.btn-primary .ic{background:rgba(255,255,255,.16)}
.btn-ghost{background:rgba(255,255,255,.07);color:#fff;border:1px solid var(--line-light)}
.btn-ghost:hover{background:rgba(255,255,255,.13)}
.btn-ghost .ic{background:rgba(255,255,255,.1)}
.hero-license{font-size:12.5px;color:rgba(255,255,255,.55);letter-spacing:.06em;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hero-license svg{width:15px;height:15px;flex:none}

/* hero route card */
.route-card{position:relative;background:rgba(255,255,255,.05);border:1px solid var(--line-light);border-radius:var(--r-lg);padding:10px;backdrop-filter:blur(6px)}
.route-inner{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08);border-radius:calc(var(--r-lg) - 10px);padding:28px 24px;box-shadow:inset 0 1px 1px rgba(255,255,255,.08)}
.route-svg{width:100%;height:auto;display:block}
.route-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}
.rstat{border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:14px 16px;background:rgba(255,255,255,.03)}
.rstat .num{font-family:var(--font-display);font-size:26px;font-weight:800;color:var(--gold)}
.rstat .lbl{font-size:11.5px;color:rgba(255,255,255,.6);letter-spacing:.04em;margin-top:2px}

/* dashed route animation */
.route-path{stroke-dasharray:7 8;animation:dash 2.4s linear infinite}
@keyframes dash{to{stroke-dashoffset:-30}}
.plane-anim{offset-path:path("M40,150 Q210,-10 400,96");animation:fly 7s var(--ease) infinite}
@keyframes fly{0%{offset-distance:0%;opacity:0}8%{opacity:1}88%{opacity:1}100%{offset-distance:100%;opacity:0}}

/* marquee */
.marquee{background:var(--maroon);color:#fff;padding:15px 0;overflow:hidden;position:relative}
.marquee-track{display:flex;gap:44px;width:max-content;animation:marq 34s linear infinite;font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:.10em;text-transform:uppercase;white-space:nowrap}
html[dir="rtl"] .marquee-track{animation-name:marq-rtl;letter-spacing:.02em}
.marquee-track span{display:flex;align-items:center;gap:44px}
.marquee-track .dot{color:var(--gold)}
@keyframes marq{to{transform:translateX(-50%)}}
@keyframes marq-rtl{to{transform:translateX(50%)}}

/* stats band */
.stats-band{background:var(--cream);border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:64px 0}
@media(max-width:860px){.stats-grid{grid-template-columns:repeat(2,1fr)}}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:8px}
.stat-in{border:1px solid var(--line);border-radius:calc(var(--r-md) - 8px);padding:26px 22px;height:100%;box-shadow:inset 0 1px 1px rgba(255,255,255,.9)}
.stat .num{font-family:var(--font-display);font-size:clamp(34px,4vw,46px);font-weight:800;color:var(--navy)}
.stat .num sup{color:var(--maroon);font-size:.55em}
.stat .lbl{color:var(--muted);font-size:13.5px;margin-top:4px;font-weight:500}

/* ============ ABOUT ============ */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
@media(max-width:980px){.about-grid{grid-template-columns:1fr}}
.ceo-card{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:10px;position:sticky;top:96px}
.ceo-inner{border:1px solid var(--line-light);border-radius:calc(var(--r-lg) - 10px);padding:34px 30px;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent);box-shadow:inset 0 1px 1px rgba(255,255,255,.08)}
.ceo-est{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
html[dir="rtl"] .ceo-est{letter-spacing:.06em}
.ceo-inner h3{font-size:26px;font-weight:800;margin-bottom:4px}
.ceo-role{color:rgba(255,255,255,.55);font-size:13.5px;margin-bottom:18px}
.ceo-inner p{color:rgba(255,255,255,.7);font-size:14.5px;font-weight:300}
.ceo-badges{display:grid;gap:10px;margin-top:24px}
.ceo-badge{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.04);font-size:13.5px}
.ceo-badge svg{width:18px;height:18px;flex:none;color:var(--gold)}
.ceo-badge b{color:#fff}
.feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:36px}
@media(max-width:640px){.feat-grid{grid-template-columns:1fr}}
.feat{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:8px;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.feat:hover{transform:translateY(-4px);box-shadow:0 24px 44px -22px rgba(17,30,54,.25)}
.feat-in{border:1px solid var(--line);border-radius:calc(var(--r-md) - 8px);padding:22px 20px;height:100%}
.feat-ic{width:40px;height:40px;border-radius:12px;background:rgba(139,26,26,.07);display:grid;place-items:center;margin-bottom:14px}
.feat-ic svg{width:20px;height:20px;color:var(--maroon)}
.feat h4{font-size:16px;font-weight:700;margin-bottom:6px}
.feat p{font-size:13.5px;color:var(--muted)}

/* ============ SERVICES ============ */
.dark{background:var(--navy);color:#fff}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:980px){.svc-grid{grid-template-columns:1fr}}
.svc{background:rgba(255,255,255,.04);border:1px solid var(--line-light);border-radius:var(--r-lg);padding:10px;transition:transform .6s var(--ease),background .6s var(--ease)}
.svc:hover{transform:translateY(-6px);background:rgba(255,255,255,.07)}
.svc-in{border:1px solid rgba(255,255,255,.08);border-radius:calc(var(--r-lg) - 10px);padding:30px 26px;height:100%;box-shadow:inset 0 1px 1px rgba(255,255,255,.06);display:flex;flex-direction:column}
.svc-tag{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
html[dir="rtl"] .svc-tag{letter-spacing:.06em}
.svc-ic{width:52px;height:52px;border-radius:16px;background:rgba(201,162,75,.1);border:1px solid rgba(201,162,75,.22);display:grid;place-items:center;margin-bottom:20px}
.svc-ic svg{width:26px;height:26px;color:var(--gold)}
.svc h3{font-size:21px;font-weight:800;margin-bottom:10px}
.svc p{font-size:14px;color:rgba(255,255,255,.62);font-weight:300;margin-bottom:20px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.chip{font-size:12px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.8);background:rgba(255,255,255,.04)}
.svc-note{margin-top:18px;font-size:12px;color:var(--gold);border-top:1px dashed rgba(255,255,255,.14);padding-top:14px}

/* ============ TIMELINE ============ */
.tl{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative}
@media(max-width:980px){.tl{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.tl{grid-template-columns:1fr}}
.tl-step{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:8px;position:relative;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.tl-step:hover{transform:translateY(-5px);box-shadow:0 22px 40px -20px rgba(17,30,54,.28)}
.tl-in{border:1px solid var(--line);border-radius:calc(var(--r-md) - 8px);padding:24px 18px;height:100%}
.tl-week{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--maroon);border-radius:999px;padding:4px 11px;margin-bottom:14px}
html[dir="rtl"] .tl-week{letter-spacing:.04em}
.tl-in h4{font-size:15.5px;font-weight:700;margin-bottom:6px}
.tl-in p{font-size:13px;color:var(--muted)}
.tl-num{position:absolute;top:-12px;inset-inline-end:14px;font-family:var(--font-display);font-size:44px;font-weight:800;color:rgba(17,30,54,.07);line-height:1}

/* ============ AIR LABEL ============ */
.airlabel{background:linear-gradient(150deg,var(--navy-2),var(--navy));color:#fff;border-radius:var(--r-lg);padding:12px;overflow:hidden;position:relative}
.airlabel-in{border:1px solid var(--line-light);border-radius:calc(var(--r-lg) - 12px);padding:clamp(30px,5vw,60px);display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center;position:relative;box-shadow:inset 0 1px 1px rgba(255,255,255,.07)}
@media(max-width:900px){.airlabel-in{grid-template-columns:1fr}}
.airlabel h2{font-size:clamp(26px,3.6vw,40px);font-weight:800;margin:16px 0 14px}
.airlabel p{color:rgba(255,255,255,.68);font-weight:300;font-size:15.5px}
.al-points{display:grid;gap:12px;margin-top:26px}
.al-point{display:flex;gap:12px;align-items:flex-start;font-size:14.5px}
.al-point svg{width:19px;height:19px;flex:none;color:var(--gold);margin-top:2px}
.al-visual{position:relative}
.al-visual svg{width:100%;height:auto}

/* ============ PORTFOLIO ============ */
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:860px){.pf-grid{grid-template-columns:1fr}}
.pf{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:9px;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.pf:hover{transform:translateY(-5px);box-shadow:0 26px 48px -24px rgba(17,30,54,.3)}
.pf-in{border:1px solid var(--line);border-radius:calc(var(--r-lg) - 9px);padding:28px 26px;height:100%}
.pf-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px;flex-wrap:wrap}
.pf-status{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-radius:999px;padding:5px 12px}
html[dir="rtl"] .pf-status{letter-spacing:.04em}
.st-live{background:rgba(61,220,132,.12);color:#1d7a4c;border:1px solid rgba(61,220,132,.3)}
.st-done{background:rgba(17,30,54,.06);color:var(--navy);border:1px solid var(--line)}
.pf-ic{width:44px;height:44px;border-radius:13px;background:rgba(139,26,26,.07);display:grid;place-items:center}
.pf-ic svg{width:22px;height:22px;color:var(--maroon)}
.pf h3{font-size:20px;font-weight:800}
.pf .pf-sub{font-size:12.5px;color:var(--maroon);font-weight:600;margin:3px 0 12px}
.pf p{font-size:14px;color:var(--muted)}
.pf-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.pf-meta span{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:5px 12px;background:var(--cream)}

/* ============ CREDENTIALS ============ */
.cred-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
@media(max-width:900px){.cred-grid{grid-template-columns:1fr}}
.cred-list{display:grid;gap:12px;margin-top:28px}
.cred-item{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.05);border:1px solid var(--line-light);border-radius:16px;padding:16px 18px}
.cred-item .ci-ic{width:42px;height:42px;border-radius:12px;background:rgba(201,162,75,.12);display:grid;place-items:center;flex:none}
.cred-item svg{width:21px;height:21px;color:var(--gold)}
.cred-item .t{font-size:12px;color:rgba(255,255,255,.55)}
.cred-item .v{font-size:15px;font-weight:700}
.license-frame{background:rgba(255,255,255,.05);border:1px solid var(--line-light);border-radius:var(--r-lg);padding:12px}
.license-frame .lf-in{border:1px solid rgba(255,255,255,.1);border-radius:calc(var(--r-lg) - 12px);overflow:hidden}
.license-frame img{width:100%}
.license-cap{text-align:center;font-size:12px;color:rgba(255,255,255,.5);padding:14px 10px 6px;letter-spacing:.04em}

/* ============ PORTAL FORMS ============ */
.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:960px){.portal-grid{grid-template-columns:1fr}}
.portal{border-radius:var(--r-lg);padding:10px}
.portal.employer{background:var(--navy);color:#fff}
.portal.candidate{background:#fff;border:1px solid var(--line)}
.portal-in{border-radius:calc(var(--r-lg) - 10px);padding:clamp(26px,3.4vw,40px);height:100%}
.portal.employer .portal-in{border:1px solid var(--line-light);box-shadow:inset 0 1px 1px rgba(255,255,255,.07)}
.portal.candidate .portal-in{border:1px solid var(--line)}
.portal h3{font-size:clamp(22px,2.6vw,28px);font-weight:800;margin:14px 0 10px}
.portal .intro{font-size:14.5px;margin-bottom:20px}
.portal.employer .intro{color:rgba(255,255,255,.65)}
.portal.candidate .intro{color:var(--muted)}
.plist{display:grid;gap:9px;margin-bottom:26px}
.plist li{list-style:none;display:flex;gap:10px;align-items:flex-start;font-size:13.5px}
.plist svg{width:17px;height:17px;flex:none;margin-top:2px}
.portal.employer .plist svg{color:var(--gold)}
.portal.candidate .plist svg{color:var(--maroon)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid .full{grid-column:1/-1}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}}
.fld label{display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
html[dir="rtl"] .fld label{letter-spacing:.02em}
.portal.employer .fld label{color:rgba(255,255,255,.6)}
.portal.candidate .fld label{color:var(--muted)}
.fld input,.fld select,.fld textarea{width:100%;border-radius:13px;padding:12px 15px;font-size:14px;font-family:var(--font-body);transition:border-color .4s var(--ease),background .4s var(--ease);outline:none}
.portal.employer .fld input,.portal.employer .fld select,.portal.employer .fld textarea{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff}
.portal.employer .fld input:focus,.portal.employer .fld select:focus,.portal.employer .fld textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.1)}
.portal.employer .fld select option{color:var(--ink)}
.portal.candidate .fld input,.portal.candidate .fld select,.portal.candidate .fld textarea{background:var(--cream);border:1px solid var(--line);color:var(--ink)}
.portal.candidate .fld input:focus,.portal.candidate .fld select:focus,.portal.candidate .fld textarea:focus{border-color:var(--maroon);background:#fff}
.fld textarea{min-height:84px;resize:vertical}
.submit-btn{width:100%;justify-content:center;margin-top:16px}
.form-note{font-size:11.5px;margin-top:12px;text-align:center;opacity:.55}

/* ============ FAQ ============ */
.faq-wrap{max-width:820px;margin:0 auto}
.faq{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden;transition:box-shadow .5s var(--ease)}
.faq[open]{box-shadow:0 18px 38px -22px rgba(17,30,54,.25)}
.faq summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--font-display);font-weight:700;font-size:16px}
.faq summary::-webkit-details-marker{display:none}
.faq .plus{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;flex:none;font-size:15px;color:var(--maroon);transition:transform .5s var(--ease)}
.faq[open] .plus{transform:rotate(45deg);background:var(--maroon);color:#fff;border-color:var(--maroon)}
.faq .faq-body{padding:0 24px 22px;color:var(--muted);font-size:14.5px}

/* ============ CONTACT ============ */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px}
@media(max-width:960px){.contact-grid{grid-template-columns:1fr}}
.contact-info{display:grid;gap:12px;align-content:start}
.ci{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;transition:transform .5s var(--ease)}
.ci:hover{transform:translateY(-3px)}
.ci .ci-ic{width:44px;height:44px;border-radius:13px;background:rgba(139,26,26,.07);display:grid;place-items:center;flex:none}
.ci svg{width:21px;height:21px;color:var(--maroon)}
.ci .t{font-size:12px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:600}
html[dir="rtl"] .ci .t{letter-spacing:.02em}
.ci .v{font-size:15px;font-weight:600;color:var(--navy);margin-top:2px;direction:ltr;unicode-bidi:embed}
html[dir="rtl"] .ci .v.addr{direction:rtl}
.contact-form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:10px}
.contact-form-in{border:1px solid var(--line);border-radius:calc(var(--r-lg) - 10px);padding:clamp(24px,3vw,36px)}
.contact-form-in h3{font-size:22px;font-weight:800;margin-bottom:20px}
.contact-form-in .fld label{color:var(--muted)}
.contact-form-in .fld input,.contact-form-in .fld select,.contact-form-in .fld textarea{background:var(--cream);border:1px solid var(--line);color:var(--ink)}
.contact-form-in .fld input:focus,.contact-form-in .fld select:focus,.contact-form-in .fld textarea:focus{border-color:var(--maroon);background:#fff}

/* ============ FOOTER ============ */
footer{background:var(--navy);color:#fff;padding:72px 0 32px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px;border-bottom:1px solid var(--line-light)}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}
.foot-brand{font-family:var(--font-display);font-weight:800;font-size:20px;display:flex;align-items:center;gap:11px;margin-bottom:14px}
.foot-brand small{display:block;font-size:11px;font-weight:500;color:rgba(255,255,255,.5);letter-spacing:.14em;text-transform:uppercase}
html[dir="rtl"] .foot-brand small{letter-spacing:.03em}
footer p.about{font-size:13.5px;color:rgba(255,255,255,.55);font-weight:300;max-width:320px}
.foot-lic{display:inline-flex;align-items:center;gap:8px;margin-top:16px;border:1px solid var(--line-light);border-radius:999px;padding:7px 14px;font-size:12px;color:rgba(255,255,255,.7)}
.foot-lic svg{width:14px;height:14px;color:var(--gold)}
footer h5{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:16px;font-weight:600}
html[dir="rtl"] footer h5{letter-spacing:.04em}
footer ul{list-style:none;display:grid;gap:9px}
footer ul a{font-size:13.5px;color:rgba(255,255,255,.72);transition:color .4s}
footer ul a:hover{color:var(--gold)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding-top:26px;font-size:12.5px;color:rgba(255,255,255,.4)}

/* whatsapp float */
.wa-float{position:fixed;bottom:22px;inset-inline-end:22px;z-index:90;display:flex;align-items:center;gap:10px;background:#25D366;color:#fff;border-radius:999px;padding:13px 20px;font-weight:600;font-size:14px;box-shadow:0 18px 40px -12px rgba(37,211,102,.55);transition:transform .5s var(--ease)}
.wa-float:hover{transform:translateY(-3px) scale(1.03)}
.wa-float svg{width:20px;height:20px}
@media(max-width:560px){.wa-float span{display:none}.wa-float{padding:14px}}

/* toast */
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,80px);z-index:120;background:var(--navy);color:#fff;border-radius:999px;padding:13px 24px;font-size:14px;opacity:0;transition:transform .6s var(--ease),opacity .6s var(--ease);box-shadow:0 20px 50px -12px rgba(17,30,54,.5);max-width:90vw;text-align:center}
.toast.show{transform:translate(-50%,0);opacity:1}
/* ============ Phase 1 multi-page additions ============ */

/* interior page hero — shorter than the homepage hero */
.page-hero{min-height:auto;padding:150px 0 84px}
@media(max-width:768px){.page-hero{padding:124px 0 60px}}
.page-hero .container{display:block}
.page-hero-in{max-width:760px}
.page-hero-in h1{font-size:clamp(32px,5vw,58px);font-weight:800;margin:18px 0 20px}
.page-hero-in .hero-sub{margin-bottom:32px}
.page-hero-in .accent{color:var(--gold);font-style:normal}

/* generic card wrapper for standalone forms */
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:10px;max-width:900px;margin:0 auto}
.form-card > form{border:1px solid var(--line);border-radius:calc(var(--r-lg) - 10px);padding:34px 30px;box-shadow:inset 0 1px 1px rgba(255,255,255,.9)}
@media(max-width:640px){.form-card > form{padding:24px 18px}}
.form-alt{text-align:center;padding:18px 10px 8px;font-size:14.5px;color:var(--muted)}
.form-alt a{color:var(--maroon);font-weight:600}
.form-alt a:hover{text-decoration:underline}
.opt{color:var(--muted);font-weight:400;font-size:12.5px}

/* file upload */
.file-drop{position:relative;border:1.5px dashed rgba(17,30,54,.22);border-radius:var(--r-md);background:rgba(17,30,54,.02);
  transition:border-color .35s var(--ease),background .35s var(--ease)}
.file-drop:hover,.file-drop.is-drag{border-color:var(--maroon);background:rgba(139,26,26,.04)}
.file-drop.has-file{border-style:solid;border-color:#2E7D46;background:rgba(46,125,70,.05)}
.file-drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.file-drop-in{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 18px;text-align:center;pointer-events:none}
.file-drop-in svg{width:26px;height:26px;color:var(--maroon)}
.file-drop.has-file .file-drop-in svg{color:#2E7D46}
.file-drop-in strong{font-size:14.5px;font-weight:600;color:var(--ink);word-break:break-word}
.file-drop-in span{font-size:12.5px;color:var(--muted)}

/* candidate warning card */
.warn-card{max-width:840px;margin:0 auto;background:rgba(139,26,26,.05);border:1px solid rgba(139,26,26,.18);
  border-radius:var(--r-md);padding:30px 32px}
.warn-card h3{font-size:20px;color:var(--maroon);margin-bottom:10px}
.warn-card p{color:var(--ink);font-size:15.5px}
.warn-card a{color:var(--maroon);font-weight:600;text-decoration:underline}

/* licence verification */
.verify-card{max-width:760px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--line);
  border-radius:var(--r-md);padding:38px 34px}
.verify-card p{color:var(--muted);font-size:16px;margin-bottom:26px}
.verify-card strong{color:var(--ink)}

/* contact rows */
.ci-row{display:flex;flex-direction:column;gap:5px;padding:19px 22px;border:1px solid var(--line);
  border-radius:var(--r-md);background:#fff;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.ci-row + .ci-row{margin-top:12px}
a.ci-row:hover{transform:translateY(-2px);box-shadow:0 14px 30px -16px rgba(17,30,54,.3)}
.ci-row span{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.ci-row strong{font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--navy);line-height:1.45}
.ci-row.static{background:var(--cream-2)}
html[dir="rtl"] .ci-row span{letter-spacing:.03em}

/* form status message */
.form-status{margin-top:14px;padding:13px 16px;border-radius:12px;font-size:14.5px;display:none}
.form-status.show{display:block}
.form-status.ok{background:rgba(46,125,70,.08);border:1px solid rgba(46,125,70,.3);color:#1E5730}
.form-status.err{background:rgba(139,26,26,.06);border:1px solid rgba(139,26,26,.28);color:var(--maroon)}
.submit-btn[disabled]{opacity:.6;cursor:not-allowed}

/* footer description (renamed from .about when the footer was rebuilt) */
.foot-desc{color:rgba(255,255,255,.6);font-size:14px;line-height:1.7;margin:16px 0 14px;max-width:330px}

/* ---- long-form body copy ---- */
.prose{max-width:760px;font-size:16.5px;line-height:1.75;color:var(--muted)}
.prose.center{margin-left:auto;margin-right:auto;text-align:center}
.prose p{margin-bottom:18px}
.prose p:last-child{margin-bottom:0}
.prose strong{color:var(--ink);font-weight:600}
.prose h3{font-size:21px;font-weight:700;color:var(--ink);margin:32px 0 12px}
.dark .prose{color:rgba(255,255,255,.72)}
.dark .prose strong,.dark .prose h3{color:#fff}

/* ---- two-column "your side / our side" ---- */
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:820px){.split-grid{grid-template-columns:1fr}}
.split-col{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:30px 28px}
.dark .split-col{background:rgba(255,255,255,.04);border-color:var(--line-light)}
.split-col h3{font-size:19px;font-weight:700;color:var(--navy);margin-bottom:18px;
  padding-bottom:14px;border-bottom:1px solid var(--line)}
.dark .split-col h3{color:#fff;border-color:var(--line-light)}
.split-col .plist{margin:0}

/* ---- cost categories ---- */
.cost-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:26px 0 24px}
@media(max-width:720px){.cost-grid{grid-template-columns:1fr}}
.cost-item{background:var(--cream-2);border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px}
.dark .cost-item{background:rgba(255,255,255,.04);border-color:var(--line-light)}
.cost-item h4{font-size:15.5px;font-weight:700;color:var(--navy);margin-bottom:8px}
.dark .cost-item h4{color:var(--gold)}
.cost-item p{font-size:14.5px;line-height:1.65;color:var(--muted);margin:0}
.dark .cost-item p{color:rgba(255,255,255,.68)}

/* active nav item */
.nav-links a[aria-current="page"]{background:rgba(17,30,54,.08);font-weight:600}
.mobile-menu a[aria-current="page"]{color:var(--gold)}

/* ---- service cards rendered as links (Phase 3) ---- */
a.svc{display:block;text-decoration:none;color:inherit}
a.svc:hover{text-decoration:none}
a.svc h3,a.svc p,a.svc .svc-tag{color:inherit}
a.svc p{color:rgba(255,255,255,.62)}
a.svc h3{color:#fff}
a.svc .svc-tag{color:var(--gold)}
a.svc .svc-in{transition:border-color .5s var(--ease)}
a.svc:hover .svc-in{border-color:rgba(201,162,75,.35)}

/* ============ Phase 7 — RTL for Phase 1/3 components ============ */
html[dir="rtl"] .page-hero-in{margin-right:0;margin-left:auto}
html[dir="rtl"] .prose{margin-right:0;margin-left:auto}
html[dir="rtl"] .prose.center{margin-right:auto;margin-left:auto}
html[dir="rtl"] .plist li{padding-right:30px;padding-left:0}
html[dir="rtl"] .plist li svg{right:0;left:auto}
html[dir="rtl"] .split-col h3{text-align:right}
html[dir="rtl"] .cost-item,html[dir="rtl"] .split-col,
html[dir="rtl"] .verify-card,html[dir="rtl"] .warn-card{text-align:right}
html[dir="rtl"] .verify-card{text-align:center}
html[dir="rtl"] .faq summary{text-align:right}
html[dir="rtl"] .faq .faq-body{text-align:right}
html[dir="rtl"] .fld label,html[dir="rtl"] .fld input,
html[dir="rtl"] .fld select,html[dir="rtl"] .fld textarea{text-align:right;direction:rtl}
html[dir="rtl"] .fld input[type="tel"],html[dir="rtl"] .fld input[type="email"],
html[dir="rtl"] .fld input[type="number"],html[dir="rtl"] .fld input[type="date"]{direction:ltr;text-align:right}
html[dir="rtl"] .file-drop-in{text-align:center}
html[dir="rtl"] .form-alt{text-align:center}
html[dir="rtl"] .ci-row{text-align:right}
html[dir="rtl"] .ci-row strong{direction:rtl}
html[dir="rtl"] .svc-in,html[dir="rtl"] .feat-in{text-align:right}
html[dir="rtl"] .sec-head,html[dir="rtl"] .sec-head h2,html[dir="rtl"] .sec-head p{text-align:right}
html[dir="rtl"] .sec-head.center,html[dir="rtl"] .sec-head.center h2,
html[dir="rtl"] .sec-head.center p{text-align:center}
html[dir="rtl"] .chips{justify-content:flex-start}
html[dir="rtl"] .foot-grid,html[dir="rtl"] footer ul,html[dir="rtl"] footer h5{text-align:right}
html[dir="rtl"] .foot-desc{max-width:330px}
html[dir="rtl"] .wa-float{left:22px;right:auto}
html[dir="rtl"] .lang-btn{font-family:'Work Sans',sans-serif;letter-spacing:.04em}
/* latin runs inside Arabic text (phone numbers, emails, licence codes) */
html[dir="rtl"] a[href^="tel:"],html[dir="rtl"] a[href^="mailto:"]{direction:ltr;unicode-bidi:embed;display:inline-block}
