*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif}
body{background:#020617;color:white}

header{display:flex;justify-content:space-between;padding:20px 40px;background:rgba(2,6,23,0.7);backdrop-filter:blur(15px);position:sticky;top:0}

nav a{margin:0 12px;cursor:pointer}
nav a:hover{color:#38bdf8}

section{display:none;padding:100px 20px;max-width:1100px;margin:auto}
section.active{display:block}

.hero{text-align:center}
.hero h2{font-size:3rem}

.cta{margin-top:20px;padding:12px 25px;border:none;border-radius:10px;background:linear-gradient(45deg,#38bdf8,#6366f1);color:white;cursor:pointer}

.filters{text-align:center;margin-bottom:30px}
.filters button{margin:5px;padding:8px 15px;border:none;border-radius:20px;background:#1e293b;color:white;cursor:pointer}
.filters button:hover{background:#38bdf8}

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

/* GRID LOOK */
.card{
  position:relative;
  border-radius:15px;
  overflow:hidden;
  cursor:pointer;
  aspect-ratio:16/9;
  background:black;
}

.card video,
.card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.overlay{
  position:absolute;
  bottom:0;
  width:100%;
  padding:10px;
  background:linear-gradient(transparent,black);
}

/* MODAL FIX (NO CROPPING) */
.modal{
  position:fixed;
  top:0;left:0;
  width:100%;height:100%;
  background:black;
  display:none;
  justify-content:center;
  align-items:center;
}

.modal video,
.modal img{
  max-width:90%;
  max-height:90%;
  object-fit:contain;
}

/* FLOAT */
.hire-me{position:fixed;bottom:80px;right:20px;background:#6366f1;padding:12px 20px;border-radius:20px}
.whatsapp-float{position:fixed;bottom:20px;right:20px;background:#25D366;padding:15px;border-radius:50%}

.whatsapp{display:inline-block;margin-top:15px;padding:10px 20px;background:#25D366;color:white;border-radius:6px;text-decoration:none}

.fade{opacity:0;transform:translateY(30px);transition:1s}
.fade.show{opacity:1;transform:translateY(0)}