/* =====================================================
   NEXUS GLOBAL HR — Homepage + Auth Premium CSS
   hp-sections.css  (loaded after style.css)
   ===================================================== */

/* ── Core Web Vitals / Performance ── */
/* Prevent CLS: reserve aspect ratio for images before they load */
img { max-width:100%; height:auto; }
.hero-photo     { aspect-ratio:4/3; object-fit:cover; width:100%; }
.about-photo    { aspect-ratio:4/3; object-fit:cover; width:100%; }
.split-img      { aspect-ratio:16/10; object-fit:cover; }
/* content-visibility: auto defers offscreen rendering (improves LCP + TTI) */
.hp-about-section,
.hp-countries-section,
.hp-services-section,
.hp-categories-section,
.hp-clients-section,
.hp-process-section,
.hp-team-section,
.hp-testimonials-section,
.faq-section { content-visibility:auto; contain-intrinsic-size:0 500px; }
/* font-display: swap is set via Google Fonts url — also enforce it here */
@font-face { font-family:'Inter'; font-display:swap; src:local('Inter'); }

/* ── Ticker ── */
.hp-ticker { background:var(--nexus-blue); overflow:hidden; padding:11px 0; position:relative; z-index:1; }
.hp-ticker-inner { display:flex; white-space:nowrap; animation:hpTick 32s linear infinite; will-change:transform; }
.hp-ticker-inner span { display:inline-block; padding:0 16px; color:rgba(255,255,255,.88); font-size:13.5px; font-weight:600; letter-spacing:.3px; }
@keyframes hpTick { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ── Hero upgrades ── */
.hero-orb-1,.hero-orb-2 { position:absolute; border-radius:50%; filter:blur(80px); pointer-events:none; z-index:0; will-change:transform; }
.hero-orb-1 { width:500px; height:500px; background:radial-gradient(circle,rgba(11,61,145,.22) 0%,transparent 70%); top:-120px; right:-80px; animation:orbF1 12s ease-in-out infinite alternate; }
.hero-orb-2 { width:360px; height:360px; background:radial-gradient(circle,rgba(212,168,67,.14) 0%,transparent 70%); bottom:-60px; left:60px; animation:orbF2 15s ease-in-out infinite alternate; }
@keyframes orbF1 { 0%{transform:translate(0,0)} 100%{transform:translate(20px,-30px)} }
@keyframes orbF2 { 0%{transform:translate(0,0)} 100%{transform:translate(-15px,20px)} }

.hero-stat-sep { width:1px; height:36px; background:rgba(255,255,255,.2); align-self:center; flex-shrink:0; }
.hero-img-shine { position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 60%); border-radius:inherit; pointer-events:none; }
.hero-card-overlay3 { position:absolute; bottom:-16px; left:50%; transform:translateX(-50%); background:rgba(255,255,255,.97); border-radius:14px; padding:10px 18px; text-align:center; box-shadow:0 8px 32px rgba(0,0,0,.18); min-width:150px; border:1px solid rgba(255,255,255,.8); }
.hero-card-overlay3 .title { font-size:11px; color:#6B7280; font-weight:600; margin-top:4px; }
.btn-hero-ghost { display:inline-flex; align-items:center; gap:8px; padding:12px 22px; border-radius:10px; font-size:14px; font-weight:700; background:transparent; border:1.5px solid rgba(255,255,255,.28); color:rgba(255,255,255,.88); text-decoration:none; transition:background .2s,border-color .2s,color .2s; }
.btn-hero-ghost:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.5); color:#fff; }

