/* ===== VARIABLES ===== */
:root {
  --neon-cyan:   #00fff7;
  --neon-pink:   #ff006e;
  --neon-purple: #bf00ff;
  --neon-yellow: #ffe600;
  --neon-green:  #00ff88;
  --bg-deep:     #04040f;
  --bg-card:     rgba(10,10,30,0.85);
  --bg-glass:    rgba(0,255,247,0.05);
  --text-main:   #e8e8ff;
  --text-muted:  #7a7aaa;
  --border-neon: rgba(0,255,247,0.25);
  --font-display:'Orbitron', monospace;
  --font-jp:     'Noto Serif JP', serif;
  --font-mono:   'Share Tech Mono', monospace;
}

/* ===== RESET ===== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{background:var(--bg-deep);color:var(--text-main);font-family:var(--font-mono);cursor:none;overflow-x:hidden}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--bg-deep)}
::-webkit-scrollbar-thumb{background:var(--neon-cyan);border-radius:2px}

/* ===== CURSOR ===== */
#cursor{position:fixed;top:0;left:0;z-index:99999;pointer-events:none}
.cursor-dot{width:8px;height:8px;background:var(--neon-cyan);border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 10px var(--neon-cyan),0 0 30px var(--neon-cyan)}
.cursor-ring{width:36px;height:36px;border:1.5px solid var(--neon-cyan);border-radius:50%;position:absolute;transform:translate(-50%,-50%);transition:all 0.12s ease;box-shadow:0 0 8px var(--neon-cyan)}

/* ===== CANVAS / NOISE / SCANLINES ===== */
#bg-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}
.noise{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.scanlines{position:fixed;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,247,.015) 2px,rgba(0,255,247,.015) 4px)}

/* ===== LOADER ===== */
#loader{position:fixed;inset:0;z-index:99998;background:var(--bg-deep);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem;transition:opacity 0.6s,visibility 0.6s}
#loader.hidden{opacity:0;visibility:hidden;pointer-events:none}
.loader-logo{font-family:var(--font-display);font-size:1.5rem;font-weight:900;color:var(--neon-cyan);text-shadow:0 0 30px var(--neon-cyan);letter-spacing:.1em;animation:pulse-glow 1s ease-in-out infinite}
.loader-jp{font-family:var(--font-jp);font-size:.8rem;color:var(--neon-pink);letter-spacing:.5em;animation:pulse-glow 1s ease-in-out infinite .2s}
.loader-bar{width:200px;height:2px;background:rgba(255,255,255,.05);position:relative;overflow:hidden}
.loader-bar-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink));box-shadow:0 0 10px var(--neon-cyan);animation:loader-progress 1.8s ease forwards}
.loader-pct{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.3em;color:var(--text-muted)}
@keyframes loader-progress{to{width:100%}}
@keyframes pulse-glow{0%,100%{opacity:.6;text-shadow:0 0 10px currentColor}50%{opacity:1;text-shadow:0 0 30px currentColor,0 0 60px currentColor}}

/* ===== NAV ===== */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 2.5rem;display:flex;align-items:center;justify-content:space-between;background:rgba(4,4,15,.7);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-neon);transition:all .3s}
.nav-logo{font-family:var(--font-display);font-size:.95rem;font-weight:900;color:var(--neon-cyan);letter-spacing:.1em;text-shadow:0 0 20px var(--neon-cyan);text-decoration:none}
.nav-jp{font-family:var(--font-jp);font-size:.65rem;color:var(--neon-pink);display:block;letter-spacing:.3em}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--text-muted);text-decoration:none;font-family:var(--font-display);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;transition:all .3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:var(--neon-cyan);transform:scaleX(0);transition:transform .3s}
.nav-links a:hover,.nav-links a.active{color:var(--neon-cyan);text-shadow:0 0 12px var(--neon-cyan)}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--neon-cyan);transition:all .3s}

