/* ============================================================
   Adauraa – style.css
   All custom styles for the Adauraa Coming Soon landing page
   ============================================================ */

/* ===== ROOT & RESET ===== */
:root {
  --bg-primary: #050816;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background-color: var(--bg-primary);
  font-family: 'Inter', sans-serif;
  color: #e2e8f0;
  overflow-x: hidden;
}



/* ===== SCROLL PROGRESS ===== */
#scroll-progress {
  position: fixed; top: 0; left: 0; height: 3px; z-index: 9998;
  background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
  width: 0%;
  transition: width 0.1s linear;
}

/* ===== MOUSE GLOW ===== */
#mouse-glow {
  position: fixed; width: 450px; height: 450px; border-radius: 50%;
  background: radial-gradient(circle, rgba(139, 92, 246, 0.1) 0%, transparent 70%);
  pointer-events: none;
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: opacity 0.3s;
}

/* ===== PARTICLES ===== */
#particle-canvas {
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
}

/* ===== BLOBS ===== */
.blob {
  position: absolute; border-radius: 50%;
  filter: blur(80px); opacity: 0.3; pointer-events: none;
}

/* ===== KEYFRAMES ===== */
@keyframes gradientShift {
  0%, 100% { background-position: 0% 50%; }
  50%       { background-position: 100% 50%; }
}
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-18px); }
}
@keyframes blob {
  0%, 100% { transform: translate(0, 0) scale(1); }
  33%       { transform: translate(30px, -50px) scale(1.1); }
  66%       { transform: translate(-20px, 20px) scale(0.9); }
}
@keyframes spinSlow     { to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes spinReverse  { to { transform: translate(-50%, -50%) rotate(-360deg); } }
@keyframes spinSlowFast { to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes iconFloat {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  25%       { transform: translateY(-12px) rotate(3deg); }
  75%       { transform: translateY(8px) rotate(-2deg); }
}
@keyframes glowPulse {
  0%, 100% { box-shadow: 0 0 15px rgba(139, 92, 246, 0.3); }
  50%       { box-shadow: 0 0 50px rgba(139, 92, 246, 0.8); }
}
@keyframes dotPulse {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.3; }
}

/* ===== GLASSMORPHISM ===== */
.glass {
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.glass-card {
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 1.25rem;
  transition: all 0.4s ease;
}
.glass-card:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(139, 92, 246, 0.5);
  transform: translateY(-6px);
  box-shadow: 0 20px 60px rgba(139, 92, 246, 0.2);
}

/* ===== GRADIENT TEXT ===== */
.gradient-text {
  background: linear-gradient(135deg, #60a5fa, #a78bfa, #f472b6);
  background-size: 200%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: gradientShift 6s ease infinite;
}
.gradient-text-blue {
  background: linear-gradient(135deg, #60a5fa, #818cf8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ===== GRADIENT BORDER CARD ===== */
.gradient-border { position: relative; }
.gradient-border::before {
  content: '';
  position: absolute; inset: 0;
  border-radius: inherit; padding: 1px;
  background: linear-gradient(135deg, #3b82f6, #8b5cf6, #ec4899);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0; transition: opacity 0.4s;
}
.gradient-border:hover::before { opacity: 1; }

/* ===== BUTTONS ===== */
.btn-primary {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  padding: 0.85rem 2rem;
  background: linear-gradient(135deg, #3b82f6, #7c3aed);
  color: white; font-weight: 600; font-size: 0.95rem;
  border-radius: 9999px; border: none; cursor: pointer;
  position: relative; overflow: hidden;
  transition: all 0.3s ease; text-decoration: none;
}
.btn-primary::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, #7c3aed, #ec4899);
  opacity: 0; transition: opacity 0.3s;
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 15px 40px rgba(124, 58, 237, 0.45); }
.btn-primary:hover::before { opacity: 1; }
.btn-primary span { position: relative; z-index: 1; }

.btn-ghost {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  padding: 0.85rem 2rem;
  background: transparent; color: white;
  font-weight: 600; font-size: 0.95rem;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  cursor: pointer; transition: all 0.3s ease; text-decoration: none;
}
.btn-ghost:hover {
  border-color: rgba(139, 92, 246, 0.8);
  background: rgba(139, 92, 246, 0.1);
  transform: translateY(-2px);
}

/* ===== NAVBAR ===== */
#navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  padding: 1.25rem 0; transition: all 0.4s ease;
}
#navbar.scrolled {
  background: rgba(5, 8, 22, 0.9);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  padding: 0.75rem 0;
}

/* ===== ORBIT ===== */
.orbit-ring {
  position: absolute; border-radius: 50%;
  border: 1px solid rgba(139, 92, 246, 0.2);
  top: 50%; left: 50%;
}
.orbit-dot {
  position: absolute; width: 8px; height: 8px;
  border-radius: 50%; top: -4px; left: 50%;
  transform: translateX(-50%);
}




/* ===== SCROLL REVEAL ===== */
.reveal        { opacity: 0; transform: translateY(40px);  transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-left   { opacity: 0; transform: translateX(-40px); transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal-left.visible  { opacity: 1; transform: translateX(0); }
.reveal-right  { opacity: 0; transform: translateX(40px);  transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal-right.visible { opacity: 1; transform: translateX(0); }

/* stagger delay helpers */
.d1 { transition-delay: 0.1s; }
.d2 { transition-delay: 0.2s; }
.d3 { transition-delay: 0.3s; }
.d4 { transition-delay: 0.4s; }
.d5 { transition-delay: 0.5s; }
.d6 { transition-delay: 0.6s; }

/* ===== SECTION GENERAL ===== */
section { position: relative; z-index: 2; }
.section-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(139, 92, 246, 0.3), transparent);
}

/* ===== JOB CARDS ===== */
.job-card {
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 1.5rem; padding: 2rem;
  transition: all 0.4s ease; position: relative; overflow: hidden;
  /* alignment: flex column so button always sits at card bottom */
  display: flex; flex-direction: column;
}
.job-card::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.06), rgba(139, 92, 246, 0.06));
  opacity: 0; transition: opacity 0.4s;
}
.job-card:hover {
  border-color: rgba(139, 92, 246, 0.5);
  transform: translateY(-8px);
  box-shadow: 0 25px 60px rgba(139, 92, 246, 0.2);
}
.job-card:hover::after { opacity: 1; }

/* description fills remaining space → salary rows stay level */
.job-card .job-desc   { flex: 1; min-height: 4.5rem; }
/* salary block + button pinned to bottom */
.job-card .job-bottom { margin-top: auto; }

/* ===== SERVICE CARDS ===== */
.service-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 1.25rem; padding: 1.5rem;
  transition: all 0.35s ease; position: relative; overflow: hidden;
}
.service-card::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.08), rgba(139, 92, 246, 0.08));
  opacity: 0; transition: opacity 0.35s; border-radius: inherit;
}
.service-card:hover {
  transform: translateY(-5px);
  border-color: rgba(139, 92, 246, 0.4);
  box-shadow: 0 15px 40px rgba(139, 92, 246, 0.15);
}
.service-card:hover::before { opacity: 1; }