/* ── About ── */
.hp-about-section { background:#fff; }
[data-mdb-theme="dark"] .hp-about-section { background:var(--nexus-dark); }
.about-split-badge { position:absolute; bottom:20px; left:20px; background:linear-gradient(135deg,var(--nexus-blue),var(--nexus-blue-lt)); color:#fff; border-radius:12px; padding:12px 16px; display:flex; align-items:center; gap:10px; font-size:13px; font-weight:700; box-shadow:0 8px 24px rgba(11,61,145,.4); z-index:2; }
.about-split-badge i { font-size:18px; color:rgba(255,255,255,.85); }
.hp-about-points { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:8px; }
.hp-about-point { display:flex; align-items:center; gap:10px; font-size:13.5px; font-weight:600; color:var(--nexus-dark); }
[data-mdb-theme="dark"] .hp-about-point { color:rgba(255,255,255,.85); }

/* ── Countries ── */
.hp-countries-section { background:var(--nexus-light); }
[data-mdb-theme="dark"] .hp-countries-section { background:#111827; }
.hp-countries-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.hp-country-card { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:14px 16px; display:flex; align-items:center; gap:12px; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,border-color .2s; cursor:default; }
.hp-country-card:hover { transform:translateY(-5px); box-shadow:0 12px 30px rgba(0,0,0,.1); border-color:var(--nexus-blue-lt); }
[data-mdb-theme="dark"] .hp-country-card { background:#1F2937; border-color:#374151; }
.hp-country-flag { font-size:28px; flex-shrink:0; line-height:1; }
.hp-country-info { flex:1; min-width:0; }
.hp-country-name { font-size:13.5px; font-weight:800; color:var(--nexus-dark); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
[data-mdb-theme="dark"] .hp-country-name { color:#F1F5F9; }
.hp-country-city { font-size:11px; color:#9CA3AF; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.hp-country-tag { font-size:10px; font-weight:700; padding:3px 8px; border-radius:50px; white-space:nowrap; flex-shrink:0; }
.cc-gold   { background:#fef9c3; color:#92400e; border:1px solid #fde68a; }
.cc-green  { background:#dcfce7; color:#166534; border:1px solid #bbf7d0; }
.cc-red    { background:#fee2e2; color:#991b1b; border:1px solid #fecaca; }
.cc-blue   { background:#dbeafe; color:#1e40af; border:1px solid #C3E1F2; }
.cc-purple { background:#ede9fe; color:#5b21b6; border:1px solid #ddd6fe; }
[data-mdb-theme="dark"] .cc-gold   { background:#78350f33; color:#fcd34d; border-color:#92400e55; }
[data-mdb-theme="dark"] .cc-green  { background:#14532d33; color:#4ade80; border-color:#16653455; }
[data-mdb-theme="dark"] .cc-red    { background:#7f1d1d33; color:#f87171; border-color:#99191955; }
[data-mdb-theme="dark"] .cc-blue   { background:#0B3D9133; color:#8FC6E8; border-color:#1e40af55; }
[data-mdb-theme="dark"] .cc-purple { background:#4c1d9533; color:#c4b5fd; border-color:#5b21b655; }

/* ── Workforce Categories ── */
.hp-categories-section { background:#fff; }
[data-mdb-theme="dark"] .hp-categories-section { background:var(--nexus-dark); }
.hp-cat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.hp-cat-card { border-radius:16px; overflow:hidden; border:1px solid #E5E7EB; background:#fff; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s; }
.hp-cat-card:hover { transform:translateY(-6px) scale(1.01); box-shadow:0 16px 42px rgba(0,0,0,.12); border-color:#C3E1F2; }
[data-mdb-theme="dark"] .hp-cat-card { background:#1F2937; border-color:#374151; }
.hp-cat-head { display:flex; align-items:center; gap:10px; padding:16px 20px; font-size:15px; font-weight:800; color:#fff; }
.hp-cat-head i { font-size:18px; }
.hc-gold   { background:linear-gradient(135deg,#F5B301,#F5B301); }
.hc-blue   { background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); }
.hc-green  { background:linear-gradient(135deg,#10b981,#059669); }
.hc-red    { background:linear-gradient(135deg,#ef4444,#dc2626); }
.hp-cat-list { list-style:none; padding:14px 20px 18px; margin:0; }
.hp-cat-list li { display:flex; align-items:center; gap:8px; font-size:13px; color:#374151; padding:5px 0; border-bottom:1px solid #F1F5F9; font-weight:500; }
.hp-cat-list li:last-child { border-bottom:none; }
.hp-cat-list li i { color:#22c55e; font-size:12px; flex-shrink:0; }
[data-mdb-theme="dark"] .hp-cat-list li { color:rgba(255,255,255,.75); border-color:#374151; }

/* ── Prestigious Clients ── */
.hp-clients-section { background:var(--nexus-light); }
[data-mdb-theme="dark"] .hp-clients-section { background:#111827; }
.hp-clients-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.hp-client-card { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:16px; display:flex; align-items:center; gap:12px; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,border-color .2s; }
.hp-client-card:hover { transform:translateY(-4px); box-shadow:0 10px 26px rgba(0,0,0,.1); border-color:var(--nexus-blue-lt); }
[data-mdb-theme="dark"] .hp-client-card { background:#1F2937; border-color:#374151; }
.hp-client-icon { width:44px; height:44px; border-radius:12px; background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); display:flex; align-items:center; justify-content:center; color:#fff; font-size:18px; flex-shrink:0; }
.hp-client-name { font-size:13.5px; font-weight:800; color:var(--nexus-dark); }
[data-mdb-theme="dark"] .hp-client-name { color:#F1F5F9; }
.hp-client-meta { font-size:11px; color:#9CA3AF; margin-top:2px; }

/* ── How It Works Process ── */
.hp-process-row { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; position:relative; }
.hp-process-row::before { content:''; position:absolute; top:35px; left:12%; right:12%; height:2px; background:linear-gradient(90deg,var(--nexus-blue-lt),var(--nexus-blue)); opacity:.2; z-index:0; }
.hp-process-step { text-align:center; padding:0 8px; position:relative; z-index:1; }
.hp-process-icon { position:relative; width:72px; height:72px; border-radius:50%; background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); display:flex; align-items:center; justify-content:center; font-size:26px; color:#fff; margin:0 auto 14px; box-shadow:0 8px 24px rgba(11,61,145,.3); transition:transform .3s cubic-bezier(.34,1.56,.64,1), box-shadow .3s; }
.hp-process-step:hover .hp-process-icon { transform:scale(1.1) translateY(-2px); box-shadow:0 14px 36px rgba(11,61,145,.4); }
.hp-process-num { position:absolute; top:-6px; right:-6px; width:22px; height:22px; border-radius:50%; background:var(--nexus-gold); color:#fff; font-size:10px; font-weight:900; display:flex; align-items:center; justify-content:center; border:2px solid #fff; }
.hp-process-step h6 { font-size:14px; font-weight:800; color:var(--nexus-dark); margin-bottom:6px; }
[data-mdb-theme="dark"] .hp-process-step h6 { color:#F1F5F9; }
.hp-process-step p { font-size:13px; color:#6B7280; line-height:1.6; margin:0; }
.hp-process-arrow { display:none; }

/* ── Team ── */
.hp-team-section { background:var(--nexus-light); }
[data-mdb-theme="dark"] .hp-team-section { background:#111827; }
.hp-team-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:16px; }
.hp-team-card { background:#fff; border:1px solid #E5E7EB; border-radius:16px; padding:24px 16px; text-align:center; transition:transform .2s,box-shadow .2s; }
.hp-team-card:hover { transform:translateY(-4px); box-shadow:0 12px 32px rgba(0,0,0,.1); }
[data-mdb-theme="dark"] .hp-team-card { background:#1F2937; border-color:#374151; }
.hp-team-avatar { width:72px; height:72px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 12px; }
.hp-team-dept { font-size:11px; font-weight:700; color:#9CA3AF; text-transform:uppercase; letter-spacing:.8px; margin-bottom:4px; }
.hp-team-role { font-size:14px; font-weight:800; color:var(--nexus-dark); line-height:1.3; }
[data-mdb-theme="dark"] .hp-team-role { color:#F1F5F9; }

/* ── CTA Banner ── */
.hp-cta-section { position:relative; padding:100px 0; overflow:hidden; }
.hp-cta-bg { position:absolute; inset:0; background-size:cover; background-position:center; }
.hp-cta-overlay { position:absolute; inset:0; background:linear-gradient(135deg,rgba(15,23,42,.92) 0%,rgba(11,61,145,.85) 100%); }
.hp-cta-inner { position:relative; z-index:2; text-align:center; color:#fff; }
.hp-cta-badge { display:inline-flex; align-items:center; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:50px; padding:8px 20px; font-size:13px; font-weight:700; margin-bottom:22px; }
.hp-cta-inner h2 { font-size:clamp(26px,4vw,46px); font-weight:900; margin-bottom:16px; letter-spacing:-.6px; line-height:1.15; }
.hp-cta-inner p { font-size:17px; color:rgba(255,255,255,.72); margin-bottom:32px; max-width:560px; margin-left:auto; margin-right:auto; }
.hp-cta-btns { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
.hp-cta-wa { display:inline-flex; align-items:center; gap:8px; padding:13px 28px; border-radius:10px; font-size:15px; font-weight:700; background:#25d366; color:#fff; text-decoration:none; transition:opacity .2s,transform .15s; }
.hp-cta-wa:hover { opacity:.9; transform:translateY(-1px); color:#fff; }

/* =====================================================
   AUTH PAGES — ULTRA PREMIUM REDESIGN v3
   SaaS-grade glassmorphism · floating labels · icon inputs
   ===================================================== */

/* ── Page shell ── */
.auth-page-body {
  margin:0; padding:0; min-height:100vh; overflow-x:hidden;
  font-family:'Inter',sans-serif;
  background:#060d1f;
}
.auth-shell {
  display:flex; min-height:100vh;
}

/* ══════════════════════════════════════════
   LEFT BRANDING PANEL
══════════════════════════════════════════ */
.auth-left {
  width:46%; flex-shrink:0; position:relative;
  display:flex; flex-direction:column; justify-content:center;
  padding:52px 52px;
  overflow:hidden;
  background-size:cover; background-position:center;
  background-color:#060d1f;
}
/* Dark gradient overlay on top of any background image */
.auth-left::before {
  content:''; position:absolute; inset:0; z-index:0;
  background:linear-gradient(160deg,rgba(6,13,31,.93) 0%,rgba(13,31,74,.88) 38%,rgba(26,58,143,.82) 72%,rgba(13,31,74,.93) 100%);
}
.auth-left-green::before {
  background:linear-gradient(160deg,rgba(6,13,31,.94) 0%,rgba(5,40,24,.9) 38%,rgba(6,95,70,.85) 72%,rgba(5,40,24,.93) 100%);
}
/* Ensure inner content renders above the ::before overlay */
.auth-orb, .auth-grid-overlay, .auth-left-inner { position:relative; z-index:1; }

/* Animated depth orbs */
.auth-orb {
  position:absolute; border-radius:50%;
  pointer-events:none; will-change:transform;
  animation:authOrbFloat 12s ease-in-out infinite alternate;
}
.auth-orb-1 {
  width:500px; height:500px;
  background:radial-gradient(circle at 40% 40%,rgba(59,130,246,.28) 0%,rgba(99,102,241,.10) 50%,transparent 70%);
  top:-160px; right:-120px;
  filter:blur(60px); opacity:.8;
  animation-duration:11s;
}
.auth-orb-2 {
  width:380px; height:380px;
  background:radial-gradient(circle at 60% 50%,rgba(212,168,67,.22) 0%,rgba(251,146,60,.08) 50%,transparent 70%);
  bottom:-80px; left:-100px;
  filter:blur(50px); opacity:.7;
  animation-duration:15s; animation-delay:-4s;
}
.auth-orb-3 {
  width:240px; height:240px;
  background:radial-gradient(circle,rgba(139,92,246,.18) 0%,transparent 70%);
  top:42%; left:42%;
  filter:blur(44px); opacity:.6;
  animation-duration:18s; animation-delay:-7s;
}
.auth-left-green .auth-orb-1 { background:radial-gradient(circle at 40% 40%,rgba(16,185,129,.28) 0%,rgba(5,150,105,.10) 50%,transparent 70%); }
.auth-left-green .auth-orb-2 { background:radial-gradient(circle at 60% 50%,rgba(212,168,67,.22) 0%,rgba(74,222,128,.08) 50%,transparent 70%); }
@keyframes authOrbFloat {
  0%   { transform:translate(0,0) scale(1) rotate(0deg); }
  33%  { transform:translate(12px,-18px) scale(1.05) rotate(2deg); }
  66%  { transform:translate(-8px,12px) scale(.97) rotate(-1deg); }
  100% { transform:translate(20px,-28px) scale(1.08) rotate(3deg); }
}

/* Grid overlay — subtle dot pattern */
.auth-grid-overlay {
  position:absolute; inset:0; pointer-events:none;
  background-image:
    radial-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:32px 32px;
}
/* Top-right glow accent */
.auth-left::after {
  content:''; position:absolute; top:0; right:0;
  width:200px; height:200px;
  background:radial-gradient(circle at top right,rgba(59,130,246,.18),transparent 70%);
  pointer-events:none;
}

/* Left inner content */
.auth-left-inner { position:relative; z-index:3; }

/* Logo */
.auth-brand { display:inline-block; margin-bottom:36px; text-decoration:none; }
.auth-logo {
  height:52px; width:auto;
  filter:brightness(0) invert(1) drop-shadow(0 3px 14px rgba(212,168,67,.45));
  transition:transform .3s,filter .3s;
}
.auth-logo:hover {
  transform:scale(1.05);
  filter:brightness(0) invert(1) drop-shadow(0 4px 20px rgba(212,168,67,.7));
}

/* Live pulse dot + hero label */
.auth-hero-label {
  display:inline-flex; align-items:center; gap:8px;
  font-size:11px; font-weight:700; letter-spacing:.9px;
  text-transform:uppercase; color:rgba(255,255,255,.6);
  margin-bottom:14px;
}
.auth-dot {
  width:8px; height:8px; border-radius:50%;
  background:#22c55e; flex-shrink:0;
  box-shadow:0 0 0 0 rgba(34,197,94,.4);
  animation:authDotPulse 2.4s ease-in-out infinite;
}
.auth-dot-green { background:#34d399; box-shadow:0 0 0 0 rgba(52,211,153,.4); }
@keyframes authDotPulse {
  0%   { box-shadow:0 0 0 0 rgba(34,197,94,.5); }
  60%  { box-shadow:0 0 0 8px rgba(34,197,94,0); }
  100% { box-shadow:0 0 0 0 rgba(34,197,94,0); }
}

/* Hero heading */
.auth-hero-text h1 {
  font-size:clamp(24px,2.8vw,40px);
  font-weight:900; color:#fff; line-height:1.18;
  margin:0 0 14px; letter-spacing:-.6px;
}
.auth-hero-text h1 em {
  font-style:normal;
  background:linear-gradient(95deg,#F5B301 0%,#FFCB3D 50%,#f97316 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.auth-hero-text p {
  font-size:14.5px; color:rgba(255,255,255,.55);
  line-height:1.8; margin:0 0 28px; max-width:360px;
}

/* Country pills */
.auth-countries { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:26px; }
.auth-country-pill {
  display:inline-flex; align-items:center; gap:5px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.11);
  color:rgba(255,255,255,.75); font-size:11.5px; font-weight:600;
  padding:5px 11px; border-radius:50px;
  backdrop-filter:blur(8px); transition:all .2s;
  cursor:default;
}
.auth-country-pill:hover { background:rgba(255,255,255,.14); color:#fff; border-color:rgba(255,255,255,.2); }

/* Benefits list */
.auth-benefits { list-style:none; padding:0; margin:0 0 26px; }
.auth-benefits li {
  display:flex; align-items:center; gap:10px;
  color:rgba(255,255,255,.7); font-size:13.5px; font-weight:500;
  margin-bottom:11px; line-height:1.4;
}
.auth-benefits li i { color:#34d399; font-size:13px; flex-shrink:0; }

/* Stats glassmorphism bar */
.auth-stats {
  display:flex; align-items:center;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px; padding:16px 18px;
  margin-bottom:22px;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.auth-stat { flex:1; text-align:center; }
.auth-stat strong {
  display:block; font-size:19px; font-weight:900; color:#fff;
  margin-bottom:2px; letter-spacing:-.3px;
}
.auth-stat span { font-size:10.5px; color:rgba(255,255,255,.4); font-weight:500; letter-spacing:.2px; }
.auth-stat-divider { width:1px; height:34px; background:rgba(255,255,255,.12); flex-shrink:0; margin:0 6px; }

/* Trust badges */
.auth-trust-row { display:flex; flex-wrap:wrap; gap:8px; }
.auth-trust-badge {
  display:inline-flex; align-items:center; gap:6px;
  font-size:11px; font-weight:700;
  color:rgba(255,255,255,.65);
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
  padding:6px 13px; border-radius:8px;
  backdrop-filter:blur(6px);
  transition:background .2s,color .2s;
}
.auth-trust-badge:hover { background:rgba(255,255,255,.1); color:rgba(255,255,255,.9); }
.auth-trust-badge i { color:#F5B301; font-size:12px; }

/* Hiring tags */
.auth-hiring-row { display:flex; flex-wrap:wrap; gap:8px; }
.auth-hiring-tag {
  font-size:11.5px; font-weight:600;
  color:rgba(255,255,255,.8);
  background:rgba(239,68,68,.14);
  border:1px solid rgba(239,68,68,.24);
  padding:5px 12px; border-radius:8px;
  animation:authTagPop .4s ease both;
}
@keyframes authTagPop { from{opacity:0;transform:scale(.92)} to{opacity:1;transform:scale(1)} }

/* ══════════════════════════════════════════
   RIGHT FORM PANEL
══════════════════════════════════════════ */
.auth-right {
  flex:1;
  display:flex; align-items:center; justify-content:center;
  padding:48px 28px;
  background:linear-gradient(160deg,#EEF3FC 0%,#f8fafc 50%,#fff 100%);
  overflow-y:auto; min-height:100vh;
}
.auth-right-scroll { align-items:flex-start; padding-top:44px; }

/* Glassmorphism form card */
.auth-form-box {
  width:100%; max-width:468px;
  background:rgba(255,255,255,.97);
  border-radius:28px;
  padding:42px 40px;
  box-shadow:
    0 2px 4px rgba(15,23,42,.04),
    0 12px 40px rgba(15,23,42,.10),
    0 32px 80px rgba(15,23,42,.07),
    0 0 0 1px rgba(15,23,42,.05);
  position:relative;
  animation:authCardIn .5s cubic-bezier(.16,1,.3,1) both;
}
.auth-form-box-lg { max-width:540px; }
@keyframes authCardIn {
  from { opacity:0; transform:translateY(20px) scale(.98); }
  to   { opacity:1; transform:translateY(0) scale(1); }
}
/* Top gradient accent line on card */
.auth-form-box::before {
  content:''; position:absolute; top:0; left:32px; right:32px; height:3px;
  border-radius:0 0 4px 4px;
  background:linear-gradient(90deg,#1479BE,#6366f1,#8b5cf6);
  opacity:.7;
}
.auth-form-box-lg::before {
  background:linear-gradient(90deg,#10b981,#059669,#0d9488);
}

/* Mobile top bar */
.auth-mobile-top {
  display:none; align-items:center;
  justify-content:space-between; margin-bottom:24px;
}
.auth-mobile-logo img { height:36px; width:auto; }
.auth-back-link {
  display:inline-flex; align-items:center; gap:6px;
  font-size:13px; font-weight:600; color:#6B7280;
  text-decoration:none; transition:color .2s;
}
.auth-back-link:hover { color:#1479BE; }

/* Form header */
.auth-form-head { text-align:center; margin-bottom:30px; }
.auth-form-icon {
  width:64px; height:64px; border-radius:20px;
  display:flex; align-items:center; justify-content:center;
  font-size:26px; color:#fff; margin:0 auto 18px;
  position:relative; overflow:hidden;
}
.auth-form-icon::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);
  border-radius:inherit;
}
.auth-icon-blue {
  background:linear-gradient(135deg,#1479BE 0%,#0B3D91 100%);
  box-shadow:0 10px 30px rgba(59,130,246,.4), 0 2px 8px rgba(59,130,246,.3);
}
.auth-icon-green {
  background:linear-gradient(135deg,#10b981 0%,#059669 100%);
  box-shadow:0 10px 30px rgba(16,185,129,.4), 0 2px 8px rgba(16,185,129,.3);
}
.auth-form-head h2 {
  font-size:24px; font-weight:900; color:#111827;
  margin:0 0 7px; letter-spacing:-.4px;
}
.auth-form-head p { font-size:13.5px; color:#9CA3AF; margin:0; line-height:1.5; }

/* ── Alert messages ── */
.auth-msg {
  display:flex; align-items:flex-start; gap:10px;
  padding:13px 16px; border-radius:12px;
  font-size:13px; font-weight:600;
  margin-bottom:20px; line-height:1.55;
  animation:authMsgIn .3s ease both;
}
@keyframes authMsgIn { from{opacity:0;transform:translateY(-6px)} to{opacity:1;transform:translateY(0)} }
.auth-msg-err {
  background:linear-gradient(135deg,#fef2f2,#fff5f5);
  border:1.5px solid #fca5a5; color:#dc2626;
}
.auth-msg-ok {
  background:linear-gradient(135deg,#f0fdf4,#f7fff8);
  border:1.5px solid #86efac; color:#15803d;
}
.auth-msg i { margin-top:1px; flex-shrink:0; font-size:14px; }

/* ── Form fields ── */
.auth-field-group { margin-bottom:0; }
.auth-field { margin-bottom:20px; position:relative; }

/* Label */
.auth-label {
  display:flex; align-items:center; gap:6px;
  font-size:12.5px; font-weight:700;
  color:#374151; margin-bottom:8px;
  letter-spacing:.1px;
}
.auth-label i { color:#9CA3AF; font-size:12.5px; }
.auth-req { color:#ef4444; font-size:11px; margin-left:1px; }
.auth-label-row {
  display:flex; align-items:center;
  justify-content:space-between; margin-bottom:8px;
}
.auth-label-row .auth-label { margin-bottom:0; }
.auth-forgot {
  font-size:12px; font-weight:700;
  color:#1479BE; text-decoration:none;
  transition:color .2s;
}
.auth-forgot:hover { color:#0B3D91; text-decoration:underline; }

/* Icon-inside input wrapper */
.auth-input-wrap {
  position:relative; display:flex; align-items:center;
}
.auth-input-wrap > .auth-input,
.auth-input-wrap > .auth-input-eye { flex:1; min-width:0; }
.auth-input-icon {
  position:absolute; left:14px; top:50%; transform:translateY(-50%);
  color:#9CA3AF; font-size:14px; pointer-events:none;
  transition:color .2s; z-index:2;
}
/* When an eye-toggle wrapper is nested inside auth-input-wrap, the input
   already inherits padding-left:42px from .auth-input — that's correct.
   The eye-btn still positions from the right end of the eye wrapper. */
.auth-input-wrap .auth-input-eye { position:relative; }
.auth-input-wrap:focus-within .auth-input-icon { color:#1479BE; }
.auth-input-wrap-green:focus-within .auth-input-icon { color:#10b981; }

/* Premium input */
.auth-input {
  width:100%;
  padding:13px 14px 13px 42px;
  border:2px solid #e8edf5;
  border-radius:12px;
  font-size:14px; font-weight:500;
  font-family:'Inter',sans-serif;
  background:#fafbfd; color:#111827;
  transition:border-color .2s,box-shadow .2s,background .2s;
  outline:none; appearance:none; -webkit-appearance:none;
  -webkit-font-smoothing:antialiased;
}
.auth-input:hover { border-color:#c7d2e4; background:#fff; }
.auth-input:focus {
  border-color:#1479BE;
  background:#fff;
  box-shadow:0 0 0 4px rgba(59,130,246,.12), 0 1px 3px rgba(59,130,246,.08);
}
.auth-input::placeholder { color:#b8c4d4; font-weight:400; }
/* No icon variant (used with .auth-input-eye directly) */
.auth-input-no-icon { padding-left:14px; }

/* Password with eye toggle */
.auth-input-eye { position:relative; }
.auth-input-eye .auth-input { padding-right:46px; }
.auth-eye-btn {
  position:absolute; right:13px; top:50%; transform:translateY(-50%);
  background:none; border:none; cursor:pointer; padding:5px;
  color:#9CA3AF; font-size:14px;
  transition:color .2s,transform .15s;
  display:flex; align-items:center;
}
.auth-eye-btn:hover { color:#4B5563; transform:translateY(-50%) scale(1.1); }
.auth-hint {
  font-size:11.5px; color:#9CA3AF; font-weight:500;
  margin-top:5px; padding-left:2px;
}

/* Two-column row */
.auth-row-2 {
  display:grid; grid-template-columns:1fr 1fr;
  gap:16px; margin-bottom:0;
}

/* Password strength */
.auth-pass-strength { margin:-4px 0 18px; }
.auth-pass-segments {
  display:flex; gap:4px; margin-bottom:5px;
}
.auth-pass-seg {
  flex:1; height:3px; border-radius:3px;
  background:#e8edf5; transition:background .3s;
}
.auth-pass-bar { height:4px; background:#e8edf5; border-radius:4px; overflow:hidden; margin-bottom:5px; }
.auth-pass-fill { height:100%; border-radius:4px; width:0; transition:width .35s cubic-bezier(.4,0,.2,1),background .35s; }
.auth-pass-label { font-size:11px; font-weight:700; letter-spacing:.3px; }

/* Custom checkbox */
.auth-checkbox-label {
  display:flex; align-items:flex-start; gap:10px;
  font-size:13px; color:#6B7280; font-weight:500;
  margin-bottom:22px; cursor:pointer; line-height:1.55;
  user-select:none;
}
.auth-checkbox { position:absolute; opacity:0; width:0; height:0; }
.auth-checkbox-custom {
  width:19px; height:19px; border:2px solid #d1d5db;
  border-radius:6px; display:inline-flex;
  align-items:center; justify-content:center;
  flex-shrink:0; margin-top:1px;
  background:#fff; transition:all .2s;
}
.auth-checkbox:focus + .auth-checkbox-custom { box-shadow:0 0 0 3px rgba(59,130,246,.15); }
.auth-checkbox:checked + .auth-checkbox-custom {
  background:linear-gradient(135deg,#1479BE,#0B3D91);
  border-color:#1479BE;
  box-shadow:0 4px 10px rgba(59,130,246,.3);
}
.auth-checkbox:checked + .auth-checkbox-custom::after {
  content:'\f00c'; font-family:'Font Awesome 6 Free';
  font-weight:900; font-size:10px; color:#fff;
}
.auth-checkbox-label a { color:#1479BE; font-weight:600; text-decoration:none; }
.auth-checkbox-label a:hover { text-decoration:underline; }

/* ── Submit button — animated gradient ── */
.auth-submit-btn {
  width:100%; padding:15px;
  border:none; border-radius:14px;
  color:#fff; font-size:15px; font-weight:800;
  cursor:pointer; letter-spacing:.1px;
  display:flex; align-items:center; justify-content:center; gap:9px;
  font-family:'Inter',sans-serif;
  position:relative; overflow:hidden;
  transition:transform .2s cubic-bezier(.34,1.56,.64,1), box-shadow .2s;
}
.auth-submit-btn:hover { transform:translateY(-2px); }
.auth-submit-btn:active { transform:translateY(0) scale(.98); }

.auth-submit-blue {
  background:linear-gradient(135deg,#1479BE 0%,#0E6BA8 50%,#0B3D91 100%);
  box-shadow:0 8px 25px rgba(59,130,246,.45), 0 2px 8px rgba(59,130,246,.25);
}
.auth-submit-blue:hover {
  box-shadow:0 12px 35px rgba(59,130,246,.55), 0 4px 12px rgba(59,130,246,.3);
}
.auth-submit-green {
  background:linear-gradient(135deg,#10b981 0%,#059669 50%,#047857 100%);
  box-shadow:0 8px 25px rgba(16,185,129,.45), 0 2px 8px rgba(16,185,129,.25);
}
.auth-submit-green:hover {
  box-shadow:0 12px 35px rgba(16,185,129,.55), 0 4px 12px rgba(16,185,129,.3);
}
/* Animated shimmer sweep */
.auth-btn-shine {
  position:absolute; top:0; left:-100%; width:55%; height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  animation:authBtnShine 2.8s ease-in-out 1s infinite;
  pointer-events:none;
}
@keyframes authBtnShine { 0%{left:-100%} 60%,100%{left:200%} }

/* ── Divider + alt button ── */
.auth-or-divider {
  text-align:center; margin:24px 0; position:relative;
}
.auth-or-divider::before {
  content:''; position:absolute; top:50%; left:0; right:0;
  height:1px; background:linear-gradient(90deg,transparent,#E5E7EB 20%,#E5E7EB 80%,transparent);
}
.auth-or-divider span {
  background:#fff; padding:0 16px; position:relative;
  font-size:12px; font-weight:700; color:#9CA3AF; letter-spacing:.3px;
}
.auth-alt-btn {
  width:100%; padding:13px;
  border:2px solid #e8edf5; border-radius:14px;
  background:#fff; color:#374151;
  font-size:14px; font-weight:700;
  cursor:pointer; text-decoration:none;
  display:flex; align-items:center; justify-content:center; gap:8px;
  transition:all .2s; font-family:'Inter',sans-serif;
}
.auth-alt-btn:hover {
  border-color:#1479BE; background:#eff6ff; color:#0E6BA8;
  box-shadow:0 4px 14px rgba(59,130,246,.12);
  transform:translateY(-1px);
}
.auth-legal {
  text-align:center; font-size:11.5px;
  color:#9CA3AF; margin-top:20px; line-height:1.65;
}
.auth-legal a { color:#6B7280; font-weight:600; }
.auth-legal a:hover { color:#1479BE; }

/* ── Forgot / reset standalone card ── */
.auth-center-wrap {
  min-height:100vh; display:flex;
  align-items:center; justify-content:center;
  padding:40px 20px;
  background:linear-gradient(160deg,#060d1f 0%,#0d1f4a 50%,#1a3a8f 100%);
}
.auth-card {
  background:#fff; border-radius:24px;
  padding:44px 40px; width:100%; max-width:440px;
  box-shadow:0 40px 100px rgba(0,0,0,.25), 0 0 0 1px rgba(0,0,0,.05);
  animation:authCardIn .45s cubic-bezier(.16,1,.3,1) both;
}
.auth-back-home {
  display:inline-flex; align-items:center; gap:7px;
  font-size:13px; font-weight:600; color:#6B7280;
  text-decoration:none; margin-bottom:28px;
  transition:color .2s;
}
.auth-back-home:hover { color:#1479BE; }
.auth-header { text-align:center; margin-bottom:28px; }
.auth-icon-badge {
  width:60px; height:60px; border-radius:18px;
  display:flex; align-items:center; justify-content:center;
  font-size:24px; color:#fff; margin:0 auto 16px;
  box-shadow:0 8px 24px rgba(0,0,0,.2);
}
.auth-header h3 { font-size:22px; font-weight:900; color:#111827; margin:0 0 6px; }
.auth-header p  { font-size:13.5px; color:#9CA3AF; margin:0; }
.auth-alert {
  display:flex; align-items:flex-start; gap:8px;
  padding:12px 16px; border-radius:10px;
  font-size:13px; font-weight:600; line-height:1.55;
  margin-bottom:18px; border:1.5px solid transparent;
}
.auth-alert-ok  { background:#f0fdf4; border-color:#86efac; color:#15803d; }
.auth-alert-err { background:#fef2f2; border-color:#fca5a5; color:#dc2626; }
/* Standalone card field/input */
.auth-card .auth-field { margin-bottom:18px; }
.auth-card .auth-field label {
  display:block; font-size:12.5px; font-weight:700;
  color:#374151; margin-bottom:7px;
}
.auth-card .auth-input-wrap {
  position:relative; display:flex; align-items:center;
}
.auth-card .auth-input-wrap > i.fa-solid,
.auth-card .auth-input-wrap > i.fa-regular {
  position:absolute; left:13px; top:50%; transform:translateY(-50%);
  color:#9CA3AF; font-size:14px; pointer-events:none; z-index:2;
}
.auth-card .auth-input-wrap input {
  flex:1; min-width:0; width:100%;
  padding:12px 42px 12px 40px;
  border:2px solid #e8edf5; border-radius:11px;
  font-size:14px; font-weight:500; font-family:'Inter',sans-serif;
  background:#fafbfd; color:#111827; outline:none;
  transition:border-color .2s,box-shadow .2s;
}
.auth-card .auth-input-wrap input:focus {
  border-color:#1479BE;
  box-shadow:0 0 0 4px rgba(59,130,246,.12);
}
.auth-eye {
  position:absolute; right:12px; top:50%; transform:translateY(-50%);
  background:none; border:none; cursor:pointer;
  color:#9CA3AF; font-size:14px; padding:4px;
  transition:color .2s;
}
.auth-eye:hover { color:#4B5563; }
.auth-btn-submit {
  display:flex; align-items:center; justify-content:center;
  width:100%; padding:13px 24px;
  background:linear-gradient(135deg,#1479BE,#0B3D91);
  color:#fff; border:none; border-radius:12px;
  font-size:14px; font-weight:800; font-family:'Inter',sans-serif;
  cursor:pointer; text-decoration:none;
  box-shadow:0 6px 20px rgba(59,130,246,.35);
  transition:transform .15s,box-shadow .15s;
  margin-top:8px;
}
.auth-btn-submit:hover { transform:translateY(-1px); box-shadow:0 10px 28px rgba(59,130,246,.45); color:#fff; }

/* ── Apply Gate (login-required page) ── */
.apply-gate-wrap {
  min-height:100vh; display:flex;
  align-items:center; justify-content:center;
  padding:40px 20px;
  background:linear-gradient(160deg,#060d1f 0%,#0d1f4a 50%,#1a3a8f 100%);
}
.apply-gate-card {
  background:#fff; border-radius:28px;
  padding:52px 44px; width:100%; max-width:480px;
  box-shadow:0 40px 100px rgba(0,0,0,.3);
  text-align:center;
  animation:authCardIn .45s cubic-bezier(.16,1,.3,1) both;
}
.apply-gate-icon {
  width:80px; height:80px; border-radius:24px;
  background:linear-gradient(135deg,#F5B301,#D89A00);
  display:flex; align-items:center; justify-content:center;
  font-size:34px; color:#fff; margin:0 auto 22px;
  box-shadow:0 12px 32px rgba(245,158,11,.4);
}
.apply-gate-card h2 {
  font-size:22px; font-weight:900; color:#111827; margin:0 0 10px;
}
.apply-gate-card p {
  font-size:14px; color:#6B7280; line-height:1.65; margin:0 0 30px;
}
.apply-gate-job {
  display:flex; align-items:center; gap:12px;
  background:#EEF3FC; border-radius:14px;
  padding:14px 18px; margin-bottom:28px; text-align:left;
}
.apply-gate-job-icon {
  width:40px; height:40px; border-radius:10px;
  background:linear-gradient(135deg,#0B3D91,#1479BE);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:16px; flex-shrink:0;
}
.apply-gate-job-info strong { display:block; font-size:14px; color:#111827; font-weight:800; }
.apply-gate-job-info span { font-size:12px; color:#6B7280; }
.apply-gate-btns { display:flex; flex-direction:column; gap:12px; }
.apply-gate-btn-login {
  display:flex; align-items:center; justify-content:center; gap:9px;
  padding:14px 24px; border-radius:13px;
  background:linear-gradient(135deg,#0B3D91,#1479BE);
  color:#fff; font-size:14px; font-weight:800;
  text-decoration:none; font-family:'Inter',sans-serif;
  box-shadow:0 8px 24px rgba(29,78,216,.35);
  transition:transform .15s,box-shadow .15s;
}
.apply-gate-btn-login:hover { transform:translateY(-1px); box-shadow:0 12px 32px rgba(29,78,216,.45); color:#fff; }
.apply-gate-btn-register {
  display:flex; align-items:center; justify-content:center; gap:9px;
  padding:14px 24px; border-radius:13px;
  background:#EEF3FC; border:2px solid #dde6fb;
  color:#0B3D91; font-size:14px; font-weight:800;
  text-decoration:none; font-family:'Inter',sans-serif;
  transition:background .2s,border-color .2s;
}
.apply-gate-btn-register:hover { background:#e0eaff; border-color:#8FC6E8; }
.apply-gate-divider {
  text-align:center; font-size:12px; color:#9CA3AF;
  margin:8px 0; font-weight:600;
}
@media (max-width:480px) {
  .apply-gate-card { padding:36px 22px; }
  .auth-card { padding:32px 22px; }
}

/* =====================================================
   MOBILE RESPONSIVE — ALL BREAKPOINTS
   ===================================================== */

/* ─── ≤1200px ─── */
@media (max-width:1200px) {
  .hp-countries-grid { grid-template-columns:repeat(3,1fr); }
  .hp-clients-grid   { grid-template-columns:repeat(3,1fr); }
  .hp-team-grid      { grid-template-columns:repeat(3,1fr); }
  .hp-cat-grid       { grid-template-columns:repeat(2,1fr); }
}

/* ─── ≤991px ─── */
@media (max-width:991px) {
  /* Auth split → stacked */
  .auth-left { display:none; }
  .auth-right { width:100%; background:#EEF3FC; }
  .auth-mobile-top { display:flex; }
  .auth-form-box { padding:36px 28px; border-radius:22px; }
  .auth-form-box-lg { max-width:100%; }
  .auth-row-2 { grid-template-columns:1fr; gap:0; }

  /* Homepage sections */
  .hp-countries-grid { grid-template-columns:repeat(2,1fr); }
  .hp-clients-grid   { grid-template-columns:repeat(2,1fr); }
  .hp-team-grid      { grid-template-columns:repeat(3,1fr); }
  .hp-about-points   { grid-template-columns:1fr; }
  .hp-process-row    { grid-template-columns:1fr 1fr; row-gap:32px; }
  .hp-process-row::before { display:none; }
  .hero-card-overlay3 { display:none; }

  /* User dashboard */
  .ud-stats-grid { grid-template-columns:repeat(2,1fr); }
  .ud-grid-2     { grid-template-columns:1fr; }
  .ud-welcome-img { display:none !important; }
}

/* ─── ≤767px ─── */
@media (max-width:767px) {
  .hp-countries-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .hp-clients-grid   { grid-template-columns:1fr 1fr; gap:10px; }
  .hp-cat-grid       { grid-template-columns:1fr 1fr; gap:12px; }
  .hp-team-grid      { grid-template-columns:repeat(3,1fr); gap:10px; }
  .hp-process-row    { grid-template-columns:1fr; }
  .hp-cta-inner h2   { font-size:24px; }
  .hp-cta-inner p    { font-size:15px; }
  .hero-stat-sep     { display:none; }
  .hp-ticker-inner span { font-size:12px; padding:0 12px; }
  .about-split-badge { font-size:11px; padding:10px 12px; }
}

/* ─── ≤576px ─── */
@media (max-width:576px) {
  .hp-countries-grid { grid-template-columns:1fr; }
  .hp-clients-grid   { grid-template-columns:1fr; }
  .hp-cat-grid       { grid-template-columns:1fr; }
  .hp-team-grid      { grid-template-columns:repeat(2,1fr); }
  .hp-cta-btns       { flex-direction:column; align-items:center; }
  .hp-cta-btns a     { width:100%; justify-content:center; }
  .auth-form-box     { padding:26px 18px; border-radius:18px; }
  .auth-form-head h2 { font-size:20px; }
  .auth-submit-btn   { padding:14px; font-size:14px; }
  .auth-input        { padding:12px 12px 12px 40px; font-size:13.5px; }
  .auth-form-box::before { left:20px; right:20px; }
  .hp-country-city   { display:none; }
  .hp-client-meta    { display:none; }
  .hp-process-row    { grid-template-columns:1fr; }
  /* User dashboard */
  .ud-stats-grid     { grid-template-columns:repeat(2,1fr); gap:10px; }
  .ud-stat-num       { font-size:22px; }
  .ud-welcome-banner { padding:20px; }
  .ud-welcome-name   { font-size:18px; }
  .ud-topbar         { padding:0 14px; height:56px; }
  .about-photo       { height:280px; }
}

/* ─── ≤420px ─── */
@media (max-width:420px) {
  .hp-countries-grid { grid-template-columns:1fr; }
  .hp-team-grid      { grid-template-columns:1fr 1fr; }
  .auth-stats        { flex-direction:column; gap:12px; }
  .auth-stat-divider { width:80%; height:1px; margin:4px 0; }
}

/* =====================================================
   DARK MODE — new section overrides
   ===================================================== */
[data-mdb-theme="dark"] .auth-right          { background:#0a101f; }
[data-mdb-theme="dark"] .auth-form-box       { background:#1F2937; box-shadow:0 24px 64px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.07); }
[data-mdb-theme="dark"] .auth-form-box::before { opacity:.5; }
[data-mdb-theme="dark"] .auth-form-head h2   { color:#F1F5F9; }
[data-mdb-theme="dark"] .auth-form-head p    { color:#6B7280; }
[data-mdb-theme="dark"] .auth-label          { color:#cbd5e1; }
[data-mdb-theme="dark"] .auth-input          { background:#111827; border-color:#2d3f5a; color:#F1F5F9; }
[data-mdb-theme="dark"] .auth-input:hover    { border-color:#3d5070; background:#111827; }
[data-mdb-theme="dark"] .auth-input:focus    { border-color:#1479BE; background:#111827; box-shadow:0 0 0 4px rgba(59,130,246,.18); }
[data-mdb-theme="dark"] .auth-input::placeholder { color:#3d5070; }
[data-mdb-theme="dark"] .auth-input-icon     { color:#3d5070; }
[data-mdb-theme="dark"] .auth-pass-bar       { background:#1F2937; }
[data-mdb-theme="dark"] .auth-pass-seg       { background:#2d3f5a; }
[data-mdb-theme="dark"] .auth-checkbox-custom { background:#111827; border-color:#3d5070; }
[data-mdb-theme="dark"] .auth-checkbox-label { color:#9CA3AF; }
[data-mdb-theme="dark"] .auth-or-divider::before { background:linear-gradient(90deg,transparent,#374151 20%,#374151 80%,transparent); }
[data-mdb-theme="dark"] .auth-or-divider span { background:#1F2937; color:#4B5563; }
[data-mdb-theme="dark"] .auth-alt-btn        { background:#111827; border-color:#2d3f5a; color:#cbd5e1; }
[data-mdb-theme="dark"] .auth-alt-btn:hover  { border-color:#1479BE; background:rgba(59,130,246,.08); color:#8FC6E8; }
[data-mdb-theme="dark"] .auth-legal          { color:#4B5563; }
[data-mdb-theme="dark"] .auth-legal a        { color:#6B7280; }
[data-mdb-theme="dark"] .auth-msg-err        { background:rgba(127,29,29,.3); border-color:rgba(220,38,38,.4); color:#fca5a5; }
[data-mdb-theme="dark"] .auth-msg-ok         { background:rgba(20,83,45,.3); border-color:rgba(22,163,74,.4); color:#86efac; }
[data-mdb-theme="dark"] .auth-hint           { color:#4B5563; }

/* Reduced motion */
@media (prefers-reduced-motion:reduce) {
  .auth-orb,.auth-dot,.auth-btn-shine,.auth-hiring-tag { animation:none; }
  .auth-form-box { animation:none; }
}
[data-mdb-theme="dark"] .hp-country-card:hover { border-color:var(--nexus-blue-lt); }
[data-mdb-theme="dark"] .hp-client-card:hover  { border-color:var(--nexus-blue-lt); }
[data-mdb-theme="dark"] .hp-team-card       { background:#1F2937; border-color:#374151; }
[data-mdb-theme="dark"] .hp-cat-card        { background:#1F2937; border-color:#374151; }
[data-mdb-theme="dark"] .hp-cat-list li     { color:rgba(255,255,255,.75); border-bottom-color:#374151; }
[data-mdb-theme="dark"] .hp-client-card     { background:#1F2937; border-color:#374151; }

/* =====================================================
   ABOUT IMAGE WRAP
   ===================================================== */
.about-img-wrap { position:relative; border-radius:20px; overflow:hidden; }
.about-photo { width:100%; height:420px; object-fit:cover; border-radius:20px; display:block; }
[data-mdb-theme="dark"] .about-photo { filter:brightness(.9); }

/* =====================================================
   TESTIMONIALS
   ===================================================== */
.testi-card { background:#fff; border:1px solid #E5E7EB; border-radius:18px; padding:24px; display:flex; flex-direction:column; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s; }
.testi-card:hover { transform:translateY(-6px); box-shadow:0 20px 48px rgba(0,0,0,.11); border-color:#C3E1F2; }
[data-mdb-theme="dark"] .testi-card { background:#1F2937; border-color:#374151; }
.testi-stars { color:#F5B301; font-size:16px; letter-spacing:2px; margin-bottom:12px; }
.testi-text { font-size:14px; color:#4B5563; line-height:1.75; flex:1; margin-bottom:16px; font-style:italic; }
[data-mdb-theme="dark"] .testi-text { color:rgba(255,255,255,.65); }
.testi-author .name { font-size:14px; font-weight:800; color:var(--nexus-dark); }
[data-mdb-theme="dark"] .testi-author .name { color:#F1F5F9; }
.testi-author .role { font-size:12px; color:#9CA3AF; margin-top:2px; }

/* =====================================================
   FAQ SECTION
   ===================================================== */
.faq-section { background:#fff; }
[data-mdb-theme="dark"] .faq-section { background:var(--nexus-dark); }
.nexus-accordion .accordion-item { border:1px solid #E5E7EB !important; border-radius:12px !important; margin-bottom:10px !important; overflow:hidden; }
[data-mdb-theme="dark"] .nexus-accordion .accordion-item { border-color:#374151 !important; background:#1F2937; }
.nexus-accordion .accordion-button { font-size:14.5px; font-weight:700; color:var(--nexus-dark); background:#fff; padding:16px 20px; }
[data-mdb-theme="dark"] .nexus-accordion .accordion-button { background:#1F2937; color:#F1F5F9; }
.nexus-accordion .accordion-button:not(.collapsed) { background:linear-gradient(135deg,#eff6ff,#dbeafe); color:var(--nexus-blue); box-shadow:none; }
[data-mdb-theme="dark"] .nexus-accordion .accordion-button:not(.collapsed) { background:rgba(11,61,145,.15); color:#8FC6E8; }
.nexus-accordion .accordion-button::after { filter:none; }
.nexus-accordion .accordion-body { font-size:14px; color:#6B7280; line-height:1.75; padding:0 20px 18px; }
[data-mdb-theme="dark"] .nexus-accordion .accordion-body { color:rgba(255,255,255,.6); }

/* =====================================================
   JOB CARDS (homepage + jobs page)
   ===================================================== */
.job-card { background:#fff; border:1px solid #E5E7EB; border-radius:16px; padding:22px; transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s; }
.job-card:hover { transform:translateY(-5px); box-shadow:0 16px 40px rgba(0,0,0,.1); border-color:var(--nexus-blue-lt); }
[data-mdb-theme="dark"] .job-card { background:#1F2937; border-color:#374151; }
[data-mdb-theme="dark"] .job-card:hover { border-color:var(--nexus-blue-lt); }
.job-flag { font-size:20px; margin-right:6px; }
.job-title { font-size:16px; font-weight:800; color:var(--nexus-dark); line-height:1.3; }
[data-mdb-theme="dark"] .job-title { color:#F1F5F9; }
.job-meta { font-size:13px; color:#6B7280; }
.job-salary { font-size:13px; font-weight:700; color:#059669; }

/* =====================================================
   ADMIN — stat-box, admin-topbar improvements
   ===================================================== */
.stat-box { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:20px; margin-bottom:20px; }
[data-mdb-theme="dark"] .stat-box { background:#1F2937; border-color:#374151; }

/* =====================================================
   USER DASHBOARD TOPBAR + CARD IMPROVEMENTS
   ===================================================== */
.ud-topbar { display:flex; align-items:center; justify-content:space-between; padding:0 24px; height:64px; background:#fff; border-bottom:1px solid #E5E7EB; position:sticky; top:0; z-index:50; gap:12px; }
[data-mdb-theme="dark"] .ud-topbar { background:#1F2937; border-bottom-color:#374151; }
.ud-topbar-title { font-size:16px; font-weight:800; color:var(--nexus-dark); flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
[data-mdb-theme="dark"] .ud-topbar-title { color:#F1F5F9; }
.ud-topbar-right { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.ud-topbar-btn { width:36px; height:36px; border-radius:10px; background:#F1F5F9; color:#6B7280; display:flex; align-items:center; justify-content:center; font-size:15px; text-decoration:none; transition:background .2s,color .2s; border:none; }
.ud-topbar-btn:hover { background:var(--nexus-blue-lt); color:#fff; }
.ud-topbar-logout:hover { background:#ef4444; color:#fff; }
[data-mdb-theme="dark"] .ud-topbar-btn { background:#374151; color:#cbd5e1; }
.ud-topbar-avatar { width:34px; height:34px; border-radius:50%; object-fit:cover; border:2px solid var(--nexus-blue-lt); }
.ud-topbar-initial { width:34px; height:34px; border-radius:50%; background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); color:#fff; font-size:13px; font-weight:800; display:flex; align-items:center; justify-content:center; text-decoration:none; }

.ud-card { background:#fff; border:1px solid #E5E7EB; border-radius:16px; padding:20px; margin-bottom:20px; }
[data-mdb-theme="dark"] .ud-card { background:#1F2937; border-color:#374151; }
.ud-card-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.ud-card-head h6 { font-size:15px; font-weight:800; color:var(--nexus-dark); margin:0; }
[data-mdb-theme="dark"] .ud-card-head h6 { color:#F1F5F9; }
.ud-card-head a { font-size:13px; color:var(--nexus-blue-lt); text-decoration:none; font-weight:600; }
.ud-app-item { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid #F1F5F9; }
.ud-app-item:last-child { border-bottom:none; }
[data-mdb-theme="dark"] .ud-app-item { border-bottom-color:#374151; }
.ud-app-icon { width:38px; height:38px; border-radius:10px; background:rgba(11,61,145,.1); color:var(--nexus-blue-lt); display:flex; align-items:center; justify-content:center; font-size:15px; flex-shrink:0; }
.ud-app-info { flex:1; min-width:0; }
.ud-app-title { font-size:13.5px; font-weight:700; color:var(--nexus-dark); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
[data-mdb-theme="dark"] .ud-app-title { color:#F1F5F9; }
.ud-app-meta { font-size:11.5px; color:#9CA3AF; margin-top:2px; }
.ud-btn-xs { display:inline-flex; align-items:center; padding:4px 12px; border-radius:7px; font-size:12px; font-weight:700; background:#eff6ff; color:var(--nexus-blue-lt); text-decoration:none; white-space:nowrap; transition:background .2s; }
.ud-btn-xs:hover { background:var(--nexus-blue-lt); color:#fff; }
.ud-empty { text-align:center; padding:30px 0; }
.ud-empty i { font-size:32px; color:#cbd5e1; display:block; margin-bottom:10px; }
.ud-empty p { font-size:14px; color:#9CA3AF; margin-bottom:16px; }
.ud-btn-primary { display:inline-flex; align-items:center; gap:7px; padding:9px 20px; border-radius:10px; font-size:14px; font-weight:700; background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); color:#fff; text-decoration:none; transition:opacity .2s,transform .15s; }
.ud-btn-primary:hover { opacity:.9; transform:translateY(-1px); color:#fff; }
.ud-alert { padding:12px 16px; border-radius:10px; font-size:13.5px; font-weight:600; margin-bottom:20px; }
.ud-alert-ok { background:#f0fdf4; border:1px solid #bbf7d0; color:#15803d; }
.ud-profile-nudge { background:linear-gradient(135deg,#eff6ff,#f0fdf4); border-color:#C3E1F2 !important; }
.ud-nudge-icon { width:52px; height:52px; border-radius:50%; background:linear-gradient(135deg,var(--nexus-blue-lt),var(--nexus-blue)); color:#fff; display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0; }
[data-mdb-theme="dark"] .ud-profile-nudge { background:rgba(11,61,145,.1); border-color:rgba(11,61,145,.3) !important; }

/* Welcome banner */
.ud-welcome-banner { background:linear-gradient(135deg,#0B3D91,#0E6BA8); border-radius:16px; padding:28px; margin-bottom:20px; display:flex; align-items:center; justify-content:space-between; gap:20px; overflow:hidden; position:relative; }
.ud-welcome-sub { font-size:13px; color:rgba(255,255,255,.7); margin-bottom:6px; }
.ud-welcome-name { font-size:22px; font-weight:900; color:#fff; margin:0 0 6px; }
.ud-welcome-p { font-size:14px; color:rgba(255,255,255,.65); margin:0; }
.ud-welcome-img img { height:130px; width:auto; border-radius:12px; object-fit:cover; opacity:.85; }
.ud-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:20px; }
.ud-stat-card { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:18px; display:flex; flex-direction:column; align-items:flex-start; text-decoration:none; transition:transform .28s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s; }
.ud-stat-card:hover { transform:translateY(-4px); box-shadow:0 12px 30px rgba(0,0,0,.1); border-color:#C3E1F2; }
[data-mdb-theme="dark"] .ud-stat-card { background:#1F2937; border-color:#374151; }
.ud-stat-icon { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:18px; margin-bottom:12px; }
.ud-stat-num { font-size:26px; font-weight:900; color:var(--nexus-dark); line-height:1; }
[data-mdb-theme="dark"] .ud-stat-num { color:#F1F5F9; }
.ud-stat-label { font-size:12px; color:#9CA3AF; margin-top:4px; font-weight:600; }
.ud-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:20px; }

/* Status pills */
.status-pill { display:inline-flex; align-items:center; padding:3px 10px; border-radius:50px; font-size:11px; font-weight:700; white-space:nowrap; }
.pill-new       { background:#dbeafe; color:#1e40af; }
.pill-short     { background:#d1fae5; color:#065f46; }
.pill-interview { background:#fef3c7; color:#92400e; }
.pill-selected  { background:#bbf7d0; color:#14532d; }
.pill-rejected  { background:#fee2e2; color:#991b1b; }
[data-mdb-theme="dark"] .pill-new       { background:#0B3D9133; color:#8FC6E8; }
[data-mdb-theme="dark"] .pill-short     { background:#14532d33; color:#4ade80; }
[data-mdb-theme="dark"] .pill-interview { background:#78350f33; color:#fcd34d; }
[data-mdb-theme="dark"] .pill-selected  { background:#14532d44; color:#86efac; }
[data-mdb-theme="dark"] .pill-rejected  { background:#7f1d1d33; color:#f87171; }

/* =====================================================
   TOUCH / INTERACTION HELPERS
   ===================================================== */
/* Remove default tap highlight on mobile */
a, button, [role="button"] { -webkit-tap-highlight-color: transparent; }

/* Touch ripple */
@keyframes touchRipple {
  0%   { opacity:.5; transform:scale(0); }
  100% { opacity:0;  transform:scale(2); }
}

/* Lazy-load image fade-in */
img[loading="lazy"] { opacity:0; transition:opacity .4s ease; }
img[loading="lazy"].loaded,
img[loading="lazy"]:not([data-src]) { opacity:1; }

/* Ensure images never overflow containers */
img { max-width:100%; height:auto; }

/* =====================================================
   FOOTER RESPONSIVE
   ===================================================== */
@media (max-width:576px) {
  .footer-newsletter { padding:40px 0; }
  .footer-newsletter h4 { font-size:20px; }
  .newsletter-form { flex-direction:column; gap:10px; }
  .newsletter-form input,
  .newsletter-form button { width:100%; border-radius:10px !important; }
  .nexus-footer .row > div { text-align:center; }
  .footer-social { justify-content:center; }
  .footer-copy { font-size:11px; text-align:center; }
}

/* =====================================================
   HERO STATIC BANNER — .sh-*
   Single full-width static banner. No slider, no swiper,
   no arrows, no dots. Clean, fast, professional.
   ===================================================== */
.sh-hero {
  position: relative;
  width: 100%;
  height: 650px;
  min-height: 560px;
  background-size: cover;
  background-position: center 30%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  /* Offset navbar + bismillah + announcement bar */
  margin-top: calc(-1 * (var(--nav-h) + var(--bismillah-h) + var(--announce-h, 37px)));
  padding-top: calc(var(--nav-h) + var(--bismillah-h) + var(--announce-h, 37px));
}

/* Dark gradient overlay — stronger left, fades right for depth */
.sh-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(
    105deg,
    rgba(6,13,31,.92) 0%,
    rgba(10,20,50,.82) 45%,
    rgba(7,16,35,.55) 75%,
    rgba(4,10,22,.35) 100%
  );
  z-index: 1;
}

/* Content container — left-aligned */
.sh-content {
  position: relative;
  z-index: 2;
  max-width: 700px;
  padding-top: 20px;
}

/* Trust badge */
.sh-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: rgba(212,168,67,.14);
  border: 1px solid rgba(212,168,67,.4);
  color: rgba(212,168,67,.95);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  padding: 8px 20px;
  border-radius: 50px;
  margin-bottom: 22px;
  backdrop-filter: blur(8px);
}
.sh-badge-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: #F5B301; flex-shrink: 0;
  animation: shDotPulse 2s ease-in-out infinite;
}
@keyframes shDotPulse {
  0%  { box-shadow: 0 0 0 0 rgba(212,168,67,.6); }
  60% { box-shadow: 0 0 0 9px rgba(212,168,67,0); }
  100%{ box-shadow: 0 0 0 0 rgba(212,168,67,0); }
}

/* Main heading */
.sh-heading {
  font-size: clamp(2.2rem, 4.5vw, 3.8rem);
  font-weight: 900;
  color: #ffffff;
  line-height: 1.1;
  letter-spacing: -1.5px;
  margin-bottom: 20px;
}
.sh-gold { color: #F5B301; }

/* Sub-heading */
.sh-sub {
  font-size: clamp(.95rem, 1.6vw, 1.15rem);
  color: rgba(255,255,255,.75);
  line-height: 1.75;
  max-width: 580px;
  margin-bottom: 34px;
}
.sh-sub strong { color: #fff; font-weight: 700; }

/* CTA buttons */
.sh-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 44px;
}
.sh-btn-primary {
  display: inline-flex; align-items: center; gap: 9px;
  background: linear-gradient(135deg, #F5B301, #F5B301);
  color: #111827; font-weight: 800; font-size: 15px;
  padding: 14px 32px; border-radius: 50px;
  text-decoration: none; border: none;
  box-shadow: 0 8px 32px rgba(212,168,67,.45);
  transition: transform .25s, box-shadow .25s;
}
.sh-btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 40px rgba(212,168,67,.6);
  color: #111827;
}
.sh-btn-outline {
  display: inline-flex; align-items: center; gap: 9px;
  background: rgba(255,255,255,.1);
  color: #fff; font-weight: 700; font-size: 15px;
  padding: 14px 32px; border-radius: 50px;
  border: 1.5px solid rgba(255,255,255,.35);
  text-decoration: none;
  backdrop-filter: blur(8px);
  transition: background .25s, border-color .25s, transform .25s;
}
.sh-btn-outline:hover {
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.6);
  transform: translateY(-3px);
  color: #fff;
}

/* Stats row */
.sh-stats {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(14px);
  border-radius: 16px;
  padding: 18px 28px;
}
.sh-stat { text-align: center; padding: 0 22px; }
.sh-num {
  display: block;
  font-size: 1.65rem; font-weight: 900;
  color: #F5B301; line-height: 1;
}
.sh-stat-label {
  display: block;
  font-size: 10.5px; color: rgba(255,255,255,.55);
  font-weight: 600; letter-spacing: .8px;
  text-transform: uppercase; margin-top: 5px;
}
.sh-stat-div {
  width: 1px; height: 40px;
  background: rgba(255,255,255,.15);
}

/* Responsive */
@media(max-width:991px) {
  .sh-hero { height: 580px; }
  .sh-content { max-width: 100%; }
}
@media(max-width:767px) {
  .sh-hero {
    height: auto;
    min-height: 520px;
    background-position: 70% center;
    padding-bottom: 48px;
  }
  .sh-overlay {
    background: linear-gradient(
      160deg,
      rgba(6,13,31,.93) 0%,
      rgba(10,20,50,.88) 60%,
      rgba(7,16,35,.78) 100%
    );
  }
  .sh-stats { padding: 14px 18px; }
  .sh-stat  { padding: 0 14px; }
  .sh-num   { font-size: 1.35rem; }
}
@media(max-width:480px) {
  .sh-heading { letter-spacing: -.8px; }
  .sh-btns { gap: 10px; }
  .sh-btn-primary,
  .sh-btn-outline { font-size: 14px; padding: 12px 22px; }
}

/* =====================================================
   WHY CHOOSE NEXUS — .wcn-*
   ===================================================== */
.wcn-section {
  position:relative; padding:90px 0; overflow:hidden; isolation:isolate;
}
.wcn-bg {
  position:absolute; inset:0;
  background-size:cover; background-position:center; background-attachment:fixed;
  z-index:0;
}
@media(max-width:991px){ .wcn-bg { background-attachment:scroll; } }
.wcn-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(135deg,rgba(6,13,31,.96) 0%,rgba(11,22,54,.93) 60%,rgba(7,16,30,.96) 100%);
}
.wcn-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(212,168,67,.12); border:1px solid rgba(212,168,67,.3);
  color:#F5B301; font-size:11px; font-weight:700; letter-spacing:1.4px;
  text-transform:uppercase; padding:7px 18px; border-radius:50px;
  margin-bottom:16px;
}
.wcn-badge-dot { width:7px; height:7px; border-radius:50%; background:#F5B301; flex-shrink:0; animation:ngtDotPulse 2s ease-in-out infinite; }
.wcn-title { font-size:clamp(1.9rem,3.5vw,3rem); font-weight:900; color:#fff; line-height:1.15; margin-bottom:12px; }
.wcn-gold { color:#F5B301; }
.wcn-sub { color:rgba(255,255,255,.55); font-size:16px; max-width:580px; margin-inline:auto; }
.wcn-grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:20px;
}
@media(max-width:1199px){ .wcn-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:767px) { .wcn-grid { grid-template-columns:repeat(2,1fr); gap:14px; } }
@media(max-width:480px) { .wcn-grid { grid-template-columns:1fr; } }
.wcn-card {
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08);
  border-radius:18px; padding:26px 22px;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  display:flex; align-items:flex-start; gap:16px;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1), border-color .3s, box-shadow .35s;
}
.wcn-card:hover { transform:translateY(-6px); border-color:rgba(255,255,255,.18); box-shadow:0 20px 50px rgba(0,0,0,.4); }
.wcn-card-icon {
  width:48px; height:48px; border-radius:14px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:20px;
  box-shadow:0 8px 24px rgba(0,0,0,.3);
}
.wcn-card-title { font-size:15px; font-weight:800; color:#fff; margin:0 0 6px; }
.wcn-card-desc { font-size:12.5px; color:rgba(255,255,255,.5); line-height:1.65; margin:0; }

/* =====================================================
   GULF COUNTRIES — .gc-*  [Premium v2]
   ===================================================== */
.gc-section {
  position:relative; padding:100px 0 110px; overflow:hidden; isolation:isolate;
  background:linear-gradient(160deg,#04090f 0%,#060f22 45%,#091a3a 75%,#04090f 100%);
}
.gc-bg {
  position:absolute; inset:0; background-size:cover; background-position:center; z-index:0;
  opacity:.18;
}
.gc-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg,rgba(4,9,15,1) 0%,rgba(6,14,33,.82) 50%,rgba(4,9,15,1) 100%);
}
/* Decorative accent lines */
.gc-section::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px; z-index:3;
  background:linear-gradient(90deg,transparent,#F5B301 30%,#F5B301 50%,#F5B301 70%,transparent);
}
.gc-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(212,168,67,.1); border:1px solid rgba(212,168,67,.3);
  color:#F5B301; font-size:11px; font-weight:700; letter-spacing:1.6px;
  text-transform:uppercase; padding:8px 20px; border-radius:50px; margin-bottom:16px;
  backdrop-filter:blur(6px);
}
.gc-badge span { width:7px; height:7px; border-radius:50%; background:#F5B301; display:inline-block; animation:ngtDotPulse 2s ease-in-out infinite; }
.gc-title {
  font-size:clamp(2rem,3.5vw,3.2rem); font-weight:900; color:#fff;
  margin-bottom:12px; letter-spacing:-.5px;
}
.gc-gold { color:#F5B301; }
.gc-sub { color:rgba(255,255,255,.52); font-size:15.5px; max-width:580px; margin-inline:auto; line-height:1.7; }

/* Grid */
.gc-grid {
  display:grid; grid-template-columns:repeat(6,1fr); gap:18px;
  margin-top:16px;
}
@media(max-width:1199px){ .gc-grid { grid-template-columns:repeat(3,1fr); gap:16px; } }
@media(max-width:767px)  { .gc-grid { grid-template-columns:repeat(2,1fr); gap:14px; } }
@media(max-width:400px)  { .gc-grid { grid-template-columns:1fr; } }

/* Card */
.gc-card {
  position:relative;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px; overflow:hidden;
  display:flex; flex-direction:column;
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  transition:transform .38s cubic-bezier(.34,1.56,.64,1), border-color .3s, box-shadow .38s;
  cursor:pointer;
}
.gc-card:hover {
  transform:translateY(-12px) scale(1.02);
  border-color:rgba(212,168,67,.35);
  box-shadow:0 30px 70px rgba(0,0,0,.55), 0 0 0 1px rgba(212,168,67,.12);
}

/* Card top image area */
.gc-card-img-wrap {
  position:relative; height:110px;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.gc-card-overlay {
  position:absolute; inset:0;
  transition:opacity .3s;
}
.gc-card:hover .gc-card-overlay { opacity:.8; }

/* Shimmer line at card top */
.gc-card-img-wrap::after {
  content:''; position:absolute; bottom:0; left:10%; right:10%; height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
}

.gc-flag-big {
  font-size:4rem; position:relative; z-index:1;
  filter:drop-shadow(0 6px 20px rgba(0,0,0,.6));
  transition:transform .38s cubic-bezier(.34,1.56,.64,1);
  line-height:1;
}
.gc-card:hover .gc-flag-big { transform:scale(1.2) translateY(-4px); }

/* Status pulse dot */
.gc-status-dot {
  position:absolute; top:10px; right:12px; z-index:2;
  width:8px; height:8px; border-radius:50%; background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.5);
  animation:gcPulse 2.2s ease-in-out infinite;
}
.gc-status-dot.urgent { background:#ef4444; animation:gcPulse 1.4s ease-in-out infinite; }
.gc-status-dot.urgent { --gc-pulse-c:rgba(239,68,68,.5); }
@keyframes gcPulse {
  0%  { box-shadow:0 0 0 0 rgba(34,197,94,.55); }
  60% { box-shadow:0 0 0 8px rgba(34,197,94,0); }
  100%{ box-shadow:0 0 0 0 rgba(34,197,94,0); }
}

/* Card body */
.gc-card-body { padding:18px 18px 12px; flex:1; }
.gc-card-icon { font-size:13px; margin-bottom:5px; opacity:.7; }
.gc-card-name {
  font-size:16px; font-weight:900; color:#fff; margin:0 0 5px;
  letter-spacing:-.2px;
}
.gc-card-cities {
  font-size:11px; color:rgba(255,255,255,.42); margin:0 0 12px;
  line-height:1.5;
}
.gc-card-tag {
  display:inline-flex; align-items:center; gap:5px;
  font-size:9.5px; font-weight:800; letter-spacing:1px;
  text-transform:uppercase; padding:4px 11px; border-radius:50px; border:1px solid;
}

/* View Jobs CTA */
.gc-card-link {
  display:flex; align-items:center; justify-content:center; gap:7px;
  padding:12px 0; margin:8px 16px 16px;
  border-radius:12px; font-size:12.5px; font-weight:800;
  color:#F5B301;
  background:linear-gradient(135deg,rgba(212,168,67,.12),rgba(245,158,11,.08));
  border:1px solid rgba(212,168,67,.28);
  text-decoration:none;
  transition:background .25s, border-color .25s, transform .2s, box-shadow .25s;
  letter-spacing:.3px;
}
.gc-card-link:hover {
  background:linear-gradient(135deg,rgba(212,168,67,.3),rgba(245,158,11,.2));
  border-color:rgba(212,168,67,.6);
  color:#F5B301;
  transform:none;
  box-shadow:0 4px 18px rgba(212,168,67,.2);
}

/* =====================================================
   CONSTRUCTION / STATS — .cs-*  [Premium v2]
   ===================================================== */
.cs-section { position:relative; padding:110px 0 120px; overflow:hidden; isolation:isolate; }
.cs-bg {
  position:absolute; inset:0; background-size:cover; background-position:center top;
  background-attachment:fixed; z-index:0;
  transform:scale(1.05); /* slight zoom-in for depth */
}
@media(max-width:991px){ .cs-bg { background-attachment:scroll; transform:none; } }
.cs-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(
    105deg,
    rgba(4,9,20,.97) 0%,
    rgba(8,18,50,.93) 40%,
    rgba(6,14,32,.88) 65%,
    rgba(4,9,20,.75) 100%
  );
}
/* Diagonal accent stripe */
.cs-section::before {
  content:''; position:absolute; top:0; left:0; width:5px; height:100%; z-index:3;
  background:linear-gradient(180deg,#F5B301,#F5B301 50%,#F5B301);
}
.cs-badge {
  display:inline-flex; align-items:center; gap:9px;
  background:rgba(212,168,67,.12); border:1px solid rgba(212,168,67,.35);
  color:#F5B301; font-size:11px; font-weight:800; letter-spacing:1.4px;
  text-transform:uppercase; padding:8px 20px; border-radius:50px; margin-bottom:20px;
  backdrop-filter:blur(8px);
}
.cs-title {
  font-size:clamp(2rem,4vw,3.2rem); font-weight:900; color:#fff;
  line-height:1.12; margin-bottom:18px; letter-spacing:-.5px;
}
.cs-gold { color:#F5B301; }
.cs-desc { color:rgba(255,255,255,.65); font-size:15.5px; line-height:1.85; margin-bottom:28px; }

/* Feature checklist */
.cs-features { display:flex; flex-direction:column; gap:14px; margin-bottom:8px; }
.cs-feat {
  display:flex; align-items:center; gap:14px;
  color:rgba(255,255,255,.82); font-size:14.5px;
  padding:10px 16px;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07);
  border-radius:10px; backdrop-filter:blur(8px);
  transition:background .2s, border-color .2s;
}
.cs-feat:hover { background:rgba(255,255,255,.07); border-color:rgba(212,168,67,.2); }
.cs-feat i { color:#F5B301; font-size:17px; flex-shrink:0; }

/* Counter grid */
.cs-counters { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.cs-counter-card {
  position:relative; overflow:hidden;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
  border-radius:22px; padding:36px 20px 30px;
  text-align:center; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  transition:transform .38s cubic-bezier(.34,1.56,.64,1), box-shadow .38s, border-color .3s;
}
.cs-counter-card::before {
  content:''; position:absolute; inset:0; border-radius:22px;
  background:radial-gradient(circle at 50% 0%,rgba(212,168,67,.08),transparent 60%);
  pointer-events:none;
}
.cs-counter-card:hover {
  transform:translateY(-8px) scale(1.02);
  box-shadow:0 28px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(212,168,67,.2);
  border-color:rgba(212,168,67,.3);
}
.cs-counter-icon { font-size:32px; margin-bottom:12px; }
.cs-counter-num {
  font-size:2.8rem; font-weight:900; color:#fff; line-height:1;
  letter-spacing:-1px;
}
.cs-counter-label {
  font-size:11.5px; color:rgba(255,255,255,.45); font-weight:700;
  letter-spacing:1px; text-transform:uppercase; margin-top:8px;
}

/* =====================================================
   JOB CATEGORIES — .jc-*  [Premium v2]
   ===================================================== */
.jc-section {
  padding:100px 0 110px;
  background:linear-gradient(160deg,#040a1c 0%,#060d1f 35%,#081630 65%,#040a1c 100%);
  position:relative; overflow:hidden; isolation:isolate;
}
/* Subtle grid dot pattern */
.jc-section::before {
  content:'';
  position:absolute; inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:32px 32px;
  z-index:0; pointer-events:none;
}
.jc-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(212,168,67,.1); border:1px solid rgba(212,168,67,.3);
  color:#F5B301; font-size:11px; font-weight:700; letter-spacing:1.6px;
  text-transform:uppercase; padding:8px 20px; border-radius:50px; margin-bottom:16px;
  backdrop-filter:blur(6px); position:relative; z-index:1;
}
.jc-badge span { width:7px; height:7px; border-radius:50%; background:#F5B301; display:inline-block; animation:ngtDotPulse 2s ease-in-out infinite; }
.jc-title { font-size:clamp(2rem,3.5vw,3rem); font-weight:900; color:#fff; margin-bottom:12px; letter-spacing:-.4px; position:relative; z-index:1; }
.jc-gold { color:#F5B301; }
.jc-sub { color:rgba(255,255,255,.52); font-size:15.5px; max-width:580px; margin-inline:auto; line-height:1.7; position:relative; z-index:1; }
.jc-grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:22px;
  position:relative; z-index:1;
}
@media(max-width:1199px){ .jc-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:767px)  { .jc-grid { grid-template-columns:repeat(2,1fr); gap:16px; } }
@media(max-width:400px)  { .jc-grid { grid-template-columns:1fr; } }
/* Job category card — premium glassmorphism tile */
.jc-card {
  position:relative; overflow:hidden;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09);
  border-radius:24px; padding:34px 24px 26px;
  text-align:center;
  display:flex; flex-direction:column; align-items:center;
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  transition:transform .38s cubic-bezier(.34,1.56,.64,1), border-color .3s, box-shadow .38s;
}
.jc-card:hover {
  transform:translateY(-12px) scale(1.02);
  border-color:rgba(var(--jc-c1-rgb),.35);
  box-shadow:0 32px 72px rgba(0,0,0,.55);
}
/* Gradient shimmer top line */
.jc-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px; border-radius:24px 24px 0 0;
  background:linear-gradient(90deg,var(--jc-c1),var(--jc-c2));
  opacity:0; transition:opacity .35s;
}
.jc-card:hover::before { opacity:1; }
/* Radial glow */
.jc-card-glow {
  position:absolute; top:-40px; left:50%; transform:translateX(-50%);
  width:200px; height:200px; border-radius:50%;
  background:radial-gradient(circle,var(--jc-c1),transparent 70%);
  opacity:0; transition:opacity .45s; pointer-events:none; filter:blur(32px); z-index:0;
}
.jc-card:hover .jc-card-glow { opacity:.22; }
/* Icon circle */
.jc-card-icon {
  width:80px; height:80px; border-radius:50%;
  background:linear-gradient(135deg,var(--jc-c1),var(--jc-c2));
  display:flex; align-items:center; justify-content:center;
  margin:0 auto 20px; font-size:30px; color:#fff;
  box-shadow:0 10px 34px rgba(0,0,0,.45), 0 0 0 6px rgba(255,255,255,.05);
  position:relative; z-index:1;
  transition:transform .38s cubic-bezier(.34,1.56,.64,1), box-shadow .38s;
}
.jc-card:hover .jc-card-icon {
  transform:scale(1.12) translateY(-3px);
  box-shadow:0 18px 48px rgba(0,0,0,.55);
}
/* Placement count badge */
.jc-card-count {
  display:inline-flex; align-items:center; gap:5px;
  font-size:10px; font-weight:800; color:var(--jc-c2); letter-spacing:1px;
  text-transform:uppercase; margin-bottom:8px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  padding:4px 12px; border-radius:50px;
  position:relative; z-index:1;
}
.jc-card-title { font-size:17px; font-weight:900; color:#fff; margin:0 0 8px; position:relative; z-index:1; letter-spacing:-.2px; }
.jc-card-roles { font-size:12.5px; color:rgba(255,255,255,.42); line-height:1.7; margin-bottom:20px; flex:1; position:relative; z-index:1; }
/* CTA button */
.jc-card-btn {
  display:inline-flex; align-items:center; gap:7px;
  background:linear-gradient(135deg,rgba(var(--jc-c1-rgb),.15),rgba(var(--jc-c2-rgb),.08));
  border:1px solid rgba(255,255,255,.14);
  color:#fff; font-size:12.5px; font-weight:800;
  padding:10px 24px; border-radius:50px; text-decoration:none;
  transition:background .25s, border-color .25s, transform .2s, box-shadow .25s;
  position:relative; z-index:1; letter-spacing:.3px;
}
.jc-card-btn:hover {
  background:linear-gradient(135deg,var(--jc-c1),var(--jc-c2));
  border-color:transparent; color:#fff;
  transform:translateY(-2px);
  box-shadow:0 8px 28px rgba(0,0,0,.4);
}

/* =====================================================
   VISA / PROCESS TIMELINE — .pv-*
   ===================================================== */
.pv-section { position:relative; padding:100px 0; overflow:hidden; isolation:isolate; }
.pv-bg { position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.pv-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(135deg,rgba(6,13,31,.97) 0%,rgba(11,22,54,.95) 50%,rgba(6,13,31,.97) 100%); }
.pv-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(212,168,67,.1); border:1px solid rgba(212,168,67,.28);
  color:#F5B301; font-size:11px; font-weight:700; letter-spacing:1.4px;
  text-transform:uppercase; padding:7px 18px; border-radius:50px; margin-bottom:14px;
}
.pv-badge span { width:7px; height:7px; border-radius:50%; background:#F5B301; display:inline-block; animation:ngtDotPulse 2s ease-in-out infinite; }
.pv-title { font-size:clamp(1.8rem,3vw,2.8rem); font-weight:900; color:#fff; margin-bottom:10px; }
.pv-gold { color:#F5B301; }
.pv-sub { color:rgba(255,255,255,.52); font-size:15px; max-width:560px; margin-inline:auto; }
.pv-timeline {
  display:grid; grid-template-columns:repeat(6,1fr); gap:0;
  position:relative; margin-top:20px;
}
@media(max-width:1099px){ .pv-timeline { grid-template-columns:repeat(3,1fr); gap:0; } }
@media(max-width:575px) { .pv-timeline { grid-template-columns:repeat(2,1fr); } }
.pv-step {
  position:relative; text-align:center; padding:0 12px 0;
  display:flex; flex-direction:column; align-items:center;
}
/* Connector line between steps */
.pv-step:not(:last-child) .pv-step-line {
  position:absolute; top:36px; left:calc(50% + 36px);
  width:calc(100% - 72px); height:2px;
  background:linear-gradient(90deg,rgba(212,168,67,.5),rgba(212,168,67,.15));
  z-index:0;
}
@media(max-width:1099px){ .pv-step:nth-child(3) .pv-step-line, .pv-step:nth-child(6) .pv-step-line { display:none; } }
@media(max-width:575px) { .pv-step:nth-child(2n) .pv-step-line { display:none; } }
.pv-step-icon {
  width:72px; height:72px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:26px; color:#fff; position:relative; z-index:1;
  box-shadow:0 8px 28px rgba(0,0,0,.4);
  margin-bottom:8px;
  transition:transform .35s, box-shadow .35s;
}
.pv-step:hover .pv-step-icon { transform:scale(1.1); box-shadow:0 14px 40px rgba(0,0,0,.5); }
.pv-step-num {
  position:absolute; top:-6px; right:calc(50% - 42px);
  width:22px; height:22px; border-radius:50%;
  background:#F5B301; color:#111827; font-size:10px; font-weight:900;
  display:flex; align-items:center; justify-content:center;
  z-index:2;
}
.pv-step-title { font-size:15px; font-weight:800; color:#fff; margin:12px 0 8px; }
.pv-step-desc { font-size:12px; color:rgba(255,255,255,.45); line-height:1.6; }

/* =====================================================
   TECH / DIGITAL OFFICE — .td-*
   ===================================================== */
.td-section { position:relative; padding:100px 0; overflow:hidden; isolation:isolate; }
.td-bg { position:absolute; inset:0; background-size:cover; background-position:center; background-attachment:fixed; z-index:0; }
@media(max-width:991px){ .td-bg { background-attachment:scroll; } }
.td-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(135deg,rgba(6,13,31,.97) 0%,rgba(11,22,54,.94) 60%,rgba(11,30,70,.88) 100%); }
.td-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(11,61,145,.15); border:1px solid rgba(11,61,145,.35);
  color:#5CACDE; font-size:11px; font-weight:700; letter-spacing:1.2px;
  text-transform:uppercase; padding:8px 18px; border-radius:50px; margin-bottom:20px;
}
.td-title { font-size:clamp(1.8rem,3.5vw,3rem); font-weight:900; color:#fff; line-height:1.15; margin-bottom:18px; }
.td-gold { color:#F5B301; }
.td-desc { color:rgba(255,255,255,.6); font-size:15px; line-height:1.8; margin-bottom:24px; }
.td-features { display:flex; flex-direction:column; gap:12px; }
.td-feat {
  display:flex; align-items:center; gap:12px;
  color:rgba(255,255,255,.75); font-size:14px;
}
.td-feat i { color:#5CACDE; font-size:16px; flex-shrink:0; }
/* Fake browser card */
.td-ui-card {
  background:rgba(15,23,42,.85); border:1px solid rgba(255,255,255,.12);
  border-radius:16px; overflow:hidden;
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  box-shadow:0 32px 80px rgba(0,0,0,.5);
}
.td-ui-header {
  display:flex; align-items:center; gap:8px;
  background:rgba(255,255,255,.05); padding:12px 16px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.td-ui-dot { width:12px; height:12px; border-radius:50%; flex-shrink:0; }
.td-ui-title { font-size:12px; color:rgba(255,255,255,.4); font-weight:600; margin-left:4px; }
.td-ui-body { padding:8px 0; }
.td-ui-row {
  display:flex; align-items:center; gap:12px;
  padding:12px 18px;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:background .2s;
}
.td-ui-row:hover { background:rgba(255,255,255,.04); }
.td-ui-row:last-child { border-bottom:none; }
.td-ui-icon { width:36px; height:36px; border-radius:10px; background:rgba(255,255,255,.06); display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }
.td-ui-info { flex:1; }
.td-ui-status { font-size:12px; font-weight:700; line-height:1.3; }
.td-ui-role { font-size:11px; color:rgba(255,255,255,.4); margin-top:2px; }
.td-ui-time { font-size:10.5px; color:rgba(255,255,255,.3); white-space:nowrap; }

/* =====================================================
   TEAM SECTION — Compact profile grid (.tm-*)
   4 cards per row on desktop, 2 on tablet, 1 on mobile.
   ===================================================== */
.tm-section {
  padding: 90px 0 100px;
  background: #f8fafc;
}

/* Heading */
.tm-eyebrow {
  font-size: 12px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase;
  color: #ec4899;
  margin: 0 0 8px;
}
.tm-accent-line {
  width: 48px; height: 3px;
  background: linear-gradient(90deg, #ec4899, #f472b6);
  border-radius: 2px;
  margin: 0 auto 16px;
}
.tm-title {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 900; color: #111827;
  line-height: 1.15; margin: 0 0 12px;
  letter-spacing: -.5px;
}
.tm-sub {
  font-size: 14.5px; color: #6B7280;
  max-width: 560px; margin: 0 auto;
  line-height: 1.7;
}

/* Grid — 4 columns desktop, 2 tablet, 1 mobile */
.tm-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

/* Card */
.tm-card {
  position: relative;
  background: #fff;
  border-radius: 18px;
  border: 1.5px solid #e8edf5;
  box-shadow: 0 4px 18px rgba(15,23,42,.07);
  padding: 30px 22px 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  overflow: hidden;
  transition: transform .28s cubic-bezier(.34,1.56,.64,1),
              box-shadow .28s ease,
              border-color .28s;
}
.tm-card:hover {
  transform: translateY(-9px) scale(1.01);
  box-shadow: 0 22px 54px rgba(15,23,42,.14);
  border-color: #a5b4fc;
}

/* Top colour stripe */
.tm-card-stripe {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  border-radius: 18px 18px 0 0;
}

/* Circular avatar */
.tm-avatar {
  width: 88px; height: 88px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 16px;
  box-shadow: 0 6px 20px rgba(0,0,0,.15),
              0 0 0 4px #fff,
              0 0 0 6px rgba(0,0,0,.06);
  flex-shrink: 0;
  transition: transform .28s ease, box-shadow .28s ease;
}
.tm-card:hover .tm-avatar {
  transform: scale(1.08);
  box-shadow: 0 10px 30px rgba(0,0,0,.2),
              0 0 0 4px #fff,
              0 0 0 7px rgba(99,102,241,.18);
}
.tm-avatar-init {
  font-size: 26px; font-weight: 900;
  color: #fff; letter-spacing: -.5px;
  user-select: none;
  text-shadow: 0 2px 6px rgba(0,0,0,.25);
}

/* Name */
.tm-name {
  font-size: 15px; font-weight: 800;
  color: #111827; margin: 0 0 5px;
  line-height: 1.25;
}

/* Role/designation */
.tm-role {
  font-size: 11.5px; font-weight: 600;
  color: #7c3aed;
  margin: 0 0 10px; line-height: 1.4;
}

/* Short description */
.tm-desc {
  font-size: 12px; color: #9CA3AF;
  line-height: 1.65; margin: 0 0 16px;
  flex: 1;
}

/* Footer — LinkedIn + Verified */
.tm-foot {
  display: flex; align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-top: 12px;
  border-top: 1px solid #F1F5F9;
}
.tm-li {
  width: 30px; height: 30px;
  border-radius: 8px;
  background: #eff6ff;
  border: 1px solid #C3E1F2;
  color: #0B3D91; font-size: 13px;
  display: flex; align-items: center; justify-content: center;
  text-decoration: none;
  transition: background .2s, color .2s, transform .2s;
}
.tm-li:hover { background: #0B3D91; color: #fff; transform: scale(1.12); }
.tm-verified {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 700;
  color: #6B7280;
}
.tm-verified i { color: #22c55e; font-size: 11px; }

/* Responsive grid breakpoints */
@media(max-width:1199px) { .tm-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; } }
@media(max-width:991px)  { .tm-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; } }
@media(max-width:575px)  { .tm-grid { grid-template-columns: 1fr; gap: 16px; } }

/* =====================================================
   PERFORMANCE — reduce motion for accessibility
   ===================================================== */
@media (prefers-reduced-motion: reduce) {
  .hero-orb-1,.hero-orb-2,
  .auth-orb,.auth-orb-1,.auth-orb-2,.auth-orb-3,
  .hp-ticker-inner,
  .auth-btn-shine,
  .auth-dot,.hero-badge-dot,
  .sh-badge-dot { animation:none !important; }
  * { transition-duration:.01ms !important; }
}

/* =====================================================
   LEGAL PAGES — Privacy Policy & Terms (.lp-*)
   ===================================================== */

/* ── Hero Banner ── */
.lp-hero {
  position:relative;
  padding:120px 0 90px;
  background-size:cover;
  background-position:center;
  overflow:hidden;
  isolation:isolate;
}
.lp-hero-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(135deg,rgba(4,9,20,.93) 0%,rgba(10,20,55,.88) 50%,rgba(4,9,20,.82) 100%);
}
.lp-hero::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:3px; z-index:3;
  background:linear-gradient(90deg,transparent,#F5B301 30%,#F5B301 50%,#F5B301 70%,transparent);
}
.lp-hero-content { text-align:center; position:relative; z-index:2; }
.lp-hero-badge {
  display:inline-flex; align-items:center;
  background:rgba(212,168,67,.12); border:1px solid rgba(212,168,67,.35);
  color:#F5B301; font-size:11px; font-weight:800; letter-spacing:1.4px;
  text-transform:uppercase; padding:8px 22px; border-radius:50px;
  margin-bottom:20px; backdrop-filter:blur(8px);
}
.lp-hero-title {
  font-size:clamp(2.2rem,5vw,4rem); font-weight:900; color:#fff;
  line-height:1.1; letter-spacing:-1.5px; margin-bottom:16px;
}
.lp-hero-gold { color:#F5B301; }
.lp-hero-sub {
  font-size:clamp(1rem,2vw,1.15rem); color:rgba(255,255,255,.65);
  max-width:580px; margin:0 auto; line-height:1.7;
}
@media(max-width:767px){
  .lp-hero { padding:90px 0 70px; }
  .lp-hero-title { letter-spacing:-.5px; }
}

/* ── Meta bar ── */
.lp-meta-bar {
  background:linear-gradient(90deg,#111827,#1F2937,#111827);
  border-bottom:1px solid rgba(255,255,255,.07);
  padding:12px 0;
}
.lp-meta-row {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center;
  gap:24px; font-size:12px; color:rgba(255,255,255,.5); font-weight:600;
  letter-spacing:.3px;
}
.lp-meta-row i { color:rgba(212,168,67,.7); }

/* ── Body layout ── */
.lp-body { background:var(--nexus-light); }
[data-mdb-theme="dark"] .lp-body { background:var(--nexus-dark2); }

/* ── TOC Sidebar ── */
.lp-toc {
  position:sticky; top:calc(var(--nav-h) + var(--bismillah-h) + var(--announce-h,37px) + 24px);
  background:#fff; border:1px solid var(--nexus-border);
  border-radius:18px; overflow:hidden;
  box-shadow:0 4px 24px rgba(0,0,0,.07);
}
[data-mdb-theme="dark"] .lp-toc { background:#111827; border-color:rgba(255,255,255,.1); }
.lp-toc-title {
  padding:16px 20px; font-size:11px; font-weight:800;
  letter-spacing:1.2px; text-transform:uppercase;
  color:#6B7280; border-bottom:1px solid var(--nexus-border);
  background:var(--nexus-light2);
}
[data-mdb-theme="dark"] .lp-toc-title { background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.08); color:rgba(255,255,255,.35); }
.lp-toc nav { display:flex; flex-direction:column; padding:8px 0; max-height:calc(100vh - 200px); overflow-y:auto; }
.lp-toc-link {
  padding:9px 20px; font-size:12.5px; font-weight:600; color:#6B7280;
  text-decoration:none; border-left:3px solid transparent;
  transition:color .2s, border-color .2s, background .2s;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.lp-toc-link:hover { color:var(--nexus-blue-lt); background:rgba(11,61,145,.05); border-left-color:rgba(11,61,145,.3); }
.lp-toc-link.active { color:#0E6BA8; border-left-color:#0E6BA8; background:rgba(11,61,145,.06); font-weight:700; }
[data-mdb-theme="dark"] .lp-toc-link { color:rgba(255,255,255,.45); }
[data-mdb-theme="dark"] .lp-toc-link:hover { color:#5CACDE; background:rgba(96,165,250,.08); }
[data-mdb-theme="dark"] .lp-toc-link.active { color:#5CACDE; border-left-color:#5CACDE; background:rgba(96,165,250,.1); }

/* ── Content sections ── */
.lp-section {
  background:#fff; border:1px solid var(--nexus-border);
  border-radius:20px; padding:36px 40px; margin-bottom:24px;
  scroll-margin-top:140px;
  box-shadow:0 2px 16px rgba(0,0,0,.05);
  transition:box-shadow .3s;
}
.lp-section:hover { box-shadow:0 8px 32px rgba(0,0,0,.1); }
[data-mdb-theme="dark"] .lp-section { background:#111827; border-color:rgba(255,255,255,.09); }
@media(max-width:767px){ .lp-section { padding:28px 22px; } }

.lp-section-icon {
  width:52px; height:52px; border-radius:14px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-size:22px; color:#fff; margin-bottom:18px;
  box-shadow:0 8px 24px rgba(0,0,0,.2);
}
.lp-section-title {
  font-size:clamp(1.2rem,2.5vw,1.6rem); font-weight:800;
  color:var(--nexus-dark); margin-bottom:16px; line-height:1.3;
  letter-spacing:-.3px;
}
[data-mdb-theme="dark"] .lp-section-title { color:#F1F5F9; }
.lp-section p { color:#4B5563; line-height:1.85; margin-bottom:14px; font-size:15px; }
[data-mdb-theme="dark"] .lp-section p { color:rgba(255,255,255,.6); }
.lp-section a { color:#0E6BA8; font-weight:600; }
.lp-section a:hover { color:#0B3D91; text-decoration:underline; }
[data-mdb-theme="dark"] .lp-section a { color:#5CACDE; }

/* ── Lists ── */
.lp-list { padding-left:0; list-style:none; margin:16px 0; display:flex; flex-direction:column; gap:10px; }
.lp-list li { padding-left:20px; position:relative; color:#4B5563; font-size:14.5px; line-height:1.75; }
[data-mdb-theme="dark"] .lp-list li { color:rgba(255,255,255,.6); }
.lp-list li::before { content:'•'; position:absolute; left:0; color:#0E6BA8; font-weight:900; }
.lp-list-check li::before { content:'\f00c'; font-family:'Font Awesome 6 Free'; font-weight:900; font-size:11px; color:#16a34a; top:4px; }

/* ── Callout boxes ── */
.lp-callout {
  display:flex; align-items:flex-start; gap:14px;
  padding:18px 22px; border-radius:14px; font-size:14px; line-height:1.75;
  margin:20px 0;
}
.lp-callout i { font-size:18px; flex-shrink:0; margin-top:2px; }
.lp-callout-blue  { background:rgba(11,61,145,.07); border:1px solid rgba(11,61,145,.2); color:#1e40af; }
.lp-callout-blue  i { color:#0E6BA8; }
.lp-callout-green { background:rgba(22,163,74,.07); border:1px solid rgba(22,163,74,.2); color:#15803d; }
.lp-callout-green i { color:#16a34a; }
.lp-callout-gold  { background:rgba(212,168,67,.08); border:1px solid rgba(212,168,67,.28); color:#92400e; }
.lp-callout-gold  i { color:#F5B301; }
.lp-callout-red   { background:rgba(220,38,38,.07); border:1px solid rgba(220,38,38,.2); color:#991b1b; font-weight:700; }
.lp-callout-red   i { color:#dc2626; }
[data-mdb-theme="dark"] .lp-callout-blue  { background:rgba(11,61,145,.12); border-color:rgba(11,61,145,.3); color:#8FC6E8; }
[data-mdb-theme="dark"] .lp-callout-green { background:rgba(22,163,74,.12); border-color:rgba(22,163,74,.3); color:#86efac; }
[data-mdb-theme="dark"] .lp-callout-gold  { background:rgba(212,168,67,.1); border-color:rgba(212,168,67,.3); color:#fcd34d; }
[data-mdb-theme="dark"] .lp-callout-red   { background:rgba(220,38,38,.12); border-color:rgba(220,38,38,.3); color:#fca5a5; }

/* ── Info cards grid ── */
.lp-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:20px 0; }
@media(max-width:991px){ .lp-cards-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:575px){ .lp-cards-grid { grid-template-columns:1fr; } }
.lp-info-card {
  background:var(--nexus-light2); border:1px solid var(--nexus-border);
  border-radius:14px; padding:22px 18px;
  transition:transform .3s, box-shadow .3s;
}
.lp-info-card:hover { transform:translateY(-4px); box-shadow:0 12px 32px rgba(0,0,0,.1); }
[data-mdb-theme="dark"] .lp-info-card { background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.09); }
.lp-info-card-icon {
  width:42px; height:42px; border-radius:10px;
  background:linear-gradient(135deg,#0E6BA8,#5CACDE);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:17px; margin-bottom:12px;
}
.lp-info-card h5 { font-size:14px; font-weight:800; color:var(--nexus-dark); margin-bottom:6px; }
[data-mdb-theme="dark"] .lp-info-card h5 { color:#F1F5F9; }
.lp-info-card p { font-size:12.5px; color:#6B7280; line-height:1.65; margin:0; }
[data-mdb-theme="dark"] .lp-info-card p { color:rgba(255,255,255,.45); }

/* ── Rights grid ── */
.lp-rights-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:20px 0; }
@media(max-width:991px){ .lp-rights-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px){ .lp-rights-grid { grid-template-columns:1fr; } }
.lp-right-item {
  display:flex; align-items:flex-start; gap:12px;
  background:var(--nexus-light2); border:1px solid var(--nexus-border);
  border-radius:12px; padding:16px; font-size:13px; line-height:1.6;
  transition:transform .25s, box-shadow .25s;
}
.lp-right-item:hover { transform:translateY(-3px); box-shadow:0 8px 24px rgba(0,0,0,.08); }
[data-mdb-theme="dark"] .lp-right-item { background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.09); color:rgba(255,255,255,.6); }
.lp-right-icon {
  width:36px; height:36px; border-radius:9px; flex-shrink:0;
  background:linear-gradient(135deg,#0B3D91,#0E6BA8);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:14px;
}

/* ── Table ── */
.lp-table-wrap { overflow-x:auto; margin:20px 0; border-radius:12px; border:1px solid var(--nexus-border); }
[data-mdb-theme="dark"] .lp-table-wrap { border-color:rgba(255,255,255,.1); }
.lp-table { width:100%; border-collapse:collapse; font-size:13.5px; }
.lp-table thead tr { background:linear-gradient(135deg,#0B3D91,#0E6BA8); }
.lp-table thead th { padding:14px 18px; color:#fff; font-weight:700; font-size:12px; letter-spacing:.5px; text-transform:uppercase; white-space:nowrap; }
.lp-table tbody tr { border-bottom:1px solid var(--nexus-border); transition:background .15s; }
[data-mdb-theme="dark"] .lp-table tbody tr { border-color:rgba(255,255,255,.06); }
.lp-table tbody tr:last-child { border-bottom:none; }
.lp-table tbody tr:hover { background:rgba(11,61,145,.04); }
[data-mdb-theme="dark"] .lp-table tbody tr:hover { background:rgba(255,255,255,.04); }
.lp-table tbody td { padding:13px 18px; color:#4B5563; line-height:1.6; }
[data-mdb-theme="dark"] .lp-table tbody td { color:rgba(255,255,255,.55); }

/* ── Contact grid ── */
.lp-contact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin:20px 0; }
@media(max-width:575px){ .lp-contact-grid { grid-template-columns:1fr; } }
.lp-contact-item {
  display:flex; align-items:flex-start; gap:14px;
  background:var(--nexus-light2); border:1px solid var(--nexus-border);
  border-radius:14px; padding:20px; font-size:13.5px; line-height:1.7;
  color:#4B5563;
}
[data-mdb-theme="dark"] .lp-contact-item { background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.09); color:rgba(255,255,255,.55); }
.lp-contact-item > i {
  width:40px; height:40px; border-radius:10px; flex-shrink:0;
  background:linear-gradient(135deg,#0B3D91,#0E6BA8);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:16px;
}

/* ── Rules grid (allowed/prohibited) ── */
.lp-rules-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:20px 0; }
@media(max-width:767px){ .lp-rules-grid { grid-template-columns:1fr; } }
.lp-rule { border-radius:14px; overflow:hidden; border:1px solid; }
.lp-rule.allowed { border-color:rgba(22,163,74,.25); }
.lp-rule.prohibited { border-color:rgba(220,38,38,.25); }
.lp-rule-header {
  padding:12px 18px; font-size:12px; font-weight:800;
  letter-spacing:.5px; text-transform:uppercase;
  display:flex; align-items:center; gap:8px;
}
.lp-rule.allowed .lp-rule-header { background:rgba(22,163,74,.1); color:#15803d; }
.lp-rule.allowed .lp-rule-header i { color:#16a34a; }
.lp-rule.prohibited .lp-rule-header { background:rgba(220,38,38,.08); color:#991b1b; }
.lp-rule.prohibited .lp-rule-header i { color:#dc2626; }
[data-mdb-theme="dark"] .lp-rule.allowed .lp-rule-header { background:rgba(22,163,74,.15); color:#86efac; }
[data-mdb-theme="dark"] .lp-rule.prohibited .lp-rule-header { background:rgba(220,38,38,.12); color:#fca5a5; }
.lp-rule ul { list-style:none; padding:14px 18px; margin:0; display:flex; flex-direction:column; gap:8px; background:#fff; }
[data-mdb-theme="dark"] .lp-rule ul { background:rgba(255,255,255,.03); }
.lp-rule ul li { font-size:13px; color:#4B5563; padding-left:18px; position:relative; line-height:1.55; }
[data-mdb-theme="dark"] .lp-rule ul li { color:rgba(255,255,255,.55); }
.lp-rule.allowed ul li::before { content:'\f00c'; font-family:'Font Awesome 6 Free'; font-weight:900; font-size:10px; color:#16a34a; position:absolute; left:0; top:4px; }
.lp-rule.prohibited ul li::before { content:'\f00d'; font-family:'Font Awesome 6 Free'; font-weight:900; font-size:10px; color:#dc2626; position:absolute; left:0; top:4px; }

/* ── FAQ accordion ── */
.lp-faq { display:flex; flex-direction:column; gap:10px; margin-top:16px; }
.lp-faq-item { border:1px solid var(--nexus-border); border-radius:14px; overflow:hidden; transition:box-shadow .25s; }
.lp-faq-item:hover { box-shadow:0 4px 20px rgba(0,0,0,.08); }
[data-mdb-theme="dark"] .lp-faq-item { border-color:rgba(255,255,255,.1); }
.lp-faq-q {
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:18px 22px; background:#fff; border:none; cursor:pointer;
  text-align:left; font-size:14.5px; font-weight:700; color:var(--nexus-dark);
  transition:background .2s, color .2s;
}
.lp-faq-q:hover { background:var(--nexus-light2); }
[data-mdb-theme="dark"] .lp-faq-q { background:#111827; color:#F1F5F9; }
[data-mdb-theme="dark"] .lp-faq-q:hover { background:rgba(255,255,255,.05); }
.lp-faq-q[aria-expanded="true"] { background:rgba(11,61,145,.06); color:#0B3D91; }
[data-mdb-theme="dark"] .lp-faq-q[aria-expanded="true"] { background:rgba(96,165,250,.1); color:#8FC6E8; }
.lp-faq-q i { flex-shrink:0; font-size:12px; transition:transform .3s; color:#9CA3AF; }
.lp-faq-q[aria-expanded="true"] i { transform:rotate(180deg); color:#0E6BA8; }
.lp-faq-a {
  max-height:0; overflow:hidden;
  transition:max-height .35s cubic-bezier(.4,0,.2,1), padding .35s;
  background:#fff;
}
[data-mdb-theme="dark"] .lp-faq-a { background:#111827; }
.lp-faq-a.open { max-height:400px; }
.lp-faq-a p { padding:0 22px 20px; margin:0; font-size:14px; color:#4B5563; line-height:1.8; }
[data-mdb-theme="dark"] .lp-faq-a p { color:rgba(255,255,255,.55); }
.lp-faq-item:has(.lp-faq-q[aria-expanded="true"]) .lp-faq-a { max-height:400px; }

/* ── Bottom CTA box ── */
.lp-cta-box {
  background:linear-gradient(135deg,#060d1f 0%,#0b1636 50%,#0f2050 100%);
  border:1px solid rgba(212,168,67,.2);
  border-radius:22px; padding:44px 40px; text-align:center;
  margin-top:8px; position:relative; overflow:hidden;
}
.lp-cta-box::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,transparent,#F5B301 30%,#F5B301 50%,#F5B301 70%,transparent);
}
.lp-cta-box h4 { font-size:clamp(1.3rem,2.5vw,1.8rem); font-weight:900; color:#fff; margin-bottom:10px; }
.lp-cta-box p  { color:rgba(255,255,255,.55); font-size:15px; margin:0; }
@media(max-width:575px){ .lp-cta-box { padding:32px 22px; } }

/* ── Active TOC highlighting via JS ── */
.lp-toc-link.active-scroll { color:#0E6BA8; border-left-color:#0E6BA8; }
[data-mdb-theme="dark"] .lp-toc-link.active-scroll { color:#5CACDE; border-left-color:#5CACDE; }

/* =====================================================
   FEATURED OVERSEAS VACANCIES SLIDER  (.oo-hp-*)
   Horizontal drag-scroll card strip on the homepage.
   ===================================================== */
.oo-hp-slider-section {
  padding:80px 0 90px;
  background:var(--nexus-light);
  border-top:1px solid var(--nexus-border);
  border-bottom:1px solid var(--nexus-border);
  overflow:hidden;
}
[data-mdb-theme="dark"] .oo-hp-slider-section {
  background:#080d1a;
  border-color:rgba(255,255,255,.06);
}

/* ── Slider controls row ── */
.oo-slider-controls { display:flex; gap:8px; }
.oo-slider-btn {
  width:40px; height:40px; border-radius:10px; border:1.5px solid var(--nexus-border);
  background:#fff; color:var(--nexus-gray); font-size:13px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s, border-color .2s, color .2s, transform .2s;
  flex-shrink:0;
}
.oo-slider-btn:hover { background:var(--nexus-blue-lt); color:#fff; border-color:var(--nexus-blue-lt); transform:scale(1.08); }
[data-mdb-theme="dark"] .oo-slider-btn { background:#111827; border-color:rgba(255,255,255,.1); color:#9CA3AF; }
[data-mdb-theme="dark"] .oo-slider-btn:hover { background:var(--nexus-blue-lt); border-color:var(--nexus-blue-lt); color:#fff; }

/* ── Track wrapper + scroll strip ── */
.oo-slider-track-wrap {
  overflow:hidden;
  cursor:grab;
  -webkit-user-select:none; user-select:none;
}
.oo-slider-track-wrap.dragging { cursor:grabbing; }
.oo-slider-track {
  display:flex;
  gap:20px;
  transition:transform .4s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}

/* ── Individual card ── */
.oo-hp-card {
  flex:0 0 300px;
  background:#fff;
  border:1px solid var(--nexus-border);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  transition:transform .3s, box-shadow .3s;
  display:flex; flex-direction:column;
}
.oo-hp-card:hover {
  transform:translateY(-6px);
  box-shadow:0 16px 48px rgba(11,61,145,.14),0 4px 16px rgba(0,0,0,.08);
}
[data-mdb-theme="dark"] .oo-hp-card { background:#111827; border-color:rgba(255,255,255,.08); }

/* ── Card image panel ── */
.oo-hp-card-top { position:relative; height:160px; overflow:hidden; flex-shrink:0; }
.oo-hp-img {
  width:100%; height:100%;
  background-size:cover; background-position:center;
  transition:transform .5s ease;
}
.oo-hp-card:hover .oo-hp-img { transform:scale(1.05); }
.oo-hp-img-grad {
  background:linear-gradient(135deg,#0b1636 0%,#0B3D91 50%,#0891b2 100%);
  display:flex; align-items:center; justify-content:center;
}
.oo-hp-flag-hero { font-size:52px; filter:drop-shadow(0 4px 12px rgba(0,0,0,.4)); }

/* Status / countdown / days-left badges on image */
.oo-hp-img-badge {
  position:absolute; top:10px; left:10px;
  font-size:10px; font-weight:700; padding:4px 10px; border-radius:50px;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.2); white-space:nowrap;
}
.oo-hp-ic {
  position:absolute; top:10px; right:10px;
  font-size:10px; font-weight:700; padding:4px 10px; border-radius:50px;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  white-space:nowrap;
}
.oo-hp-ic.oo-ic-soon   { background:rgba(245,179,1,.9);  color:#111827; }
.oo-hp-ic.oo-ic-today  { background:rgba(220,38,38,.9);  color:#fff; }
.oo-hp-ic.oo-ic-past   { background:rgba(75,85,99,.85);  color:#fff; }
.oo-hp-ic.oo-ic-future { background:rgba(11,61,145,.85); color:#fff; }
.oo-hp-days {
  position:absolute; bottom:10px; right:10px;
  font-size:10px; font-weight:700; padding:4px 10px; border-radius:50px;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  white-space:nowrap;
}
.oo-days-warning  { background:rgba(245,158,11,.85); color:#fff; }
.oo-days-critical { background:rgba(239,68,68,.85);  color:#fff; }

/* ── Card body ── */
.oo-hp-card-body { padding:16px 18px 18px; display:flex; flex-direction:column; flex:1; }
.oo-hp-country {
  display:flex; align-items:center; gap:6px; flex-wrap:wrap;
  font-size:12px; font-weight:600; color:var(--nexus-gray);
  margin-bottom:8px;
}
.oo-hp-flag-sm { font-size:16px; line-height:1; }
.oo-hp-cat {
  display:inline-block; background:rgba(11,61,145,.08);
  color:var(--nexus-blue-lt); border-radius:50px;
  padding:2px 9px; font-size:10px; font-weight:700;
  border:1px solid rgba(11,61,145,.15); margin-left:4px;
}
.oo-hp-title {
  font-size:14px; font-weight:800; color:var(--nexus-dark);
  line-height:1.4; margin-bottom:6px;
  display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
[data-mdb-theme="dark"] .oo-hp-title { color:#F1F5F9; }
.oo-hp-company { font-size:11px; color:var(--nexus-gray); margin-bottom:6px; }
.oo-hp-salary {
  font-size:13px; font-weight:700; color:var(--nexus-blue-lt);
  margin-bottom:8px; display:flex; align-items:center; gap:5px;
}

/* ── Perk chips ── */
.oo-hp-perks { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:12px; }
.oo-perk-chip {
  display:inline-flex; align-items:center; gap:4px;
  background:rgba(8,145,178,.07); color:var(--nexus-teal);
  border:1px solid rgba(8,145,178,.18); border-radius:50px;
  font-size:10px; font-weight:700; padding:3px 9px;
}
.oo-perk-chip.oo-perk-sm { font-size:10px; padding:2px 8px; }
[data-mdb-theme="dark"] .oo-perk-chip { background:rgba(8,145,178,.1); border-color:rgba(8,145,178,.25); }

/* ── Card footer ── */
.oo-hp-footer {
  display:flex; align-items:center; gap:8px; margin-top:auto; padding-top:12px;
  border-top:1px solid var(--nexus-border);
}
[data-mdb-theme="dark"] .oo-hp-footer { border-color:rgba(255,255,255,.07); }
.oo-hp-btn {
  flex:1; text-align:center;
  padding:9px 14px; border-radius:9px; font-size:12px; font-weight:700;
  background:linear-gradient(135deg,#0B3D91,#0E6BA8); color:#fff;
  text-decoration:none; transition:opacity .2s, transform .2s;
  white-space:nowrap;
}
.oo-hp-btn:hover { opacity:.88; transform:translateY(-1px); color:#fff; }
.oo-hp-wa {
  width:36px; height:36px; border-radius:9px; flex-shrink:0;
  background:#25D366; color:#fff; font-size:16px;
  display:flex; align-items:center; justify-content:center;
  text-decoration:none; transition:transform .2s, box-shadow .2s;
}
.oo-hp-wa:hover { transform:scale(1.1); box-shadow:0 4px 16px rgba(37,211,102,.4); color:#fff; }
.oo-hp-pdf {
  width:36px; height:36px; border-radius:9px; flex-shrink:0;
  background:rgba(239,68,68,.08); color:#dc2626;
  border:1px solid rgba(239,68,68,.18); font-size:16px;
  display:flex; align-items:center; justify-content:center;
  text-decoration:none; transition:background .2s, transform .2s;
}
.oo-hp-pdf:hover { background:rgba(239,68,68,.16); transform:scale(1.08); }

/* ── Dots navigation ── */
.oo-slider-dots { display:flex; gap:6px; justify-content:center; flex-wrap:wrap; }
.oo-slider-dot {
  width:8px; height:8px; border-radius:50%;
  background:var(--nexus-border); border:none; cursor:pointer; padding:0;
  transition:background .25s, transform .25s, width .25s;
}
.oo-slider-dot.active {
  background:var(--nexus-blue-lt); width:24px; border-radius:4px;
}
[data-mdb-theme="dark"] .oo-slider-dot { background:rgba(255,255,255,.15); }
[data-mdb-theme="dark"] .oo-slider-dot.active { background:var(--nexus-blue-lt); }

/* ── Responsive ── */
@media(max-width:991px) {
  .oo-hp-slider-section { padding:60px 0 70px; }
  .oo-hp-card { flex:0 0 270px; }
}
@media(max-width:575px) {
  .oo-hp-card { flex:0 0 calc(85vw); }
  .oo-slider-controls { display:none; }
}