/* ===== SECTIONS ===== */
section{position:relative;z-index:10;min-height:100vh}
.section-inner{max-width:1100px;margin:0 auto;padding:6rem 2rem}
.section-header{margin-bottom:4rem;text-align:center}
.section-tag{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.5em;color:var(--neon-pink);text-transform:uppercase;margin-bottom:.5rem}
.section-title{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:900;letter-spacing:.05em;color:var(--text-main)}
.section-title span{color:var(--neon-cyan);text-shadow:0 0 20px var(--neon-cyan)}
.section-jp{font-family:var(--font-jp);font-size:.8rem;color:var(--text-muted);letter-spacing:.3em;margin-top:.3rem}
.section-line{width:60px;height:2px;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink));margin:1rem auto 0;box-shadow:0 0 10px var(--neon-cyan)}

/* ===== HOME ===== */
#home{display:flex;align-items:center;justify-content:center;padding:6rem 2rem 2rem;overflow:hidden}
.home-inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1100px;width:100%}
.home-tag{font-size:.65rem;letter-spacing:.4em;color:var(--neon-pink);text-transform:uppercase;margin-bottom:1rem;display:flex;align-items:center;gap:.8rem}
.home-tag::before{content:'';display:inline-block;width:30px;height:1px;background:var(--neon-pink);box-shadow:0 0 8px var(--neon-pink)}
.home-name{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.5rem);font-weight:900;line-height:1.1;letter-spacing:.05em;margin-bottom:.5rem}
.home-name .delta{color:var(--neon-yellow);text-shadow:0 0 20px var(--neon-yellow)}
.home-name .name{color:var(--neon-cyan);text-shadow:0 0 30px var(--neon-cyan)}
.home-title{font-family:var(--font-mono);font-size:.9rem;color:var(--neon-purple);margin-bottom:1.5rem;letter-spacing:.1em}
.cursor-blink{display:inline-block;width:2px;height:1em;background:var(--neon-purple);margin-left:2px;animation:blink 1s step-end infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
.home-desc{color:var(--text-muted);font-size:.85rem;line-height:1.9;margin-bottom:2rem;max-width:420px}
.home-btns{display:flex;gap:1rem;flex-wrap:wrap}

/* BUTTONS */
.btn{padding:.75rem 1.8rem;font-family:var(--font-display);font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:.5rem}
.btn-primary{background:transparent;color:var(--neon-cyan);border:1px solid var(--neon-cyan);box-shadow:0 0 15px rgba(0,255,247,.3),inset 0 0 15px rgba(0,255,247,.05)}
.btn-primary:hover{background:var(--neon-cyan);color:var(--bg-deep);box-shadow:0 0 40px rgba(0,255,247,.6)}
.btn-secondary{background:transparent;color:var(--neon-pink);border:1px solid var(--neon-pink);box-shadow:0 0 15px rgba(255,0,110,.2)}
.btn-secondary:hover{background:var(--neon-pink);color:#fff;box-shadow:0 0 40px rgba(255,0,110,.5)}

/* PROFILE */
.home-visual{display:flex;align-items:center;justify-content:center;position:relative}
.profile-wrap{position:relative;display:flex;align-items:center;justify-content:center}
.profile-ring{position:absolute;border-radius:50%;border:1px solid;animation:rotate-ring linear infinite}
.ring-1{width:220px;height:220px;border-color:rgba(0,255,247,.4);animation-duration:8s}
.ring-2{width:270px;height:270px;border-color:rgba(255,0,110,.3);animation-duration:12s;animation-direction:reverse;border-style:dashed}
.ring-3{width:320px;height:320px;border-color:rgba(191,0,255,.2);animation-duration:20s}
@keyframes rotate-ring{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.profile-hex{width:160px;height:160px;clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);overflow:hidden;box-shadow:0 0 60px rgba(0,255,247,.5);position:relative}
.profile-hex img{width:100%;height:100%;object-fit:cover;filter:saturate(1.2) contrast(1.05)}
.profile-hex::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,255,247,.1),transparent,rgba(255,0,110,.1))}
.ring-dots{position:absolute;width:270px;height:270px;animation:rotate-ring 15s linear infinite}
.ring-dot{position:absolute;width:6px;height:6px;background:var(--neon-cyan);border-radius:50%;box-shadow:0 0 10px var(--neon-cyan);top:50%;left:50%}
.social-float{position:absolute;display:flex;flex-direction:column;gap:.7rem;right:-50px}
.social-float a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-neon);color:var(--neon-cyan);text-decoration:none;font-size:.8rem;transition:all .3s;background:var(--bg-glass);backdrop-filter:blur(10px)}
.social-float a:hover{border-color:var(--neon-cyan);box-shadow:0 0 20px rgba(0,255,247,.5);transform:translateX(-4px);color:var(--bg-deep);background:var(--neon-cyan)}