/* ===== FEATURE ITEMS ===== */
.feature-item {
  display: flex; align-items: flex-start; gap: 0.75rem;
  padding: 0.85rem 1rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 0.75rem; transition: all 0.3s;
}
.feature-item:hover {
  background: rgba(139, 92, 246, 0.06);
  border-color: rgba(139, 92, 246, 0.3);
  transform: translateX(4px);
}

/* ===== INPUTS ===== */
.premium-input {
  width: 100%;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.75rem; padding: 0.9rem 1.25rem;
  color: white; font-family: 'Inter', sans-serif;
  font-size: 0.95rem; transition: all 0.3s; outline: none;
}
.premium-input::placeholder { color: rgba(255, 255, 255, 0.3); }
.premium-input:focus {
  border-color: rgba(139, 92, 246, 0.6);
  background: rgba(139, 92, 246, 0.05);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
}


/* ===== SCROLL-TO-TOP BUTTON ===== */
#scroll-top {
  position: fixed; bottom: 2rem; right: 2rem; z-index: 200;
  width: 48px; height: 48px;
  background: linear-gradient(135deg, #3b82f6, #7c3aed);
  border: none; border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; transform: scale(0); transition: all 0.3s;
  box-shadow: 0 8px 25px rgba(124, 58, 237, 0.4);
}
#scroll-top.show  { opacity: 1; transform: scale(1); }
#scroll-top:hover { transform: scale(1.1); box-shadow: 0 12px 35px rgba(124, 58, 237, 0.6); }

