/* Premium homepage layer: presentation-only; existing IDs and data hooks stay intact. */
:root { --aj-blue:#0c3b78; --aj-blue-2:#176bca; --aj-gold:#dca849; --aj-ink:#10213f; }
body { background:#f7faff; }
body::before { content:""; position:fixed; z-index:-1; inset:0; pointer-events:none; background:radial-gradient(circle at 8% 16%,rgba(34,123,234,.10),transparent 25rem),radial-gradient(circle at 92% 32%,rgba(220,168,73,.10),transparent 23rem); }
nav { background:rgba(12,59,120,.78) !important; transition:background .3s ease, box-shadow .3s ease, height .3s ease !important; }
nav.ajn-scrolled { background:rgba(255,255,255,.92) !important; box-shadow:0 10px 30px rgba(16,33,63,.12) !important; }
nav.ajn-scrolled .nav-logo-text, nav.ajn-scrolled .nav-links a { color:var(--aj-ink) !important; }
nav.ajn-scrolled .nav-links a:hover { color:var(--aj-blue-2) !important; }
.trust-ribbon { padding-top:76px !important; background:linear-gradient(95deg,#0b356d,#155bae) !important; }
.hero-motion-section { position:relative; isolation:isolate; }
.hero-motion-section::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.55; pointer-events:none; background-image:radial-gradient(rgba(20,102,198,.18) 1px,transparent 1px); background-size:28px 28px; mask-image:linear-gradient(90deg,#000,transparent 72%); animation:aj-drift 24s linear infinite; }
.premium-eyebrow { position:relative; overflow:hidden; border:1px solid rgba(192,57,43,.16); animation:aj-enter .6s both; }
.premium-eyebrow::after { content:""; position:absolute; width:45%; inset:0 auto 0 -55%; transform:skewX(-25deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent); animation:aj-shimmer 5s 1.5s infinite; }
.premium-headline { max-width:650px; user-select:none; }
.premium-headline .interactive-word { display:inline-block; position:relative; isolation:isolate; opacity:0; margin-right:.23em; cursor:default; will-change:transform,opacity,filter; transform:translate3d(var(--word-x,0),var(--word-y,26px),0) rotate(var(--word-r,0deg)) scale(.92); animation:aj-word-fly .68s cubic-bezier(.2,.9,.24,1.18) forwards; }
.premium-headline .interactive-word::before { content:""; position:absolute; z-index:-1; inset:-.15em -.28em; border-radius:999px; opacity:0; transform:scale(.75); background:radial-gradient(ellipse,rgba(45,140,240,.24),rgba(220,168,73,.10) 55%,transparent 72%); filter:blur(7px); transition:opacity .22s ease,transform .25s ease; }
.premium-headline .interactive-word:hover,.premium-headline .interactive-word.is-tapped { z-index:1; transform:translate3d(0,-4px,0) rotate(-1.5deg) scale(1.1); filter:drop-shadow(0 9px 12px rgba(12,59,120,.2)); }
.premium-headline .interactive-word:hover::before,.premium-headline .interactive-word.is-tapped::before { opacity:1; transform:scale(1.2); }
.premium-headline .interactive-word.is-highlight { margin-right:0; color:var(--aj-blue-2); background:linear-gradient(100deg,#0c3b78,#2d8cf0,#dca849,#0c3b78); background-size:250% auto; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; animation-name:aj-word-fly,aj-shimmer-text; animation-duration:.68s,6s; animation-timing-function:cubic-bezier(.2,.9,.24,1.18),linear; animation-fill-mode:forwards,none; animation-iteration-count:1,infinite; }
.premium-headline .word-separator { display:inline-block; margin-right:.23em; opacity:0; animation:aj-separator .3s 1.02s forwards; }
.premium-hero-subtitle { opacity:0; filter:blur(5px); transform:translateY(10px); animation:aj-subtitle .6s 1.15s ease-out forwards; }
.hero-btns > a { opacity:0; transform:translateY(10px) scale(.95); animation:aj-cta .48s cubic-bezier(.2,.9,.24,1.16) forwards; }.hero-btns > a:nth-child(1) { animation-delay:1.45s; }.hero-btns > a:nth-child(2) { animation-delay:1.64s; }
.country-chip { display:flex; align-items:center; gap:5px; background:rgba(255,255,255,.9); border:1px solid rgba(12,59,120,.12); border-radius:999px; padding:7px 12px; font-size:13px; font-weight:600; color:var(--aj-ink); text-decoration:none; box-shadow:0 4px 12px rgba(16,33,63,.05); transition:transform .2s ease,box-shadow .2s ease; }
.country-chip:hover { transform:translateY(-2px); box-shadow:0 9px 18px rgba(16,33,63,.12); }
.premium-primary { background:linear-gradient(115deg,var(--aj-blue),var(--aj-blue-2)) !important; box-shadow:0 8px 20px rgba(23,107,202,.25) !important; }
.premium-primary span { transition:transform .2s ease; }.premium-primary:hover span { transform:translateX(4px); }
.vacancy-card { transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important; border:1px solid rgba(12,59,120,.1); }
.vacancy-card:hover { transform:translateY(-5px); box-shadow:0 18px 36px rgba(12,59,120,.13) !important; border-color:rgba(23,107,202,.35); }
.apply-wa, .btn-primary, .btn-secondary { transition:transform .2s ease,box-shadow .2s ease,background .2s ease !important; }.apply-wa:hover,.btn-primary:hover,.btn-secondary:hover { transform:translateY(-2px); }
.vacancy-toolbar input:focus,.vacancy-toolbar select:focus { outline:3px solid rgba(23,107,202,.17); border-color:var(--aj-blue-2); }
.type-section-heading { opacity:0; transform:translate3d(var(--heading-x,0),var(--heading-y,20px),0) scale(var(--heading-scale,1)); filter:blur(3px); transition:opacity .62s ease,transform .7s cubic-bezier(.2,.8,.2,1),filter .6s ease; }
.type-section-heading.typography-visible { opacity:1; transform:none; filter:blur(0); }
.aj-loader { position:fixed; z-index:1000; inset:0; display:grid; place-items:center; background:#0c3b78; color:#fff; transition:opacity .38s ease,visibility .38s ease; }.aj-loader.done { opacity:0; visibility:hidden; }.aj-loader b { display:block; font-family:Sora,sans-serif; letter-spacing:.04em; }.aj-loader i { display:block; width:42px; height:3px; margin:12px auto 0; background:var(--aj-gold); animation:aj-load .7s ease-in-out infinite alternate; }
@keyframes aj-word-fly { 0% { opacity:0; transform:translate3d(var(--word-x,0),var(--word-y,26px),0) rotate(var(--word-r,0deg)) scale(.92) } 72% { opacity:1; transform:translate3d(0,-4px,0) rotate(-.6deg) scale(1.025) } 100% { opacity:1; transform:translate3d(0,0,0) rotate(0) scale(1) } }
@keyframes aj-separator { to { opacity:.65; } } @keyframes aj-subtitle { to { opacity:1; filter:blur(0); transform:translateY(0) } } @keyframes aj-cta { 70% { opacity:1; transform:translateY(-2px) scale(1.02) } 100% { opacity:1; transform:none } }
@keyframes aj-enter { from { opacity:0; transform:translateY(10px) } to { opacity:1; transform:none } } @keyframes aj-shimmer { to { left:120% } } @keyframes aj-shimmer-text { to { background-position:250% center } } @keyframes aj-drift { to { background-position:100px 80px } } @keyframes aj-load { to { transform:scaleX(.4); opacity:.55 } }
@media (max-width:768px) { .trust-ribbon { padding-top:70px !important; gap:7px 18px !important; }.trust-ribbon > div { font-size:10px !important; }.hero-motion-section::before { animation:none; }.premium-headline .interactive-word { margin-right:.18em; }.country-chip { font-size:12px; padding:6px 10px; } }
@media (hover:none) { .premium-headline .interactive-word { cursor:pointer; }.premium-headline .interactive-word:hover { transform:translate3d(0,0,0) rotate(0) scale(1); filter:none; }.premium-headline .interactive-word:hover::before { opacity:0; transform:scale(.75); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; } .premium-headline .interactive-word,.premium-hero-subtitle,.hero-btns > a,.premium-headline .word-separator { opacity:1; filter:none; transform:none; } }

/* ── FEATURED JOBS: Premium vs Standard card tiers ──
   Standard = refined baseline chip styling shared by every card.
   Premium  = an elevated tier for job.featured === true (real data, not a fake label). */
.vbadge {
  border-radius: 999px !important; border: 1px solid transparent;
  font-weight: 700 !important; letter-spacing: 0.1px;
}
.vbadge-blue  { border-color: rgba(23,107,202,0.16); }
.vbadge-green { border-color: rgba(5,150,105,0.16); }
.vbadge-gold  { border-color: rgba(220,168,73,0.28); }
.vbadge-red   { border-color: rgba(192,57,43,0.16); }

.vacancy-card { position: relative; }
.vacancy-flag { border: 1px solid rgba(12,59,120,0.08); }
.vacancy-company { display: inline-flex; align-items: center; gap: 5px; }

.premium-badge {
  display: inline-flex; align-items: center; gap: 3px;
  background: linear-gradient(100deg, var(--aj-blue), var(--aj-blue-2) 55%, var(--aj-gold));
  background-size: 200% auto;
  color: #fff; font-size: 10px; font-weight: 800; padding: 3px 9px; border-radius: 999px;
  text-transform: uppercase; letter-spacing: 0.5px;
  animation: aj-shimmer-text 5s linear infinite;
  box-shadow: 0 3px 8px rgba(23,107,202,0.28);
}

.vacancy-card.is-premium {
  border: 1px solid rgba(220,168,73,0.5) !important;
  background: linear-gradient(180deg, rgba(220,168,73,0.06), #fff 90px);
  box-shadow: 0 10px 28px rgba(23,107,202,0.10);
}
.vacancy-card.is-premium::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--aj-blue), var(--aj-blue-2), var(--aj-gold));
  border-radius: 14px 14px 0 0;
}
.vacancy-card.is-premium:hover {
  box-shadow: 0 20px 44px rgba(23,107,202,0.18) !important;
  border-color: var(--aj-gold) !important;
}
.vacancy-card:not(.is-premium) .vacancy-top { background: #fbfcfe; }

@media (prefers-reduced-motion:reduce) { .premium-badge { animation: none; } }
