:root{
  --bg:#0f1724;
  --card:#0b1220;
  --muted:#9aa4b2;
  --accent-1: 52, 211, 153;
  --accent-2: 96, 165, 250;
  --glass: rgba(255,255,255,0.04);
  --radius: 14px;
  --max-width: 1100px;
  --ff-sans: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
}

*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:var(--ff-sans);background: linear-gradient(180deg, rgba(var(--accent-2),0.06), transparent 40%), var(--bg);color:#e6eef6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.45;padding:32px 20px;display:flex;justify-content:center;}
.wrap{width:100%;max-width:var(--max-width);}
header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;}
.logo{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg, rgba(var(--accent-1),1), rgba(var(--accent-2),1));display:inline-grid;place-items:center;font-weight:700;color:#042029;box-shadow: 0 6px 18px rgba(2,6,23,0.6);flex-shrink:0;}
.brand h1{font-size:18px;margin:0}
.brand p{margin:0;font-size:12px;color:var(--muted)}
nav{display:flex;align-items:center;gap:18px}
nav a{color:var(--muted);text-decoration:none;font-size:14px;padding:8px;border-radius:8px}
nav a:hover{color:inherit;background:var(--glass)}
.hamburger{display:none;background:transparent;border:0;color:var(--muted);font-size:20px;cursor:pointer}
.hero{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:center;margin-bottom:36px;}
.card{background:var(--card);border-radius:var(--radius);padding:28px;box-shadow: 0 6px 30px rgba(2,6,23,0.6);}
.intro h2{margin:0 0 8px 0;font-size:28px}
.intro p{margin:0;color:var(--muted)}
.skills{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.chip{padding:8px 12px;background:rgba(255,255,255,0.03);border-radius:999px;font-size:13px;color:var(--muted)}
.portrait{width:100%;height:100%;max-width:360px;border-radius:12px;overflow:hidden;position:relative;}
.portrait img{display:block;width:100%;height:100%;object-fit:cover}
.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:36px}
.project{background:var(--card);border-radius:12px;padding:16px;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}
.project h3{margin:0 0 8px 0;font-size:16px}
.project p{margin:0;color:var(--muted);font-size:14px}
.project-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.btn{ text-decoration:none; display:inline-block; border:0;padding:8px 12px;border-radius:10px;background:linear-gradient(90deg, rgba(var(--accent-1),1), rgba(var(--accent-2),1));color:#042029;font-weight:600;cursor:pointer}
.two-col{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:36px;}
.contact .contact-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:rgba(255,255,255,0.02);margin-bottom:10px}
.contact .contact-item svg{width:22px;height:22px;opacity:0.9}
footer{color:var(--muted);font-size:13px;text-align:center;padding:18px 0}
@media (max-width:980px){.hero{grid-template-columns:1fr 300px}.projects{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}
@media (max-width:700px){header{align-items:flex-start}.hero{grid-template-columns:1fr;}nav{display:none}.hamburger{display:inline-block}.portrait{max-width:100%;height:260px}.projects{grid-template-columns:1fr}}
a:hover,.card:hover,.project:hover,.portrait:hover,.btn:hover,img:hover{transform: scale(1.1);transition: transform 0.3s ease-in-out;box-shadow: 0 12px 24px rgba(0, 0.4, 0.4, 0.4);}

/* Modal Styles */
.modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.8);justify-content:center;align-items:center;flex-direction:column;}
.modal-content{max-width:95%;max-height:80%;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,0.6);transition: transform 0.3s ease-in-out;}
.modal-content:hover{transform: scale(1.1);}
.close-btn{position:absolute;top:20px;right:30px;font-size:28px;font-weight:bold;color:#fff;cursor:pointer;}
.modal-nav{margin-top:12px;display:flex;gap:20px;}
.modal-nav button{padding:8px 16px;border:none;border-radius:10px;background:linear-gradient(90deg, rgba(var(--accent-1),1), rgba(var(--accent-2),1));color:#042029;font-weight:600;cursor:pointer;}
.highlight{background:linear-gradient(90deg, rgba(var(--accent-1),1), rgba(var(--accent-2),1));-webkit-background-clip:text;background-clip:text;color:transparent;}
