/* =========================
   RESET
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  scroll-behavior:smooth;
  }
  
  body{
  font-family:'Inter',sans-serif;
  background:#050816;
  color:white;
  overflow-x:hidden;
  }
  
  /* BACKGROUND */
  
  .bg{
  position:fixed;
  width:100%;
  height:100vh;
  z-index:-10;
  overflow:hidden;
  }
  
  .circle{
  position:absolute;
  border-radius:50%;
  background:rgba(0,255,255,.08);
  animation:float 16s linear infinite;
  }
  
  .circle:nth-child(1){
  width:350px;
  height:350px;
  left:-100px;
  top:10%;
  }
  
  .circle:nth-child(2){
  width:450px;
  height:450px;
  right:-150px;
  top:40%;
  }
  
  .circle:nth-child(3){
  width:250px;
  height:250px;
  left:40%;
  bottom:-100px;
  }
  
  @keyframes float{
  0%{
  transform:translateY(0px) rotate(0deg);
  }
  
  50%{
  transform:translateY(-60px) rotate(180deg);
  }
  
  100%{
  transform:translateY(0px) rotate(360deg);
  }
  }
  
  /* LOADER */
  
  .loader{
  position:fixed;
  width:100%;
  height:100vh;
  background:#050816;
  display:flex;
  justify-content:center;
  align-items:center;
  z-index:99999;
  transition:1s;
  }
  
  .loader h1{
  font-size:60px;
  color:#00ffff;
  animation:pulse 1.5s infinite;
  }
  
  @keyframes pulse{
  0%{opacity:.3}
  50%{opacity:1}
  100%{opacity:.3}
  }
  
  /* CURSOR */
  
  .cursor{
  width:20px;
  height:20px;
  border:2px solid #00ffff;
  border-radius:50%;
  position:fixed;
  pointer-events:none;
  transform:translate(-50%,-50%);
  z-index:999999;
  }
  
  /* NAVBAR */
  
  nav{
  position:fixed;
  top:0;
  width:100%;
  z-index:999;
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(15px);
  border-bottom:1px solid rgba(255,255,255,.08);
  }
  
  .nav-container{
  width:90%;
  margin:auto;
  height:85px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  }
  
  .logo{
  font-size:30px;
  font-weight:800;
  color:#00ffff;
  }
  
  .nav-links{
  display:flex;
  gap:35px;
  }
  
  .nav-links a{
  color:white;
  text-decoration:none;
  transition:.3s;
  }
  
  .nav-links a:hover{
  color:#00ffff;
  }
  
  /* HERO */
  
  .hero{
  min-height:100vh;
  width:90%;
  margin:auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:60px;
  }
  
  .hero-left{
  flex:1;
  }
  
  .hero-left h1{
  font-size:75px;
  margin-bottom:25px;
  }
  
  .hero-left h1 span{
  color:#00ffff;
  text-shadow:0 0 25px #00ffff;
  }
  
  .hero-left p{
  color:#bdbdbd;
  line-height:1.9;
  font-size:18px;
  margin-bottom:35px;
  }
  
  .hero-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  }
  
  .btn{
  padding:16px 32px;
  border-radius:18px;
  text-decoration:none;
  font-weight:600;
  transition:.4s;
  }
  
  .primary{
  background:#00ffff;
  color:black;
  }
  
  .primary:hover{
  transform:translateY(-5px);
  box-shadow:0 0 30px #00ffff;
  }
  
  .secondary{
  border:1px solid rgba(255,255,255,.15);
  color:white;
  background:rgba(255,255,255,.05);
  }
  
  .secondary:hover{
  border-color:#00ffff;
  color:#00ffff;
  }
  
  .hero-right{
  flex:1;
  display:flex;
  justify-content:center;
  }
  
  .avatar{
  width:420px;
  border-radius:30px;
  border:2px solid rgba(0,255,255,.3);
  box-shadow:0 0 50px rgba(0,255,255,.25);
  animation:avatarFloat 5s ease-in-out infinite;
  }
  
  @keyframes avatarFloat{
  0%{transform:translateY(0px)}
  50%{transform:translateY(-20px)}
  100%{transform:translateY(0px)}
  }
  
  /* SECTION */
  
  section{
  padding:120px 8%;
  }
  
  .section-title{
  font-size:55px;
  margin-bottom:60px;
  color:#00ffff;
  }
  
  /* GLASS */
  
  .glass{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(15px);
  border-radius:25px;
  transition:.4s;
  }
  
  .glass:hover{
  transform:translateY(-10px);
  box-shadow:0 0 30px rgba(0,255,255,.15);
  }
  
  /* ABOUT */
  
  .about-box{
  padding:45px;
  }
  
  .about-box p{
  color:#d2d2d2;
  line-height:2;
  font-size:18px;
  }
  
  /* PROJECTS */
  
  .projects-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:30px;
  }
  
  .project-card{
  overflow:hidden;
  }
  
  .project-card img{
  width:100%;
  height:230px;
  object-fit:cover;
  }
  
  .project-content{
  padding:25px;
  }
  
  .project-content h3{
  margin-bottom:15px;
  font-size:28px;
  }
  
  .project-content p{
  color:#bdbdbd;
  line-height:1.7;
  }
  
  /* TIMELINE */
  
  .timeline{
  position:relative;
  padding-left:40px;
  }
  
  .timeline::before{
  content:'';
  position:absolute;
  left:10px;
  width:4px;
  height:100%;
  background:#00ffff;
  }
  
  .timeline-item{
  position:relative;
  margin-bottom:50px;
  }
  
  .timeline-item::before{
  content:'';
  position:absolute;
  left:-38px;
  top:10px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#00ffff;
  }
  
  .timeline-card{
  padding:35px;
  }
  
  .timeline-card h4{
  color:#00ffff;
  margin-top:10px;
  }
  
  .timeline-card p{
  color:#bdbdbd;
  line-height:1.8;
  margin-top:15px;
  }
  
  /* CERTS */
  
  .cert-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:30px;
  }
  
  .cert-card{
  overflow:hidden;
  }
  
  .cert-card img{
  width:100%;
  height:220px;
  object-fit:cover;
  }
  
  .cert-content{
  padding:25px;
  }
  
  .cert-content p{
  color:#bdbdbd;
  }
  
  /* SKILLS */
  
  .skills{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:25px;
  }
  
  .skill{
  padding:35px;
  text-align:center;
  }
  
  .skill i{
  font-size:45px;
  margin-bottom:20px;
  color:#00ffff;
  }
  
  /* CONTACT */
  
  .contact-box{
  padding:50px;
  text-align:center;
  }
  
  .contact-box p{
  color:#bdbdbd;
  margin-top:15px;
  }
  
  .contact-links{
  display:flex;
  justify-content:center;
  gap:30px;
  margin-top:35px;
  flex-wrap:wrap;
  }
  
  .contact-links a{
  width:65px;
  height:65px;
  display:flex;
  justify-content:center;
  align-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:white;
  font-size:25px;
  transition:.4s;
  text-decoration:none;
  }
  
  .contact-links a:hover{
  transform:translateY(-8px) scale(1.1);
  color:#00ffff;
  border-color:#00ffff;
  }
  
  /* FOOTER */
  
  footer{
  padding:40px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.08);
  color:#999;
  }
  
  /* RESPONSIVE */
  
  @media(max-width:1000px){
  
  .hero{
  flex-direction:column;
  text-align:center;
  padding-top:140px;
  }
  
  .hero-left h1{
  font-size:55px;
  }
  
  .avatar{
  width:300px;
  }
  
  .nav-links{
  display:none;
  }
  
  .section-title{
  font-size:42px;
  }

  }