/* ===== ABOUT ===== */
.about-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}
.about-card{background:var(--bg-card);border:1px solid var(--border-neon);padding:2rem;position:relative;backdrop-filter:blur(10px)}
.about-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-purple));box-shadow:0 0 15px var(--neon-cyan)}
.about-card-label{font-size:.6rem;letter-spacing:.4em;color:var(--neon-cyan);text-transform:uppercase;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}
.stat-row{display:flex;flex-direction:column;gap:1rem}
.stat-item{display:flex;flex-direction:column;gap:.4rem}
.stat-label{font-size:.65rem;color:var(--text-muted);letter-spacing:.2em}
.stat-top{display:flex;justify-content:space-between}
.stat-bar{height:3px;background:rgba(255,255,255,.05);position:relative;overflow:hidden}
.stat-bar-fill{height:100%;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-purple));box-shadow:0 0 8px var(--neon-cyan);transform-origin:left;animation:fillBar 1.5s ease forwards;transform:scaleX(0)}
@keyframes fillBar{to{transform:scaleX(1)}}
.stat-pct{font-size:.65rem;color:var(--neon-cyan)}
.skill-wrap{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.skill-tag{font-size:.6rem;letter-spacing:.2em;padding:.3rem .8rem;border:1px solid;text-transform:uppercase;transition:all .3s;cursor:default}
.skill-tag:nth-child(3n+1){border-color:rgba(0,255,247,.4);color:var(--neon-cyan)}
.skill-tag:nth-child(3n+2){border-color:rgba(255,0,110,.4);color:var(--neon-pink)}
.skill-tag:nth-child(3n+3){border-color:rgba(191,0,255,.4);color:var(--neon-purple)}
.skill-tag:hover{background:currentColor;color:var(--bg-deep);box-shadow:0 0 15px currentColor}
.about-text p{color:var(--text-muted);line-height:2;font-size:.85rem;margin-bottom:1.5rem}
.about-text p strong{color:var(--neon-cyan);font-family:var(--font-display);font-size:.8rem}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
.info-item{background:var(--bg-glass);border:1px solid var(--border-neon);padding:.8rem 1rem;display:flex;align-items:center;gap:.7rem}
.info-item i{color:var(--neon-cyan);font-size:.8rem;width:16px}
.info-item-label{font-size:.6rem;color:var(--text-muted);letter-spacing:.2em;display:block}
.info-item-val{font-size:.75rem;color:var(--text-main)}

/* ===== PROJECTS ===== */
.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}
.project-card{background:var(--bg-card);border:1px solid var(--border-neon);padding:1.8rem;position:relative;overflow:hidden;transition:all .4s;backdrop-filter:blur(10px);cursor:pointer}
.project-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--neon-accent,var(--neon-cyan));box-shadow:0 0 15px var(--neon-accent,var(--neon-cyan));transform:scaleX(0);transform-origin:left;transition:transform .4s}
.project-card:hover{border-color:var(--neon-accent,var(--neon-cyan));transform:translateY(-6px);box-shadow:0 20px 60px rgba(0,0,0,.4)}
.project-card:hover::before{transform:scaleX(1)}
.project-number{font-family:var(--font-display);font-size:3rem;font-weight:900;color:rgba(0,255,247,.06);position:absolute;top:1rem;right:1.2rem;line-height:1;letter-spacing:-.05em}
.project-icon{width:48px;height:48px;border:1px solid var(--border-neon);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--neon-accent,var(--neon-cyan));margin-bottom:1.2rem;transition:all .3s;background:var(--bg-glass)}
.project-card:hover .project-icon{background:var(--neon-accent,var(--neon-cyan));color:var(--bg-deep);box-shadow:0 0 30px var(--neon-accent,var(--neon-cyan))}
.project-name{font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:.05em;color:var(--text-main);margin-bottom:.5rem}
.project-since{font-size:.6rem;letter-spacing:.3em;color:var(--neon-accent,var(--neon-cyan));text-transform:uppercase;margin-bottom:.8rem}
.project-desc{font-size:.78rem;color:var(--text-muted);line-height:1.8;margin-bottom:1.2rem}
.project-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}
.tag{font-size:.55rem;letter-spacing:.2em;padding:.2rem .6rem;border:1px solid rgba(191,0,255,.3);color:var(--neon-purple);text-transform:uppercase;background:rgba(191,0,255,.05)}
.project-url{font-size:.65rem;letter-spacing:.1em;color:var(--neon-accent,var(--neon-cyan));text-decoration:none;display:flex;align-items:center;gap:.4rem;transition:gap .3s;border-top:1px solid rgba(0,255,247,.1);padding-top:1rem}
.project-url:hover{gap:.8rem}

