.mockup-hint{text-align:center;font-family:var(--font-geist-mono);letter-spacing:.2em;color:var(--text-800);opacity:.5;margin-top:1.4rem;font-size:.6rem;display:block}.ph-name{color:var(--accent-500);text-transform:uppercase;font-family:Bebas Neue,sans-serif;font-size:2.4rem;line-height:1}.ph-note{font-family:var(--font-geist-mono);letter-spacing:.15em;color:var(--text-800);opacity:.6;font-size:.6rem}.macbook-wrap{flex-direction:column;align-items:center;width:100%;display:flex}.macbook-wrap .macbook{width:min(680px,94vw);cursor:inherit;background:0 0;border:none;padding:0}.macbook-wrap .macbook .mb-lid{background:linear-gradient(#3a3a3c 0%,#2a2a2c 100%);border-radius:14px 14px 0 0;padding:10px 10px 0;box-shadow:inset 0 1px #ffffff1f,0 -2px 12px #00000059}.macbook-wrap .macbook .mb-lid .mb-bezel{background:#1a1a1c;border-radius:10px 10px 0 0;padding:12px 12px 16px}.macbook-wrap .macbook .mb-lid .mb-screen{aspect-ratio:16/10;background:#050505;border-radius:4px;width:100%;transition:filter .5s,opacity .5s;position:relative;overflow:hidden}.macbook-wrap .macbook .mb-lid .mb-screen.off{filter:brightness(.05)}.macbook-wrap .macbook .mb-lid .mb-screen .mb-shot{object-fit:cover;object-position:top}.macbook-wrap .macbook .mb-lid .mb-screen .mb-placeholder{text-align:center;background:radial-gradient(circle at 50% 30%,#c4ff4414,#0000 55%),#0a0a0a;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:1rem;display:flex;position:absolute;inset:0}.macbook-wrap .macbook .mb-lid .mb-screen .mb-camera{z-index:2;background:radial-gradient(circle at 35% 35%,#444,#111 70%);border-radius:50%;width:6px;height:6px;position:absolute;top:6px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 2px #ffffff26}.macbook-wrap .macbook .mb-base{position:relative}.macbook-wrap .macbook .mb-base .mb-indent{background:linear-gradient(#2c2c2e,#1f1f21);border-radius:0 0 6px 6px;width:18%;height:10px;margin:0 auto}.macbook-wrap .macbook .mb-base .mb-bottom{background:linear-gradient(#4a4a4c 0%,#2e2e30 55%,#1c1c1e 100%);border-radius:0 0 10px 10px;height:12px;box-shadow:0 10px 28px #00000073,inset 0 1px #ffffff14}.galaxy-wrap{flex-direction:column;align-items:center;display:flex}.galaxy-wrap .galaxy{aspect-ratio:9/19.5;background:linear-gradient(160deg,#8b5cf6 0%,#6d28d9 45%,#4c1d95 100%);border:none;border-radius:30px;width:min(280px,70vw);padding:10px;position:relative;box-shadow:inset 0 0 0 2px #ffffff40,inset 0 0 0 4px #00000080,0 24px 50px #4c1d9559,0 8px 20px #00000080}.galaxy-wrap .galaxy .gx-buttons{flex-direction:column;gap:14px;display:flex;position:absolute;top:22%;right:-3px}.galaxy-wrap .galaxy .gx-buttons .gx-btn{background:linear-gradient(90deg,#a78bfa,#6d28d9);border-radius:2px;width:3px}.galaxy-wrap .galaxy .gx-buttons .gx-btn.vol-up,.galaxy-wrap .galaxy .gx-buttons .gx-btn.vol-down{height:34px}.galaxy-wrap .galaxy .gx-buttons .gx-btn.power{height:48px}.galaxy-wrap .galaxy .gx-screen{background:#050505;border-radius:22px;width:100%;height:100%;transition:filter .5s,opacity .5s;position:relative;overflow:hidden}.galaxy-wrap .galaxy .gx-screen.off{filter:brightness(.05)}.galaxy-wrap .galaxy .gx-screen .gx-shot{object-fit:cover;object-position:top}.galaxy-wrap .galaxy .gx-screen .gx-placeholder{text-align:center;background:radial-gradient(circle at 50% 30%,#8b5cf626,#0000 60%),#0a0a0a;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:1rem;display:flex;position:absolute;inset:0}.galaxy-wrap .galaxy .gx-screen .gx-placeholder .ph-name{font-size:1.8rem}.galaxy-wrap .galaxy .gx-screen .gx-camera{z-index:2;background:radial-gradient(circle at 35% 35%,#333,#000 70%);border-radius:50%;width:12px;height:12px;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 3px #fff3}
.project-page{background-color:var(--background-50);min-height:100vh;padding-top:9rem!important}.project-page .back-link{font-family:var(--font-geist-mono);letter-spacing:.1em;color:var(--text-950);border-bottom:2px solid var(--accent-500);margin-bottom:3rem;padding-bottom:.2rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-block}.project-page .back-link:hover{color:var(--accent-500)}.project-page .project-header{flex-direction:column;gap:1rem;margin-bottom:4rem;display:flex}.project-page .project-header .project-role{font-family:var(--font-geist-mono);letter-spacing:.15em;font-size:.8rem;font-weight:700}.project-page .project-header h1{color:var(--text-950);font-size:clamp(3.5rem,10vw,8rem)}.project-page .project-grid{grid-template-columns:minmax(300px,1fr) minmax(0,1.4fr);align-items:start;gap:5rem;display:grid}@media (max-width:1024px){.project-page .project-grid{grid-template-columns:1fr}}.project-page .project-info-col{flex-direction:column;gap:3rem;display:flex;position:sticky;top:9rem}@media (max-width:1024px){.project-page .project-info-col{position:static}}.project-page .project-info-col .info-block{flex-direction:column;gap:1.2rem;display:flex}.project-page .project-info-col .info-block h3{font-family:var(--font-geist-mono);letter-spacing:.1em;font-size:.8rem}.project-page .project-info-col .info-block p{color:var(--text-900);max-width:480px;font-size:1.1rem;line-height:1.7}.project-page .project-info-col .info-block .stack-tags{flex-wrap:wrap;gap:.8rem;display:flex}.project-page .project-info-col .info-block .stack-tags .stack-tag{font-family:var(--font-geist-mono);text-transform:uppercase;border:2px solid var(--text-950);color:var(--text-950);padding:.4rem .9rem;font-size:.8rem;font-weight:700}.project-page .project-info-col .visit-btn{letter-spacing:.05em;background-color:var(--accent-500);width:fit-content;color:var(--background-50);border:3px solid var(--accent-500);box-shadow:6px 6px 0 var(--text-950);padding:.6rem 2rem;font-family:Bebas Neue,sans-serif;font-size:1.6rem;text-decoration:none}.project-page .project-info-col .visit-btn .btn-arrow{font-family:var(--font-geist-sans),sans-serif;transition:transform .3s cubic-bezier(.165,.84,.44,1);display:inline-block}.project-page .project-info-col .visit-btn:hover{color:var(--accent-500);box-shadow:8px 8px 0 var(--accent-500);background-color:#0000;transform:translate(-2px,-2px)}.project-page .project-info-col .visit-btn:hover .btn-arrow{transform:translate(2px,-2px)}.project-page .project-devices{flex-direction:column;align-items:center;gap:5rem;display:flex}