/* ===== BADGES ===== */
.coming-soon-badge {
  display: inline-flex; align-items: center; gap: 0.35rem;
  padding: 0.25rem 0.75rem;
  background: rgba(139, 92, 246, 0.15);
  border: 1px solid rgba(139, 92, 246, 0.4);
  border-radius: 9999px;
  font-size: 0.7rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.08em; color: #a78bfa;
}
.salary-badge {
  display: inline-flex; align-items: center; gap: 0.35rem;
  padding: 0.3rem 0.85rem;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(139, 92, 246, 0.2));
  border: 1px solid rgba(59, 130, 246, 0.35);
  border-radius: 9999px; font-size: 0.8rem; font-weight: 700; color: #93c5fd;
}

/* ===== SOCIAL ICONS ===== */
.social-icon {
  width: 42px; height: 42px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.625rem; color: rgba(255, 255, 255, 0.6);
  transition: all 0.3s; cursor: pointer; text-decoration: none;
}
.social-icon:hover {
  background: rgba(139, 92, 246, 0.15);
  border-color: rgba(139, 92, 246, 0.5);
  color: #a78bfa;
  transform: translateY(-3px);
}

/* ===== TOAST NOTIFICATION ===== */
#notification {
  position: fixed; bottom: 5rem; right: 2rem; z-index: 999;
  background: rgba(5, 8, 22, 0.96);
  border: 1px solid rgba(139, 92, 246, 0.4);
  border-radius: 1rem; padding: 1rem 1.5rem;
  backdrop-filter: blur(20px);
  transform: translateX(200%);
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  max-width: 300px;
}
#notification.show { transform: translateX(0); }

/* ===== MOBILE MENU ===== */
#mobile-menu { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; }
#mobile-menu.open { max-height: 500px; }

/* ===== ICON FLOAT ANIMATIONS ===== */
.icon-float   { animation: iconFloat 5s ease-in-out infinite; }
.icon-float-2 { animation: iconFloat 7s ease-in-out 1s infinite; }
.icon-float-3 { animation: iconFloat 6s ease-in-out 2s infinite; }

/* ===== SECTION BACKGROUND TINTS ===== */
.bg-tint-1 {
  background:
    radial-gradient(ellipse at 20% 50%, rgba(59, 130, 246, 0.05) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 50%, rgba(139, 92, 246, 0.05) 0%, transparent 60%);
}
.bg-tint-2 {
  background: radial-gradient(ellipse at 50% 0%, rgba(139, 92, 246, 0.07) 0%, transparent 60%);
}

/* ===== JS-GENERATED ELEMENT CLASSES ===== */

/* Focus tags (About section) */
.focus-tag {
  padding: 0.25rem 0.65rem;
  background: rgba(139, 92, 246, 0.1);
  border: 1px solid rgba(139, 92, 246, 0.25);
  border-radius: 9999px;
  font-size: 0.72rem;
  color: #a78bfa;
}

/* Service cards inner */
.service-card__inner  { position: relative; z-index: 1; }
.service-card__icon   { font-size: 1.85rem; margin-bottom: 0.85rem; }
.service-card__title  { font-size: 0.9rem; font-weight: 700; color: white; margin-bottom: 0.45rem; line-height: 1.3; }
.service-card__desc   { font-size: 0.74rem; color: rgba(255, 255, 255, 0.4); line-height: 1.6; margin-bottom: 0.85rem; }

/* Feature items inner */
.feature-item__icon  { font-size: 1.35rem; flex-shrink: 0; }
.feature-item__title { font-size: 0.88rem; font-weight: 600; color: white; margin-bottom: 0.15rem; }
.feature-item__sub   { font-size: 0.74rem; color: rgba(255, 255, 255, 0.4); }