/* ===== CONTACT ===== */
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.contact-intro{font-size:.85rem;color:var(--text-muted);line-height:2;margin-bottom:2rem}
.contact-intro span{color:var(--neon-cyan)}
.contact-links{display:flex;flex-direction:column;gap:.8rem}
.contact-link{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;background:var(--bg-card);border:1px solid var(--border-neon);text-decoration:none;transition:all .3s;position:relative;overflow:hidden}
.contact-link::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--link-color,var(--neon-cyan));box-shadow:0 0 12px var(--link-color,var(--neon-cyan))}
.contact-link:hover{border-color:var(--link-color,var(--neon-cyan));background:rgba(0,255,247,.04);transform:translateX(4px)}
.contact-link-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);font-size:.9rem;color:var(--link-color,var(--neon-cyan));flex-shrink:0}
.contact-link-label{font-size:.6rem;letter-spacing:.3em;color:var(--text-muted);display:block}
.contact-link-val{font-size:.8rem;color:var(--text-main)}
.contact-form-wrap{background:var(--bg-card);border:1px solid var(--border-neon);padding:2rem;position:relative;backdrop-filter:blur(10px)}
.contact-form-wrap::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--neon-pink),var(--neon-purple));box-shadow:0 0 15px var(--neon-pink)}
.form-top-label{font-size:.6rem;letter-spacing:.3em;color:var(--neon-pink);margin-bottom:1.5rem;text-transform:uppercase}
.form-group{margin-bottom:1.2rem}
.form-label{display:block;font-size:.6rem;letter-spacing:.3em;color:var(--neon-cyan);text-transform:uppercase;margin-bottom:.5rem}
.form-input,.form-textarea{width:100%;padding:.8rem 1rem;background:rgba(0,255,247,.03);border:1px solid rgba(0,255,247,.2);color:var(--text-main);font-family:var(--font-mono);font-size:.8rem;transition:all .3s;outline:none}
.form-input:focus,.form-textarea:focus{border-color:var(--neon-cyan);box-shadow:0 0 15px rgba(0,255,247,.2);background:rgba(0,255,247,.06)}
.form-textarea{height:110px;resize:none}
.form-submit{width:100%;padding:1rem;background:transparent;border:1px solid var(--neon-cyan);color:var(--neon-cyan);font-family:var(--font-display);font-size:.7rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;transition:all .3s;box-shadow:0 0 15px rgba(0,255,247,.2)}
.form-submit:hover{background:var(--neon-cyan);color:var(--bg-deep);box-shadow:0 0 40px rgba(0,255,247,.5)}
.form-msg{margin-top:1rem;font-size:.75rem;padding:.6rem 1rem;border:1px solid;display:none}
.form-msg.success{color:var(--neon-green);border-color:var(--neon-green);background:rgba(0,255,136,.05)}
.form-msg.error{color:var(--neon-pink);border-color:var(--neon-pink);background:rgba(255,0,110,.05)}

