/* Minimal, responsive portfolio layout */
:root{
  --bg:#0b0f15; --card:#111622; --text:#e8eefc; --muted:#9bb0d0; --accent:#6aa6ff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,'Noto Sans',sans-serif;line-height:1.6}
a{color:var(--accent);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{font-weight:800;letter-spacing:.3px}
.menu{list-style:none;display:flex;gap:18px;margin:0;padding:0}
.btn{background:var(--accent);color:#061225;padding:10px 14px;border-radius:10px;font-weight:700}
.btn-secondary{background:transparent;outline:2px solid var(--accent);color:var(--text)}
.hero{padding:80px 0 40px}
.hero h1{font-size:clamp(28px,5vw,40px);margin:0 0 8px}
.hero p{color:var(--muted);max-width:700px}
.cta{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}
.section{padding:42px 0}
.section h2{font-size:clamp(22px,4vw,28px);margin:0 0 18px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--card);padding:18px;border-radius:14px;border:1px solid #1b2332}
.timeline .item{padding:12px 0;border-left:3px solid #1b2332;margin-left:8px;padding-left:18px}
.timeline .when{color:var(--muted);font-size:14px}
.list{margin:0;padding-left:18px}
.tags{display:flex;flex-wrap:wrap;gap:10px}
.tags span{background:#0e1523;border:1px solid #1b2332;border-radius:999px;padding:6px 10px;color:var(--muted);font-size:14px}
.footer{padding:30px 0;color:var(--muted);font-size:14px;text-align:center}

/* mobile menu */
.menu-button-container{display:none;height:24px;width:30px;cursor:pointer}
.menu-button, .menu-button::before, .menu-button::after{display:block;background:var(--text);height:3px;width:30px;border-radius:2px;position:relative;transition:.2s}
.menu-button::before,.menu-button::after{content:'';position:absolute}
.menu-button::before{top:-8px}.menu-button::after{top:8px}
#menu-toggle{display:none}
@media (max-width:760px){
  .menu-button-container{display:flex;align-items:center}
  .menu{position:absolute;top:60px;left:0;right:0;background:#0c121d;border-top:1px solid #1b2332;flex-direction:column;gap:0;display:none}
  .menu li{border-bottom:1px solid #132033}
  #menu-toggle:checked ~ .menu{display:flex}
}
