:root {
  --bg:#0f1724;
  --accent1:#0ea5e9;
  --accent2:#7c3aed;
  --muted:#aeb8c7;
  --maxw:1200px;
  --radius:14px;
}

/* Reset */
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{
  font-family:'Cairo',sans-serif;
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(124,58,237,0.08), transparent 8%),
    radial-gradient(1000px 500px at 90% 90%, rgba(14,165,233,0.06), transparent 8%),
    var(--bg);
  color:#e6eef8;
  line-height:1.65;
  padding-top:70px;
}

/* Container */
.container{max-width:var(--maxw);margin:0 auto;padding:24px}

/* Navbar */
.header-top{position:fixed;top:0;left:0;right:0;z-index:999;padding:12px}
.navbar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 16px;border-radius:12px;
  background:transparent;transition:.3s ease;
}
.navbar.scrolled{
  background:rgba(15,23,36,0.9);
  box-shadow:0 12px 35px rgba(2,6,23,0.5);
  backdrop-filter:blur(10px);
}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:48px;height:48px;overflow:hidden;border-radius:10px;display:flex;align-items:center;justify-content:center}
.logo img{width:100%;height:100%;object-fit:contain}
.nav-links{display:flex;gap:16px;align-items:center}
.nav-links a{
  padding:8px 12px;border-radius:8px;
  color:rgba(230,238,248,0.9);
  font-weight:600;text-decoration:none;
}
.nav-links a:hover,.nav-links a.active{background:rgba(255,255,255,0.05);color:#fff}
.hamburger{display:none;background:none;border:none;font-size:26px;color:white;cursor:pointer}

/* Hero */
.hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:70px 30px 60px;
  min-height:auto; /* 🚀 FIX: remove forced vertical height */
}
.hero-left{flex:1}
.hero-right{flex:1;display:flex;align-items:center;justify-content:center}
.h-title{font-size:clamp(28px,5.6vw,52px);font-weight:800;color:#fff;margin-bottom:12px}
.h-sub{color:var(--muted);font-size:1.05rem;margin-bottom:20px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{
  background:linear-gradient(90deg,var(--accent1),var(--accent2));
  color:#031024;padding:12px 20px;border-radius:12px;font-weight:700;
  text-decoration:none;transition:.2s;display:inline-block
}
.btn:hover{transform:translateY(-3px);filter:brightness(1.1)}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.08);color:var(--accent1)}
.hero-card{background:rgba(255,255,255,0.02);border-radius:22px;padding:18px;width:420px;margin-top:20px}
.hero-visual{width:520px;height:400px;border-radius:20px;overflow:hidden;transition:transform .2s}
.hero-visual img{width:100%;height:100%;object-fit:cover}

/* Sections */
.section{margin:50px 0;padding:30px;border-radius:16px;background:rgba(255,255,255,0.02)}
.section h2{font-size:1.8rem;color:#fff;margin-bottom:20px;font-weight:800}
.lead{color:var(--muted);margin-bottom:18px}

/* Grid & Cards */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius);
  padding:20px;
  transition:.25s ease;
}
.card:hover{transform:translateY(-6px);box-shadow:0 8px 20px rgba(0,0,0,0.4)}
.card h3{color:var(--accent1);margin-bottom:10px;font-weight:700}
.card p,.card li{color:var(--muted);font-size:0.95rem;line-height:1.6}
.card ul{list-style:disc inside;display:grid;gap:6px}

/* Important Card */
.card.important{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 6px 18px rgba(0,0,0,0.35);
}

/* Awards */
.award-card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:16px;
  padding:20px;
  transition:transform .25s,box-shadow .25s;
}
.award-card:hover{transform:translateY(-6px);box-shadow:0 6px 18px rgba(0,0,0,0.4)}
.award-card h3{margin-bottom:8px;font-size:1.1rem;color:var(--accent1)}
.award-card p{color:var(--muted);font-size:.95rem}
.highlight{
  background:linear-gradient(90deg,var(--accent1),var(--accent2));
  padding:10px 16px;border-radius:12px;color:#031024;font-weight:700
}

