:root{
      --bg:#0e1016;
      --bg-soft:#151826;
      --border:#232742;
      --text:#e6e8f0;
      --muted:#9aa0b5;
      --accent:#4fd1c5;
      --accent-2: rgba(79,209,197,.12);
      --shadow: 0 12px 30px rgba(0,0,0,.25);
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:'Inter',sans-serif;
      background:
        radial-gradient(1200px 800px at 15% -10%, rgba(79,209,197,.08), transparent 60%),
        radial-gradient(900px 700px at 90% 10%, rgba(79,209,197,.06), transparent 55%),
        var(--bg);
      color:var(--text);
      line-height:1.6;
    }
    a{color:var(--accent);text-decoration:none}
    a:hover{opacity:.92}

    .container{
      max-width:1100px;
      margin:0 auto;
      padding:72px 24px;
    }

    /* NAV */
    .topbar{
      position:sticky; top:0; z-index:50;
      backdrop-filter: blur(10px);
      background: rgba(14,16,22,.72);
      border-bottom:1px solid rgba(35,39,66,.65);
    }
    .topbar-inner{
      max-width:1100px;
      margin:0 auto;
      padding:14px 24px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }
    .brand{
      display:flex; align-items:center; gap:10px;
      font-weight:700; letter-spacing:.2px;
    }
    .dot{
      width:10px; height:10px; border-radius:999px;
      background:var(--accent);
      box-shadow:0 0 0 4px rgba(79,209,197,.12);
    }
    .navlinks{display:flex; gap:16px; flex-wrap:wrap}
    .navlinks a{
      color:var(--muted);
      font-size:.92rem;
      padding:6px 8px;
      border-radius:10px;
    }
    .navlinks a:hover{
      color:var(--text);
      background:rgba(255,255,255,.04);
    }

    /* HERO */
    .hero{padding:28px 0 18px; margin-bottom:70px}
    .hero h1{font-size:3rem; letter-spacing:-.5px; margin-bottom:10px}
    .hero h2{color:var(--accent);font-size:1.25rem;margin-bottom:16px}
    .hero p{max-width:820px;color:var(--muted);margin-bottom:12px}
    .pill-row{display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 22px}
    .pill{
      display:inline-flex; align-items:center; gap:8px;
      font-size:.82rem;
      color:var(--text);
      background:rgba(255,255,255,.04);
      border:1px solid rgba(35,39,66,.8);
      padding:8px 12px;
      border-radius:999px;
    }
    .pill strong{font-weight:600}
    .cta-row{display:flex; gap:12px; flex-wrap:wrap; margin-top:18px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      padding:10px 14px;
      border-radius:12px;
      border:1px solid rgba(35,39,66,.9);
      background:rgba(255,255,255,.03);
      color:var(--text);
      font-weight:600;
      font-size:.95rem;
      transition:.15s;
    }
    .btn:hover{transform:translateY(-1px); box-shadow: var(--shadow)}
    .btn.primary{
      background:linear-gradient(180deg, rgba(79,209,197,.16), rgba(79,209,197,.06));
      border:1px solid rgba(79,209,197,.55);
    }
    .btn.primary:hover{border-color: rgba(79,209,197,.8)}
    .subtle-link{color:var(--muted); font-size:.95rem}
    .subtle-link:hover{color:var(--text)}

    /* SECTIONS */
    section{margin-bottom:90px}
    section h3{font-size:1.9rem;margin-bottom:24px; letter-spacing:-.2px}
    .section-lead{color:var(--muted); margin:-10px 0 24px; max-width:860px}

    .rule{
      width:52px;
      height:3px;
      background:rgba(35,39,66,.95);
      border-radius:99px;
      margin:0 0 20px;
    }

    /* FILTERS */
    .filters{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:22px}
    .chip{
      cursor:pointer;
      user-select:none;
      font-size:.8rem;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(35,39,66,.9);
      background:rgba(255,255,255,.03);
      color:var(--muted);
      transition:.15s;
    }
    .chip.active{
      color:var(--text);
      border-color:rgba(79,209,197,.6);
      background:rgba(79,209,197,.08);
    }

    /* PROJECTS */
    .projects{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
      gap:26px;
    }

    .card{
      background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
      border:1px solid rgba(35,39,66,.9);
      border-radius:18px;
      padding:22px;
      display:flex;
      flex-direction:column;
      gap:14px;
      transition:.22s;
      box-shadow: 0 0 0 rgba(0,0,0,0);
    }
    .card:hover{
      transform:translateY(-4px);
      border-color:rgba(79,209,197,.4);
      box-shadow: var(--shadow);
    }

    .featured{
      grid-column:1/-1;
      padding:26px;
      border:1px solid rgba(79,209,197,.65);
      background:linear-gradient(180deg, rgba(79,209,197,.10), rgba(255,255,255,.01));
    }

    .card h4{font-size:1.35rem; letter-spacing:-.2px}
    .meta{font-size:.86rem;color:var(--muted);line-height:1.55}
    .card p{color:var(--muted);font-size:.95rem}

    .thumb{
      width:100%;
      border-radius:14px;
      overflow:hidden;
      border:1px solid rgba(35,39,66,.9);
      background: linear-gradient(135deg, rgba(79,209,197,.12), rgba(255,255,255,.02));
      aspect-ratio: 16/9;
      position:relative;
    }
    .thumb::after{
      content:"Placeholder Thumbnail Test (Replace)";
      position:absolute; inset:0;
      display:flex; align-items:center; justify-content:center;
      color:rgba(230,232,240,.55);
      font-size:.9rem;
      letter-spacing:.2px;
    }

    .thumb-img{
      width:100%;
      aspect-ratio:16/9;
      object-fit:cover;
      border-radius:14px;
      border:1px solid rgba(35,39,66,.9);
      display:block;
    }

    .video-wrapper{
      width:100%;
      aspect-ratio:16/9;
      border-radius:14px;
      overflow:hidden;
      border:1px solid rgba(35,39,66,.9);
      background:#000;
      position:relative;
    }
    .video-wrapper video{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
    }
    .video-hint{
      position:absolute;
      left:10px; bottom:10px;
      font-size:.78rem;
      color:rgba(230,232,240,.7);
      background:rgba(0,0,0,.45);
      border:1px solid rgba(255,255,255,.12);
      padding:6px 10px;
      border-radius:999px;
      backdrop-filter: blur(6px);
    }

    .tags{display:flex;flex-wrap:wrap;gap:8px}
    .tag{
      font-size:.72rem;
      background:var(--accent-2);
      color:var(--accent);
      padding:4px 9px;
      border-radius:999px;
      border:1px solid rgba(79,209,197,.18);
    }

    .bullets{
      margin-top:2px;
      color:var(--muted);
      font-size:.92rem;
      line-height:1.65;
    }
    .bullets b{color:var(--text); font-weight:600}

    .links-row{display:flex; gap:14px; flex-wrap:wrap; margin-top:4px}
    .link{
      display:inline-flex; align-items:center; gap:8px;
      font-weight:600;
      font-size:.92rem;
      color:var(--text);
      background:rgba(255,255,255,.03);
      border:1px solid rgba(35,39,66,.9);
      padding:8px 10px;
      border-radius:12px;
      transition:.15s;
    }
    .link:hover{border-color:rgba(79,209,197,.45)}

    /* ENGINEERING */
    .two-col{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:22px;
      margin-top:14px;
    }
    .box{
      background:rgba(255,255,255,.02);
      border:1px solid rgba(35,39,66,.9);
      border-radius:18px;
      padding:18px;
    }
    .box h5{
      font-size:1rem;
      margin-bottom:10px;
      letter-spacing:-.1px;
    }
    .box ul{list-style:none; color:var(--muted); font-size:.92rem}
    .box li{margin-bottom:8px}
    .box li::before{
      content:"•";
      color:rgba(79,209,197,.7);
      margin-right:10px;
    }

    pre{
      background:rgba(0,0,0,.35);
      border:1px solid rgba(35,39,66,.9);
      border-radius:16px;
      padding:14px;
      overflow:auto;
      color:rgba(230,232,240,.92);
      font-size:.86rem;
      line-height:1.55;
    }
    code{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace}

    /* SKILLS */
    .skills{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
      gap:18px;
    }
    .skill-box{
      background:rgba(255,255,255,.02);
      border:1px solid rgba(35,39,66,.9);
      border-radius:18px;
      padding:18px;
    }
    .skill-box h5{font-size:1rem; margin-bottom:10px}
    .skill-box ul{list-style:none;color:var(--muted); font-size:.95rem}
    .skill-box li{margin-bottom:8px}
    .skill-box li::before{
      content:"•";
      color:rgba(79,209,197,.7);
      margin-right:10px;
    }

    /* ABOUT */
    .about{
      max-width:880px;
      color:var(--muted);
      font-size:1.02rem;
    }
    .about strong{color:var(--text)}

    /* FOOTER */
    footer{
      border-top:1px solid rgba(35,39,66,.9);
      padding:34px 24px;
      text-align:center;
      color:var(--muted);
    }

    @media(max-width:900px){
      .two-col{grid-template-columns:1fr}
    }
    @media(max-width:768px){
      .hero h1{font-size:2.2rem}
      .topbar-inner{padding:12px 16px}
      .container{padding:46px 16px}
    }