@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;700&family=JetBrains+Mono:wght@400;700&display=swap);

/* ===== Base (preserved from original site) ===== */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif}
code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}
:root{
  --bg:#050505;
  --bg-card:#0a0a0a;
  --bg-card-hover:#111;
  --text-main:#e0e0e0;
  --text-muted:#888;
  --accent:#00ff41;
  --accent-dim:#00ff4119;
  --font-body:"Outfit",sans-serif;
  --font-mono:"JetBrains Mono",monospace;
  --transition:all 0.4s cubic-bezier(0.645,0.045,0.355,1);
  /* scoped accent used only inside the placement section */
  --wcs-accent:#ffbd2e;
  --wcs-accent-dim:#ffbd2e1a;
}
*{box-sizing:border-box}
body{background-color:var(--bg);color:var(--text-main);font-family:var(--font-body);line-height:1.7;margin:0;overflow-x:hidden}
a{color:inherit}
.bg-canvas{height:100%;left:0;opacity:.6;z-index:-1;position:fixed;top:0;width:100%}
.navbar{position:fixed;top:0;width:100%;align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#050505d9;border-bottom:1px solid #ffffff0d;display:flex;height:80px;justify-content:space-between;padding:0 40px;z-index:100}
.logo{color:var(--accent);cursor:pointer;font-family:var(--font-mono);font-size:1.2rem;font-weight:700;background:none;border:none}
.nav-container{background:#ffffff08;border:1px solid #ffffff0d;border-radius:50px;display:flex;gap:30px;padding:8px 30px}
.nav-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);font-size:.85rem;transition:var(--transition)}
.nav-link:hover,.nav-link.active{color:var(--accent)}
.section{margin:0 auto;max-width:1000px;padding:120px 20px}
.scroll-section{opacity:0;transform:translateY(40px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,1,.3,1)}
.scroll-section.reveal{opacity:1;transform:translateY(0)}
.section-title{align-items:center;display:flex;margin-bottom:50px}
.section-title h2{color:var(--text-main);font-family:var(--font-mono);font-size:1.8rem;margin-right:20px;font-weight:400}
.line{background:#333;flex-grow:1;height:1px;max-width:300px}
.hero-section{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;margin:0 auto;max-width:1300px;min-height:100vh;padding:0 20px}
.hero-text{display:flex;flex-direction:column;justify-content:center}
.hero-visual{position:relative;width:100%;aspect-ratio:1/1;max-width:520px;justify-self:center}
.hero-visual canvas{width:100%;height:100%;display:block}
@media (max-width:900px){
  .hero-section{grid-template-columns:1fr}
  .hero-visual{display:none}
}
.mono-label{font-family:var(--font-mono);color:var(--text-muted);font-size:.95rem}
.hero-name{font-size:5rem;font-weight:700;line-height:1.1;margin:10px 0 0}
.hero-role{color:var(--text-muted);font-size:3rem;font-weight:700;margin:0 0 28px}
.cursor{animation:blink 1s infinite;color:var(--accent)}
.hero-actions{gap:30px;align-items:center;display:flex;flex-wrap:wrap}
.btn-primary{background:var(--accent);align-items:center;display:flex;border-radius:4px;color:#000;font-family:var(--font-mono);font-weight:700;gap:10px;padding:12px 24px;text-decoration:none;transition:var(--transition);border:none;cursor:pointer;font-size:.95rem}
.btn-primary:hover{box-shadow:0 0 20px var(--accent-dim);transform:translateY(-2px)}
.socials{display:flex;gap:20px}
.socials a{color:var(--text-muted);transition:.3s;display:flex}
.socials a:hover{color:var(--accent);transform:translateY(-3px)}
.about-grid{align-items:center;display:flex;gap:50px}
.bio-text{color:#bbb;flex:1 1;font-size:1.05rem}
.highlight{color:var(--accent);font-weight:600}
.terminal-window{background:#111;border:1px solid #333;border-radius:8px;box-shadow:0 20px 50px #00000080;flex:0.8 1;overflow:hidden}
.terminal-bar{align-items:center;background:#222;display:flex;gap:6px;padding:8px 12px}
.dot{border-radius:50%;height:10px;width:10px}
.red{background:#ff5f56}.yellow{background:#ffbd2e}.green{background:#27c93f}
.terminal-bar span{color:#666;font-size:.7rem;margin-left:auto;font-family:var(--font-mono)}
.terminal-body{font-family:var(--font-mono);color:#ddd;font-size:.85rem;padding:20px}
.prompt{color:var(--accent);margin-right:8px}
.output{color:#888;display:block;margin-top:5px}
.tech-marquee-wrapper{background:#080808;border-bottom:1px solid #222;border-top:1px solid #222;margin-top:60px;overflow:hidden;padding:20px 0;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.tech-marquee{animation:scroll 25s linear infinite;display:flex;gap:60px;width:max-content}
.tech-logo-item{align-items:center;display:flex;gap:10px;opacity:.5;transition:.3s;color:var(--text-main)}
.tech-logo-item:hover{color:var(--accent);opacity:1}
.tech-logo-item span{font-family:var(--font-mono);font-size:1.2rem;font-weight:700}
@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}
.projects-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}
.project-card{background:var(--bg-card);border:1px solid #222;border-radius:12px;overflow:hidden;text-decoration:none;transition:var(--transition);display:block}
.project-card:hover{border-color:var(--accent);transform:translateY(-7px)}
.project-cover{align-items:center;background:#222;display:flex;height:160px;justify-content:center;position:relative}
.project-cover img{max-height:64px;max-width:60%;object-fit:contain}
.cover-icon{font-size:3rem;opacity:.8}
.project-info{padding:25px}
.project-info h3{color:#fff;margin:0 0 10px;font-weight:600}
.project-info p{color:var(--text-muted);font-size:.9rem;margin-bottom:20px}
.tags{display:flex;flex-wrap:wrap;gap:10px}
.tags span{background:#ffffff0d;border-radius:4px;color:#ccc;font-family:var(--font-mono);font-size:.75rem;padding:4px 8px}
.skills-grid-new{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.skill-category-card{background:var(--bg-card);border:1px solid #222;border-radius:12px;padding:30px}
.skill-category-card h4{color:#fff;margin-bottom:20px;margin-top:0;font-weight:600}
.skill-icons-row{display:flex;flex-wrap:wrap;gap:10px}
.skill-icon-pill{align-items:center;background:#111;border:1px solid #222;border-radius:6px;color:#ccc;display:flex;font-size:.9rem;gap:8px;padding:8px 12px}
.skill-icon-pill svg{color:var(--accent);height:16px;width:16px}
.cert-grid-new{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.cert-card-new{align-items:center;background:var(--bg-card);border:1px solid #222;border-radius:12px;display:flex;gap:20px;padding:20px;transition:var(--transition)}
.cert-card-new:hover{border-color:var(--accent)}
.cert-logo-area{align-items:center;background:#111;border-radius:8px;color:var(--accent);display:flex;height:50px;justify-content:center;width:50px;flex-shrink:0}
.cert-details h5{color:#fff;font-size:1rem;margin:0;font-weight:600}
.cert-details span{color:#888;display:block;font-size:.85rem}
.cert-details small{color:var(--accent);font-family:var(--font-mono);font-size:.75rem}
.contact-desc{color:var(--text-muted);margin:0 auto 50px;max-width:600px;text-align:center}
.contact-palettes{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}
.palette-box{align-items:center;background:var(--bg-card);border:1px solid #222;border-radius:12px;color:#ccc;display:flex;gap:20px;min-width:250px;padding:20px 40px;text-decoration:none;transition:var(--transition)}
.palette-box:hover{border-color:var(--accent);transform:translateY(-5px)}
.palette-icon{color:var(--accent);height:24px;width:24px;flex-shrink:0}
.palette-box strong{color:#fff;display:block;margin-bottom:2px}
.palette-box p{margin:0}
.footer{color:#555;font-family:var(--font-mono);font-size:.8rem;margin-top:100px;text-align:center}
@keyframes blink{50%{opacity:0}}

/* ===== NEW: hero status badge (placement update on landing page) ===== */
.status-badge{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.85rem;color:#ccc;background:#ffffff08;border:1px solid #ffffff14;border-radius:50px;padding:8px 18px;margin-bottom:36px;width:fit-content}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);flex-shrink:0;animation:pulse-dot 2s infinite}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.4}}
.status-badge b{color:var(--text-main);font-weight:600}
.status-badge .sep{color:#444}

/* ===== NEW: featured project card (Sentinel Notts) ===== */
.project-card.featured{grid-column:1/-1;border-color:#00ff4133;background:linear-gradient(135deg,#0a0f0a,#0a0a0a);cursor:default}
.project-card.featured:hover{transform:none}
.featured-content{padding:40px 45px;display:flex;flex-direction:column}
.featured-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.7rem;color:var(--accent);letter-spacing:.05em;margin-bottom:14px;width:fit-content}
.featured-badge::before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%}
.featured-content h3{font-size:1.6rem;margin:0 0 6px;color:#fff}
.featured-subtitle{color:var(--text-muted);font-size:.95rem;margin:0 0 18px;font-family:var(--font-mono)}
.featured-content p.featured-desc{color:#bbb;font-size:.98rem;margin:0 0 26px;max-width:680px}
.featured-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px;max-width:640px}
.featured-stat b{display:block;font-size:1.4rem;color:var(--accent);font-family:var(--font-mono)}
.featured-stat span{font-size:.78rem;color:var(--text-muted)}
.featured-links{display:flex;gap:14px;align-items:center;margin-top:4px;flex-wrap:wrap}
.featured-links .btn-primary{padding:10px 20px;font-size:.85rem}
.featured-links a.icon-link{color:var(--text-muted);display:flex}
.featured-links a.icon-link:hover{color:var(--accent)}
@media (max-width:768px){
  .featured-stats{grid-template-columns:repeat(2,1fr)}
}

/* ===== NEW: placement section (scoped support/testing theme) ===== */
.placement-wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
.placement-wrap.placement-wrap-solo{grid-template-columns:1fr;max-width:480px;margin:0 auto}
.placement-role-card{background:var(--bg-card);border:1px solid #222;border-radius:12px;padding:30px;display:flex;flex-direction:column;gap:18px}
.placement-role-card .role-head{display:flex;align-items:center;gap:14px}
.role-icon{width:44px;height:44px;border-radius:8px;background:#ffbd2e14;color:var(--wcs-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.role-head h3{margin:0;color:#fff;font-size:1.15rem}
.role-head span{color:var(--text-muted);font-size:.85rem;display:block;margin-top:2px}
.placement-meta{display:flex;flex-direction:column;gap:8px;font-size:.85rem;color:#aaa;font-family:var(--font-mono);border-top:1px solid #1e1e1e;padding-top:16px}
.placement-meta div{display:flex;justify-content:space-between;gap:10px}
.placement-meta span:first-child{color:var(--text-muted)}

@media (max-width:768px){
  .placement-wrap{grid-template-columns:1fr}
}

@media (max-width:768px){
  .hero-name{font-size:3rem}
  .hero-role{font-size:1.9rem}
  .about-grid{flex-direction:column}
  .navbar{display:none}
  .section{padding:90px 20px}
  .featured-stats{grid-template-columns:1fr 1fr}
}
