      /* =========================
   GLOBAL
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:Arial,sans-serif;
  background:#0b0b0b;
  color:white;
  line-height:1.7;

  min-width:900px;
  overflow-x:auto;
}

/* =========================
   NAVBAR
========================= */

nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 8%;
  position:fixed;
  top:0;
  width:100%;
  z-index:1000;
  background:rgba(0,0,0,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #222;
}

nav h2{
  font-size:28px;
}

nav ul{
  display:flex;
  gap:30px;
  list-style:none;
}

nav a{
  color:white;
  text-decoration:none;
  transition:0.3s ease;
}

nav a:hover{
  color:#999;
}

/* =========================
   HERO SECTION
========================= */

.hero{
  min-height:100vh;
  background:linear-gradient(to bottom right,#111,#000);
}

.hero-content{
  max-width:850px;
  padding:180px 8% 100px;
}

.tag{
  color:#888;
  margin-bottom:20px;
  letter-spacing:2px;
  text-transform:uppercase;
}

.hero h1{
  font-size:72px;
  line-height:1.1;
}

.hero h1 span{
  color:#888;
}

.hero-text{
  margin-top:30px;
  font-size:20px;
  color:#ccc;
  line-height:1.9;
}

.buttons{
  margin-top:40px;
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
  padding:14px 28px;
  border-radius:12px;
  text-decoration:none;
  font-weight:bold;
  transition:0.3s ease;
}

.btn-primary{
  background:white;
  color:black;
}

.btn-primary:hover{
  transform:translateY(-2px);
}

.btn-secondary{
  border:1px solid #444;
  color:white;
}

.btn-secondary:hover{
  border-color:#777;
  transform:translateY(-2px);
}

/* =========================
   GENERAL SECTION
========================= */

.section{
  padding:110px 8%;
}

.section h2{
  font-size:48px;
  margin-bottom:50px;
  line-height:1.2;
}

.section p{
  max-width:950px;
  margin-bottom:20px;
  color:#ccc;
}

.dark{
  background:#111;
}

.vision{
  margin-top:30px;
  color:#888;
  font-size:18px;
}

/* =========================
   GENERIC CARD
========================= */

.card{
  background:#161616;
  border:1px solid #2c2c2c;
  padding:30px;
  border-radius:22px;
  margin-bottom:30px;
}

.company{
  color:#888;
  margin-bottom:15px;
}

/* =========================
   EXPERIENCE SECTION
========================= */

#experience{
  max-width:1250px;
  margin:auto;
}

.experience-card{
  background:#161616;
  border:1px solid #2c2c2c;
  border-radius:24px;
  padding:35px;
  margin-bottom:35px;
  transition:0.3s ease;
}

.experience-card:hover{
  border-color:#444;
  transform:translateY(-3px);
}

.experience-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.experience-top h3{
  font-size:30px;
  margin-bottom:8px;
  line-height:1.3;
}

.experience-top h4{
  color:#a5a5a5;
  font-size:18px;
  font-weight:400;
  line-height:1.5;
}

.experience-date{
  color:#777;
  font-size:15px;
  white-space:nowrap;
}

.experience-card p{
  color:#d4d4d4;
  line-height:1.9;
}

.experience-short{
  margin-top:12px;
}

details{
  margin-top:25px;
}

summary{
  list-style:none;
  cursor:pointer;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid #333;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  background:#111;
  transition:0.3s ease;
}

summary:hover{
  border-color:#666;
  background:#1c1c1c;
}

summary::-webkit-details-marker{
  display:none;
}

summary::after{
  content:"+";
  color:white;
  font-size:24px;
  line-height:1;
}

details[open] summary::after{
  content:"−";
}

.experience-details{
  margin-top:28px;
  padding-top:10px;
}

.experience-details p{
  margin-bottom:22px;
  color:#bdbdbd;
  line-height:1.9;
}

.experience-tags{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
  list-style:none;
}

.experience-tags li{
  background:#1f1f1f;
  border:1px solid #333;
  padding:10px 16px;
  border-radius:30px;
  font-size:14px;
  color:#d7d7d7;
  transition:0.3s ease;
}

.experience-tags li:hover{
  border-color:#666;
  transform:translateY(-2px);
}

/* =========================
   PROJECT SECTION
========================= */

