@import url("fontawesome-all.min.css");
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300italic,400,600");

/* ---------- Global Styles ---------- */
 body {
   margin: 0;
   font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
   background: #0e0e0e;
   color: #f5f5f5;
   line-height: 1.6;
 }

 a {
   color: #00bfff;
   text-decoration: none;
   transition: color 0.3s;
 }

 a:hover {
   color: #1ed760;
 }

 h1, h2, h3 {
   font-weight: 600;
   color: #fff;
 }

 section {
   padding: 80px 20px;
   text-align: center;
 }

 .container {
   max-width: 1000px;
   margin: auto;
 }

 /* ---------- Header ---------- */
 header {
   background: #111;
   position: sticky;
   top: 0;
   z-index: 1000;
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 15px 30px;
   box-shadow: 0 2px 10px rgba(0,0,0,0.7);
 }

 header h1 {
   font-size: 22px;
   margin: 0;
 }

 nav ul {
   list-style: none;
   display: flex;
   gap: 25px;
   margin: 0;
   padding: 0;
 }

 nav a {
   font-size: 15px;
   font-weight: 500;
   padding: 8px 14px;
   border-radius: 8px;
   transition: background 0.3s;
 }

 nav a:hover {
   background: rgba(255,255,255,0.1);
 }

 @media screen and (max-width: 600px) {
   nav ul {
     flex-wrap: wrap;
     justify-content: center;
     gap: 10px;
   }
 }

 /* ---------- Intro ---------- */
 #intro {
   height: 100vh;
   display: flex;
   justify-content: center;
   align-items: center;
   background: linear-gradient(135deg, #1a1a1a, #0e0e0e);
 }

 #intro h2 {
   font-size: 48px;
   margin-bottom: 15px;
 }

 #intro p {
   font-size: 18px;
   color: #ccc;
 }

 /* ---------- About ---------- */
 #about img {
   width: 250px;
   border-radius: 50%;
   margin-bottom: 20px;
   box-shadow: 0 0 20px rgba(0,0,0,0.8);
 }

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

 .card {
   background: #1a1a1a;
   border-radius: 12px;
   overflow: hidden;
   transition: transform 0.3s, box-shadow 0.3s;
   cursor: pointer;
 }

 .card:hover {
   transform: translateY(-8px);
   box-shadow: 0 8px 25px rgba(0,0,0,0.8);
 }

 .card img {
   width: 100%;
   display: block;
   height: 180px;
   object-fit: cover;
 }

 .card h3 {
   margin: 15px 0 5px;
 }

 .card p {
   color: #aaa;
   font-size: 14px;
   padding: 0 15px 20px;
 }

 .card a {
   display: inline-block;
   background: #00bfff;
   color: #fff;
   padding: 8px 16px;
   margin-bottom: 15px;
   border-radius: 6px;
   transition: background 0.3s;
 }

 .card a:hover {
   background: #1ed760;
 }

 /* ---------- Skills ---------- */
 .skills-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
   gap: 20px;
   margin-top: 30px;
 }

 .skill {
   background: #1a1a1a;
   padding: 20px;
   border-radius: 10px;
   transition: transform 0.3s;
 }

 .skill:hover {
   transform: scale(1.05);
   background: #222;
 }

 /* ---------- Contact ---------- */
 .socials {
   margin-top: 20px;
   display: flex;
   justify-content: center;
   gap: 25px;
 }

 .socials a {
   font-size: 28px;
   color: #ccc;
   transition: color 0.3s, transform 0.3s;
 }

 .socials a:hover {
   color: #1ed760;
   transform: scale(1.2);
 }

 /* ---------- Footer ---------- */
 footer {
   background: #111;
   padding: 20px;
   text-align: center;
   font-size: 14px;
   color: #777;
 }