/* Projects */
.project-card{transition:transform .25s,box-shadow .25s}
.project-card:hover{transform:translateY(-6px);box-shadow:0 8px 20px rgba(0,0,0,0.4)}
.project-card h3{color:var(--accent1);margin-bottom:8px}
.project-card p{color:var(--muted)}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.2,.9,.2,1)}
.reveal.visible{opacity:1;transform:none}

/* Helpers */
.badge{
  background:linear-gradient(90deg,var(--accent2),var(--accent1));
  padding:6px 14px;
  border-radius:999px;
  color:#fff;
  font-weight:700;
  font-size:0.85rem;
  white-space:nowrap;
}
.badge.success{background:linear-gradient(90deg,#22c55e,#16a34a)}
.badge.info{background:linear-gradient(90deg,#0ea5e9,#0284c7)}

.small{font-size:0.9rem;color:var(--muted)}

/* Footer */
footer{margin-top:60px;padding:40px 20px;text-align:center;color:var(--muted)}

/* Responsive */
@media(max-width:980px){
  .hero{flex-direction:column;text-align:center;padding:60px 20px 40px}
  .hero-visual{width:100%;height:320px}
  .hero-card{width:100%}
}
@media(max-width:680px){
  .nav-links{display:none;flex-direction:column;gap:10px;padding:16px;position:absolute;top:60px;right:10px;background:rgba(15,23,36,0.95);border-radius:12px}
  .nav-links.show{display:flex}
  .hamburger{display:block}
}

/* ======================
   Contact
   ====================== */
#contact.section{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
#contact h2,
#contact p.lead{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.contact-card{
  max-width:600px;
  width:100%;
  margin:20px auto 0;
  padding:30px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.05);
  border-radius:var(--radius);
  box-shadow:0 6px 20px rgba(0,0,0,0.35);
}
.contact-form{display:flex;flex-direction:column;gap:16px}
.contact-form input,
.contact-form textarea{
  width:100%;
  padding:12px 14px;
  border-radius:var(--radius);
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(255,255,255,0.02);
  color:#fff;
  font-family:inherit;
  font-size:1rem;
  transition:border-color .3s, background .3s;
}
.contact-form input:focus,
.contact-form textarea:focus{
  outline:none;
  border-color:var(--accent1);
  background:rgba(255,255,255,0.06);
}
.contact-form textarea{resize:vertical;min-height:140px}
.contact-form .btn{width:100%;text-align:center}

/* Success + Error */
.form-success{
  margin-top:16px;
  padding:14px;
  border-radius:var(--radius);
  font-weight:700;
  text-align:center;
  display:none;
}
.form-success.success{
  background:rgba(34,197,94,0.12);
  border:1px solid rgba(34,197,94,0.5);
  color:#22c55e;
}
.form-success.error{
  background:rgba(239,68,68,0.12);
  border:1px solid rgba(239,68,68,0.5);
  color:#ef4444;
}

/* ======================
   Page Navigation
   ====================== */
.page-nav {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  margin-top:50px;
  padding:20px;
  border-top:1px solid rgba(255,255,255,0.1);
  font-weight:600;
}

.page-nav a {
  color:var(--accent1);
  text-decoration:none;
  background:rgba(255,255,255,0.05);
  padding:10px 18px;
  border-radius:var(--radius);
  transition:0.3s ease;
  white-space:nowrap;
}
.page-nav a:hover {
  background:var(--accent1);
  color:#fff;
}

/* RTL arrows */
.page-nav .prev::before {content:" → ";}
.page-nav .next::after {content:" ← ";}

/* Layout logic */
.page-nav .prev + .next {margin-right:8px;}
.page-nav:has(.next):not(:has(.prev)) {justify-content:flex-end;}
.page-nav:has(.prev):not(:has(.next)) {justify-content:flex-start;}
.page-nav:not(:has(.next)):not(:has(.prev)) {display:none;}

/* 📱 Mobile tweak */
@media (max-width:600px) {
  .page-nav {
    flex-wrap:wrap;
    gap:10px;
    margin-top:30px;
    padding:16px;
  }
  .page-nav a {
    font-size:0.9rem;
    padding:8px 14px;
  }
}