#projects{
  max-width:1350px;
  margin:auto;
}

#projects h2{
  font-size:48px;
  margin-bottom:55px;
  line-height:1.2;
}

.project-category{
  margin-bottom:80px;
}

.category-title{
  font-size:30px;
  color:#f1f1f1;
  margin-bottom:35px;
  padding-bottom:16px;
  border-bottom:1px solid #252525;
  line-height:1.3;
}

.project-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:28px;
}

.project-card{
  background:#161616;
  border:1px solid #2c2c2c;
  border-radius:24px;
  padding:24px;
  transition:0.3s ease;
  min-height:100%;
}

.project-card:hover{
  border-color:#444;
  transform:translateY(-3px);
}

.project-card h3{
  font-size:19px;
  line-height:1.5;
  margin-bottom:18px;
  color:white;
}

.project-card p{
  color:#cfcfcf;
  line-height:1.9;
  margin-bottom:25px;
  font-size:14px;
}

.project-card span{
  display:block;
  color:#8f8f8f;
  line-height:1.8;
  font-size:14px;
}

/* PROJECT BUTTON */

.project-btn{
  display:inline-block;
  margin-top:25px;
  padding:12px 20px;
  border:1px solid #333;
  border-radius:12px;
  color:white;
  text-decoration:none;
  transition:0.3s ease;
}

.project-btn:hover{
  background:white;
  color:black;
}

/* =========================
   SKILLS SECTION
========================= */

.skills-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:20px;
}

.skills-grid div{
  background:#161616;
  border:1px solid #2c2c2c;
  padding:22px;
  border-radius:16px;
  text-align:center;
  transition:0.3s ease;
}

.skills-grid div:hover{
  border-color:#444;
  transform:translateY(-2px);
}

/* =========================
   FOOTER
========================= */

footer{
  text-align:center;
  padding:90px 8%;
}

footer h2{
  font-size:42px;
  margin-bottom:20px;
}

footer p{
  color:#bbb;
  margin-bottom:20px;
}

footer a{
  color:white;
  font-size:20px;
  text-decoration:none;
}

.copyright{
  margin-top:40px;
  color:#666;
}

/* =========================
   RESPONSIVE
========================= */

/* CONTACT LINKS */

.contact-links{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin-top:25px;
}

.contact-links a{
  color:white;
  text-decoration:none;
  font-size:20px;
  transition:0.3s ease;
}

.contact-links a:hover{
  color:#9a9a9a;
}

/* =========================
   CERTIFICATIONS
========================= */

.project-card img{

    width:100%;
    height:170px;

    object-fit:cover;

    border-radius:14px;

    margin-bottom:18px;

    cursor:pointer;

    transition:0.35s ease;

    border:1px solid rgba(255,255,255,0.06);

}

.project-card img:hover{

    transform:scale(1.02);

    box-shadow:0 12px 28px rgba(0,0,0,0.35);

}

/* =========================
   CERTIFICATION BUTTON
========================= */

.certifications-more{

    text-align:center;

    margin-top:55px;

}

.project-btn{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:14px 32px;

    border:1px solid rgba(255,255,255,0.12);

    border-radius:12px;

    text-decoration:none;

    color:white;

    font-weight:600;

    font-size:15px;

    letter-spacing:0.3px;

    background:rgba(255,255,255,0.03);

    backdrop-filter:blur(10px);

    transition:0.35s ease;

}

.project-btn:hover{

    background:white;

    color:#000;

    transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(255,255,255,0.15);

}

/* =========================
   CERTIFICATE POPUP
========================= */

.certificate-popup{
    display:none;
    position:fixed;
    z-index:99999;
    inset:0;
    background:rgba(0,0,0,0.92);
    justify-content:center;
    align-items:center;
    padding:30px;
}

.popup-image{
    max-width:95%;
    max-height:90vh;
    width:auto;
    height:auto;
    object-fit:contain;
    border-radius:14px;
    box-shadow:0 0 30px rgba(255,255,255,0.08);
}

.close-popup{
    position:absolute;
    top:20px;
    right:30px;
    color:white;
    font-size:42px;
    cursor:pointer;
    transition:0.3s ease;
}

.close-popup:hover{
    color:#00bcd4;
    transform:rotate(90deg);
}