/* ===== TOAST NOTIFICATION INNER ===== */
.notification__inner { display:flex; align-items:center; gap:0.75rem; }
.notification__icon  { width:36px; height:36px; border-radius:50%; background:linear-gradient(135deg,#3b82f6,#7c3aed); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.notification__title { font-weight:600; font-size:0.9rem; color:white; }
.notification__msg   { font-size:0.78rem; color:rgba(255,255,255,.5); margin-top:0.15rem; }

/* ===== NAVBAR ===== */
.nav-logo-icon { width:36px; height:36px; background:linear-gradient(135deg,#3b82f6,#7c3aed); border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:transform 0.3s; }
.nav-brand-name { font-family:'Sora',sans-serif; font-weight:800; font-size:1.35rem; background:linear-gradient(135deg,#60a5fa,#a78bfa); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.nav-btn { padding:0.6rem 1.25rem; font-size:0.85rem; }

/* ===== SECTION HEADERS ===== */
.section-header { margin-bottom:3.5rem; }
.section-title { font-family:'Sora',sans-serif; font-size:clamp(1.8rem,4vw,3rem); font-weight:800; color:white; margin-bottom:1rem; letter-spacing:-0.02em; }
.section-title--left { font-size:clamp(1.8rem,3.5vw,2.75rem); line-height:1.2; }
.section-subtitle { color:rgba(255,255,255,.5); font-size:1rem; max-width:520px; margin:0 auto; }

/* ===== BADGE VARIANTS ===== */
.badge--blue   { background:rgba(59,130,246,.1); border-color:rgba(59,130,246,.4); color:#60a5fa; }
.badge--green  { background:rgba(16,185,129,.1); border-color:rgba(16,185,129,.4); color:#34d399; }
.badge--pink   { background:rgba(236,72,153,.1); border-color:rgba(236,72,153,.4); color:#f472b6; }
.badge-dot     { width:7px; height:7px; border-radius:50%; animation:dotPulse 1.5s ease-in-out infinite; }
.badge-dot--blue { background:#60a5fa; }

/* ===== HERO ===== */
.hero-section { min-height:100vh; display:flex; align-items:center; padding-top:5rem; position:relative; overflow:hidden; }
.hero-blob-1 { width:600px; height:600px; background:rgba(59,130,246,.22); top:-100px; left:-200px; animation:blob 12s ease-in-out infinite; }
.hero-blob-2 { width:500px; height:500px; background:rgba(139,92,246,.22); bottom:-100px; right:-100px; animation:blob 15s ease-in-out 3s infinite; }
.hero-blob-3 { width:300px; height:300px; background:rgba(236,72,153,.15); top:40%; left:45%; animation:blob 10s ease-in-out 6s infinite; }
.hero-badge { display:inline-flex; align-items:center; gap:0.5rem; padding:0.4rem 1rem; background:rgba(59,130,246,.1); border:1px solid rgba(59,130,246,.3); border-radius:9999px; font-size:0.78rem; font-weight:600; color:#60a5fa; letter-spacing:0.08em; text-transform:uppercase; }
.hero-badge__dot { width:6px; height:6px; border-radius:50%; background:#60a5fa; animation:dotPulse 1.5s ease-in-out infinite; display:inline-block; }
.hero-title { font-family:'Sora',sans-serif; font-size:clamp(2.2rem,5vw,4rem); font-weight:800; line-height:1.1; margin-bottom:1.25rem; letter-spacing:-0.02em; color:white; }
.hero-subtitle { font-size:1.05rem; line-height:1.8; color:rgba(255,255,255,.6); max-width:520px; margin-bottom:2rem; }
.hero-subtitle strong { color:rgba(255,255,255,.85); }
.countdown-heading { font-size:0.72rem; text-transform:uppercase; letter-spacing:0.12em; color:rgba(255,255,255,.35); margin-bottom:0.85rem; }
.countdown-row { display:flex; gap:0.75rem; flex-wrap:wrap; }
.hero-buttons { display:flex; flex-wrap:wrap; gap:1rem; }
.hero-stats { display:flex; gap:2rem; margin-top:2.5rem; flex-wrap:wrap; align-items:center; }
.hero-stat-num { font-family:'Sora',sans-serif; font-size:1.75rem; font-weight:800; }
.hero-stat-label { font-size:0.78rem; color:rgba(255,255,255,.4); }
.hero-stat-divider { width:1px; background:rgba(255,255,255,.1); align-self:stretch; }
.hero-illustration { position:relative; height:520px; }
.hero-glow-center { position:absolute; width:280px; height:280px; border-radius:50%; background:radial-gradient(circle,rgba(139,92,246,.3) 0%,transparent 70%); top:50%; left:50%; transform:translate(-50%,-50%); }
.orbit-ring--lg { width:420px; height:420px; transform:translate(-50%,-50%) rotate(20deg); }
.orbit-ring--md { width:320px; height:320px; transform:translate(-50%,-50%) rotate(-15deg); }
.orbit-ring--sm { width:200px; height:200px; transform:translate(-50%,-50%); }
.orbit-dot--blue   { background:linear-gradient(135deg,#3b82f6,#60a5fa); }
.orbit-dot--purple { background:linear-gradient(135deg,#7c3aed,#a78bfa); }
.orbit-dot--pink   { background:linear-gradient(135deg,#ec4899,#f472b6); }
.orbit-dot--lg { width:10px; height:10px; top:-5px; }
.orbit-dot--sm { width:6px;  height:6px;  top:-3px; }
.hero-center-icon { position:absolute; width:100px; height:100px; background:linear-gradient(135deg,#1d4ed8,#7c3aed); border-radius:2rem; display:flex; align-items:center; justify-content:center; box-shadow:0 0 60px rgba(139,92,246,.5); top:50%; left:50%; transform:translate(-50%,-50%); }
.hero-mini-card { position:absolute; padding:0.85rem 1.1rem; display:flex; align-items:center; gap:0.65rem; }
.hero-mini-card--tr { top:55px;    right:30px; }
.hero-mini-card--br { bottom:75px; right:20px; }
.hero-mini-card--tl { top:75px;   left:10px; }
.hero-mini-card--bl { bottom:95px; left:5px; }
.hero-mini-card__icon { width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.hero-mini-card__icon--blue   { background:linear-gradient(135deg,#0ea5e9,#3b82f6); }
.hero-mini-card__icon--purple { background:linear-gradient(135deg,#7c3aed,#a855f7); }
.hero-mini-card__icon--orange { background:linear-gradient(135deg,#ec4899,#f97316); }
.hero-mini-card__icon--green  { background:linear-gradient(135deg,#10b981,#059669); }
.hero-mini-card__title { font-size:0.75rem; font-weight:600; color:white; }
.hero-mini-card__sub   { font-size:0.65rem; color:rgba(255,255,255,.4); }
.hero-scroll-indicator { position:absolute; bottom:2rem; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:0.5rem; opacity:0.35; animation:float 2s ease-in-out infinite; }
.hero-scroll-label { font-size:0.7rem; text-transform:uppercase; letter-spacing:0.1em; }

/* ===== JOB CARD SUB-ELEMENTS ===== */
.job-card__icon-wrap { width:56px; height:56px; border-radius:1rem; display:flex; align-items:center; justify-content:center; margin-bottom:1.25rem; }
.job-card__icon-wrap--blue   { background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.2)); border:1px solid rgba(59,130,246,.3); }
.job-card__icon-wrap--pink   { background:linear-gradient(135deg,rgba(236,72,153,.2),rgba(139,92,246,.2)); border:1px solid rgba(236,72,153,.3); }
.job-card__icon-wrap--yellow { background:linear-gradient(135deg,rgba(234,179,8,.2),rgba(249,115,22,.2));  border:1px solid rgba(234,179,8,.3); }
.job-card__icon-wrap--green  { background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(5,150,105,.2));  border:1px solid rgba(16,185,129,.3); }
.job-card__title { font-family:'Sora',sans-serif; font-size:1.05rem; font-weight:700; color:white; margin-bottom:0.5rem; }
.job-card__desc  { font-size:0.82rem; color:rgba(255,255,255,.45); margin-bottom:1.25rem; line-height:1.6; }
.job-card__meta  { display:flex; flex-direction:column; gap:0.6rem; margin-bottom:1.5rem; }
.job-card__meta-row   { display:flex; align-items:center; justify-content:space-between; }
.job-card__meta-label { font-size:0.75rem; color:rgba(255,255,255,.4); }
.job-card__openings   { font-size:0.82rem; font-weight:700; }
.job-card__btn { width:100%; justify-content:center; font-size:0.85rem; padding:0.7rem; }
.job-card__btn--pink   { background:linear-gradient(135deg,#be185d,#7c3aed); }
.job-card__btn--yellow { background:linear-gradient(135deg,#b45309,#d97706); }
.job-card__btn--green  { background:linear-gradient(135deg,#065f46,#059669); }
.salary-badge--pink   { border-color:rgba(236,72,153,.4); color:#f9a8d4; }
.salary-badge--yellow { border-color:rgba(234,179,8,.4);  color:#fde68a; }
.salary-badge--green  { border-color:rgba(16,185,129,.4); color:#6ee7b7; }

/* ===== MODAL ===== */
.modal-overlay { position:fixed; inset:0; z-index:500; display:flex; align-items:center; justify-content:center; padding:1rem; opacity:0; pointer-events:none; transition:opacity 0.3s; }
.modal-backdrop { position:absolute; inset:0; background:rgba(0,0,0,.75); backdrop-filter:blur(8px); }
.modal-box { position:relative; z-index:1; width:100%; max-width:480px; padding:2.5rem; transform:scale(0.9); transition:transform 0.3s; }
.modal-close-btn { position:absolute; top:1rem; right:1rem; background:rgba(255,255,255,.08); border:none; color:white; width:32px; height:32px; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:1rem; }
.modal-title    { font-family:'Sora',sans-serif; font-size:1.35rem; font-weight:700; color:white; margin-bottom:0.5rem; }
.modal-subtitle { font-size:0.85rem; color:rgba(255,255,255,.45); margin-bottom:1.75rem; }
.modal-form-stack { display:flex; flex-direction:column; gap:1rem; }
.modal-submit-btn { width:100%; justify-content:center; margin-top:0.5rem; }
.form-label { font-size:0.8rem; color:rgba(255,255,255,.5); display:block; margin-bottom:0.4rem; }

/* ===== SERVICES GRID ===== */
.services-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(195px,1fr)); gap:1rem; }

/* ===== ABOUT ===== */
.about-visual { position:relative; padding:1.5rem; }
.about-glass-card { padding:2.5rem; position:relative; overflow:hidden; }
.about-glow { position:absolute; top:-60px; right:-60px; width:200px; height:200px; border-radius:50%; background:radial-gradient(circle,rgba(139,92,246,.2),transparent 70%); }
.about-stats-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:1.5rem; }
.about-stat-box { border-radius:1rem; padding:1.25rem; text-align:center; }
.about-stat-box--blue   { background:linear-gradient(135deg,rgba(59,130,246,.15),rgba(139,92,246,.15)); border:1px solid rgba(59,130,246,.2); }
.about-stat-box--purple { background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(236,72,153,.15)); border:1px solid rgba(139,92,246,.2); }
.about-stat-num { font-family:'Sora',sans-serif; font-size:2rem; font-weight:800; }
.about-stat-num--purple { background:linear-gradient(135deg,#a78bfa,#f472b6); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.about-stat-label { font-size:0.75rem; color:rgba(255,255,255,.4); margin-top:0.25rem; }
.about-tags-wrap { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.07); border-radius:0.875rem; padding:1.25rem; }
.about-tags-heading { font-size:0.78rem; color:rgba(255,255,255,.4); margin-bottom:0.75rem; text-transform:uppercase; letter-spacing:0.08em; }
.about-tags-flex { display:flex; flex-wrap:wrap; gap:0.5rem; }
.about-launch-pill { position:absolute; bottom:-1.5rem; right:-1.5rem; padding:1rem 1.25rem; border-radius:1rem; display:flex; align-items:center; gap:0.75rem; }
.about-launch-icon { width:38px; height:38px; background:linear-gradient(135deg,#10b981,#059669); border-radius:0.5rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.about-launch-title { font-size:0.8rem; font-weight:600; color:white; }
.about-launch-sub   { font-size:0.68rem; color:rgba(255,255,255,.4); }
.about-body { color:rgba(255,255,255,.55); line-height:1.8; margin-bottom:1.5rem; font-size:0.97rem; }
.about-body strong { color:rgba(255,255,255,.85); }
.about-features { display:flex; flex-direction:column; gap:0.85rem; }
.feature-check-icon { width:20px; height:20px; background:linear-gradient(135deg,#3b82f6,#7c3aed); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.feature-text { font-size:0.9rem; color:rgba(255,255,255,.7); }

/* ===== VISION ===== */
.vision-card { position:relative; padding:3rem 2rem; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:1.5rem; overflow:hidden; }
.vision-glow { position:absolute; top:-80px; left:50%; transform:translateX(-50%); width:300px; height:300px; border-radius:50%; background:radial-gradient(circle,rgba(139,92,246,.12),transparent 70%); pointer-events:none; }
.vision-quote-mark { font-size:3rem; margin-bottom:1.25rem; opacity:0.4; }
.vision-text { font-family:'Sora',sans-serif; font-size:clamp(1.1rem,2.5vw,1.45rem); font-weight:600; color:white; line-height:1.65; position:relative; z-index:1; }
.vision-author { color:rgba(255,255,255,.3); font-size:0.85rem; margin-top:1.5rem; }

/* ===== NOTIFY ===== */
.notify-card { background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(139,92,246,.1)); border:1px solid rgba(139,92,246,.25); border-radius:1.75rem; padding:3.5rem 2.5rem; text-align:center; position:relative; overflow:hidden; }
.notify-glow { position:absolute; top:-50px; left:50%; transform:translateX(-50%); width:250px; height:250px; border-radius:50%; background:radial-gradient(circle,rgba(139,92,246,.1),transparent 70%); pointer-events:none; }
.notify-content { position:relative; z-index:1; }
.notify-icon { width:64px; height:64px; background:linear-gradient(135deg,#3b82f6,#7c3aed); border-radius:1.25rem; display:flex; align-items:center; justify-content:center; margin:0 auto 1.5rem; box-shadow:0 8px 25px rgba(124,58,237,.35); }
.notify-subtitle { color:rgba(255,255,255,.5); font-size:0.97rem; line-height:1.75; margin-bottom:2rem; }
.notify-subtitle strong { color:rgba(255,255,255,.8); }
.notify-form-stack { display:flex; flex-direction:column; gap:0.85rem; }
.notify-submit { width:100%; justify-content:center; padding:1rem; font-size:1rem; }
.notify-privacy { font-size:0.75rem; color:rgba(255,255,255,.25); margin-top:1rem; }

/* ===== FOOTER ===== */
.footer { background:rgba(0,0,0,.4); border-top:1px solid rgba(255,255,255,.06); padding:5rem 0 2rem; }
.footer-top { margin-bottom:3rem; }
.footer-brand { display:flex; align-items:center; gap:0.75rem; margin-bottom:1.25rem; }
.footer-brand__icon { width:40px; height:40px; background:linear-gradient(135deg,#3b82f6,#7c3aed); border-radius:0.75rem; display:flex; align-items:center; justify-content:center; }
.footer-brand__name { font-family:'Sora',sans-serif; font-size:1.5rem; font-weight:800; }
.footer-tagline { color:rgba(255,255,255,.4); font-size:0.9rem; line-height:1.75; margin-bottom:1rem; }
.footer-status { display:inline-flex; align-items:center; gap:0.4rem; padding:0.35rem 0.85rem; background:rgba(16,185,129,.1); border:1px solid rgba(16,185,129,.3); border-radius:9999px; }
.footer-status__dot  { width:7px; height:7px; border-radius:50%; background:#10b981; animation:dotPulse 1.5s ease-in-out infinite; display:inline-block; }
.footer-status__text { font-size:0.78rem; color:#10b981; font-weight:600; }
.footer-heading { font-family:'Sora',sans-serif; font-size:1rem; font-weight:700; color:white; margin-bottom:1.25rem; }
.footer-contacts { display:flex; flex-direction:column; gap:0.85rem; }
.footer-contact-link { display:flex; align-items:center; gap:0.75rem; color:rgba(255,255,255,.5); text-decoration:none; font-size:0.9rem; transition:color 0.2s; }
.footer-contact-link:hover { color:white; }
.footer-contact-item { display:flex; align-items:center; gap:0.75rem; color:rgba(255,255,255,.5); font-size:0.9rem; }
.footer-contact-icon { width:32px; height:32px; border-radius:0.5rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.footer-contact-icon--blue   { background:rgba(59,130,246,.1); border:1px solid rgba(59,130,246,.2); }
.footer-contact-icon--purple { background:rgba(139,92,246,.1); border:1px solid rgba(139,92,246,.2); }
.footer-contact-icon--green  { background:rgba(16,185,129,.1); border:1px solid rgba(16,185,129,.2); }
.footer-socials { display:flex; flex-wrap:wrap; gap:0.75rem; margin-bottom:1.25rem; }
.footer-social-note { font-size:0.82rem; color:rgba(255,255,255,.3); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.06); padding-top:2rem; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.footer-copy { font-size:0.82rem; color:rgba(255,255,255,.3); }
.footer-links { display:flex; gap:1.5rem; }
.footer-link { font-size:0.8rem; color:rgba(255,255,255,.3); text-decoration:none; transition:color 0.2s; }
.footer-link:hover { color:white; }