/* ===== FOOTER ===== */
footer{position:relative;z-index:10;border-top:1px solid var(--border-neon);padding:2rem;text-align:center;background:rgba(4,4,15,.9)}
.footer-jp{font-family:var(--font-jp);font-size:1.2rem;color:rgba(0,255,247,.2);display:block;margin-bottom:.5rem}
.footer-copy{font-size:.65rem;letter-spacing:.3em;color:var(--text-muted);text-transform:uppercase;margin-bottom:1rem}
.footer-copy span{color:var(--neon-cyan)}
.footer-socials{display:flex;justify-content:center;gap:1.2rem}
.footer-socials a{color:var(--text-muted);font-size:1rem;transition:all .3s}
.footer-socials a:hover{transform:translateY(-3px)}

/* ===== JP AMBIENT ===== */
.jp-ambient{position:absolute;pointer-events:none;font-family:var(--font-jp);font-size:.7rem;color:rgba(0,255,247,.08);letter-spacing:.3em;animation:float-jp 8s ease-in-out infinite;writing-mode:vertical-lr}
@keyframes float-jp{0%,100%{transform:translateY(0);opacity:.06}50%{transform:translateY(-20px);opacity:.12}}

/* ===== GLITCH ===== */
.glitch{position:relative}
.glitch::before,.glitch::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;font-family:var(--font-display);font-size:inherit;font-weight:inherit;letter-spacing:inherit}
.glitch::before{color:var(--neon-pink);animation:glitch1 3s infinite;clip-path:polygon(0 0,100% 0,100% 35%,0 35%)}
.glitch::after{color:var(--neon-cyan);animation:glitch2 3s infinite;clip-path:polygon(0 65%,100% 65%,100% 100%,0 100%)}
@keyframes glitch1{0%,90%,100%{transform:none;opacity:0}91%{transform:translate(-2px,1px);opacity:.7}93%{transform:translate(2px,-1px);opacity:.7}95%{transform:translate(-1px,2px);opacity:.5}97%{transform:none;opacity:0}}
@keyframes glitch2{0%,88%,100%{transform:none;opacity:0}89%{transform:translate(2px,-2px);opacity:.7}91%{transform:translate(-2px,1px);opacity:.5}93%{transform:none;opacity:0}}

/* ===== REVEAL ===== */
.reveal{opacity:0;transform:translateY(30px);transition:all .7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ===== PAGE HERO (sub pages) ===== */
.page-hero{padding:10rem 2rem 4rem;text-align:center;position:relative;z-index:10}
.page-hero-tag{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.5em;color:var(--neon-pink);text-transform:uppercase;margin-bottom:.8rem}
.page-hero-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);font-weight:900;letter-spacing:.05em;color:var(--text-main);margin-bottom:.4rem}
.page-hero-title span{color:var(--neon-cyan);text-shadow:0 0 30px var(--neon-cyan)}
.page-hero-jp{font-family:var(--font-jp);font-size:1rem;color:var(--text-muted);letter-spacing:.5em}
.page-hero-line{width:60px;height:2px;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink));margin:1.2rem auto 0;box-shadow:0 0 10px var(--neon-cyan)}

/* ===== 404 ===== */
.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem;text-align:center;position:relative;z-index:10}
.not-found-num{font-family:var(--font-display);font-size:8rem;font-weight:900;color:transparent;-webkit-text-stroke:2px var(--neon-cyan);text-shadow:0 0 40px rgba(0,255,247,.3);line-height:1}
.not-found-msg{font-size:.9rem;color:var(--text-muted);font-family:var(--font-jp);letter-spacing:.3em}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  .home-inner{grid-template-columns:1fr;text-align:center}
  .home-desc{margin:0 auto 2rem}
  .home-btns{justify-content:center}
  .home-visual{margin-top:2rem}
  .social-float{flex-direction:row;position:relative;right:auto;margin-top:1rem;justify-content:center}
  .about-grid{grid-template-columns:1fr}
  .contact-wrap{grid-template-columns:1fr}
  .info-grid{grid-template-columns:1fr}
  nav{padding:1rem 1.5rem}
  .nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:rgba(4,4,15,.98);padding:1.5rem;gap:1.2rem;border-bottom:1px solid var(--border-neon)}
  .nav-links.open{display:flex}
  .nav-hamburger{display:flex}
}
@media(max-width:480px){
  .projects-grid{grid-template-columns:1fr}
  .section-inner{padding:4rem 1.2rem}
  .home-name{font-size:1.8rem}
}
