:root{--bg: #f5f2ee;--bg2: #edeae5;--bg3: #e4e0da;--border: #d4cfc8;--accent: #1a1a1a;--accent2: #c84b2f;--text: #1a1a1a;--muted: #6b6b62;--card: #eeebe6}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:DM Sans,sans-serif;font-weight:300;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.08'/%3E%3C/svg%3E");pointer-events:none;z-index:1000;opacity:.4}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 4rem;border-bottom:1px solid transparent;transition:border-color .3s,background .3s}nav.scrolled{background:#f5f2eeeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:var(--border)}.nav-logo{font-family:Bebas Neue,sans-serif;font-size:1.4rem;letter-spacing:.1em;color:var(--accent)}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--accent2)}#hero{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 4rem 6rem;position:relative;overflow:hidden}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(26,26,26,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(26,26,26,.06) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 100%);mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 100%)}.hero-tag{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent2);margin-bottom:1.5rem;opacity:0;animation:fadeUp .8s .2s forwards}.hero-name{font-family:Bebas Neue,sans-serif;font-size:clamp(5rem,14vw,13rem);line-height:.9;letter-spacing:-.01em;color:var(--text);opacity:0;animation:fadeUp .8s .4s forwards}.hero-name span{color:var(--accent2)}.hero-subtitle{font-size:1.1rem;color:var(--muted);margin-top:2rem;max-width:480px;opacity:0;animation:fadeUp .8s .6s forwards}.hero-cta{display:flex;gap:1.5rem;margin-top:3rem;opacity:0;animation:fadeUp .8s .8s forwards}.btn{font-family:DM Mono,monospace;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:1rem 2.5rem;border:1px solid var(--accent);color:#f5f2ee;background:var(--accent);transition:all .2s;display:inline-block;cursor:pointer}.btn:hover{background:var(--accent2);border-color:var(--accent2);color:#f5f2ee}.btn-ghost{background:transparent;color:var(--muted);border-color:var(--border)}.btn-ghost:hover{color:var(--text);border-color:var(--text);background:transparent}.hero-scroll{position:absolute;bottom:3rem;right:4rem;font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);writing-mode:vertical-rl;display:flex;align-items:center;gap:1rem;opacity:0;animation:fadeUp 1s 1.2s forwards}.hero-scroll:before{content:"";width:1px;height:60px;background:linear-gradient(to bottom,transparent,var(--muted))}section{padding:8rem 4rem}.section-label{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:var(--accent2);margin-bottom:1rem}.section-title{font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,6vw,5rem);line-height:1;letter-spacing:.02em;margin-bottom:4rem}#about{background:var(--bg2);border-top:1px solid var(--border)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}.about-text p{font-size:1.05rem;color:#444;line-height:1.85;margin-bottom:1.5rem}.about-text p strong{color:var(--text);font-weight:500}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.skill-item{padding:1.2rem 1.5rem;border:1px solid var(--border);margin:-1px 0 0 -1px;font-family:DM Mono,monospace;font-size:.8rem;color:var(--muted);letter-spacing:.05em;transition:all .2s;position:relative;overflow:hidden}.skill-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);transition:width .3s ease}.skill-item:hover{color:#f5f2ee}.skill-item:hover:before{width:100%}.skill-item span{position:relative;z-index:1}#projects{background:var(--bg)}.projects-list{display:flex;flex-direction:column;gap:0}.project-item{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:3rem;padding:2.5rem 0;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;transition:all .25s;position:relative}.project-item:first-child{border-top:1px solid var(--border)}.project-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);opacity:0;transition:opacity .25s;z-index:-1}.project-item:hover:after{opacity:.04}.project-num{font-family:Bebas Neue,sans-serif;font-size:2.5rem;color:var(--border);transition:color .25s}.project-item:hover .project-num{color:var(--accent2)}.project-info h3{font-family:Bebas Neue,sans-serif;font-size:2rem;letter-spacing:.03em;margin-bottom:.4rem;transition:color .25s}.project-item:hover .project-info h3{color:var(--accent2)}.project-info p{font-size:.875rem;color:var(--muted)}.project-tags{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.tag{font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;padding:.35rem .75rem;border:1px solid var(--border);color:var(--muted);transition:all .2s}.project-item:hover .tag{border-color:var(--accent2);color:var(--accent2)}.project-arrow{font-size:1.5rem;color:var(--muted);transition:all .25s;margin-left:2rem}.project-item:hover .project-arrow{color:var(--accent2);transform:translate(4px,-4px)}#experience{background:var(--bg2);border-top:1px solid var(--border)}.exp-list{display:flex;flex-direction:column;gap:0}.exp-item{display:grid;grid-template-columns:220px 1fr;gap:4rem;padding:3rem 0;border-bottom:1px solid var(--border)}.exp-item:first-child{border-top:1px solid var(--border)}.exp-date{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.1em;color:var(--muted);padding-top:.3rem}.exp-role{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.03em;margin-bottom:.3rem}.exp-company{font-family:DM Mono,monospace;font-size:.8rem;color:var(--accent2);letter-spacing:.1em;margin-bottom:1rem}.exp-desc{font-size:.9rem;color:var(--muted);line-height:1.8}#contact{background:var(--bg);border-top:1px solid var(--border);text-align:center}.contact-inner{max-width:700px;margin:0 auto}.contact-headline{font-family:Bebas Neue,sans-serif;font-size:clamp(3.5rem,8vw,7rem);line-height:.95;letter-spacing:.02em;margin-bottom:1.5rem}.contact-headline span{color:var(--accent2)}.contact-sub{color:var(--muted);font-size:1rem;margin-bottom:3rem}.contact-email{display:inline-block;font-family:DM Mono,monospace;font-size:1rem;letter-spacing:.05em;color:var(--text);text-decoration:none;border-bottom:1px solid var(--accent2);padding-bottom:.2rem;margin-bottom:3rem;transition:color .2s}.contact-email:hover{color:var(--accent2)}.contact-form{display:flex;flex-direction:column;gap:1rem;margin-top:3rem;text-align:left}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.form-group input,.form-group textarea{background:var(--bg3);border:1px solid var(--border);color:var(--text);padding:1rem 1.2rem;font-family:DM Sans,sans-serif;font-size:.9rem;outline:none;transition:border-color .2s;resize:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent)}.form-submit{margin-top:.5rem;align-self:flex-start;font-size:.8rem}footer{padding:2rem 4rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}footer p{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.1em;color:var(--muted)}.footer-links{display:flex;gap:2rem}.footer-links a{font-family:DM Mono,monospace;font-size:.7rem;letter-spacing:.1em;color:var(--muted);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent2)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:1;transform:translateY(0);transition:opacity .7s ease,transform .7s ease}.reveal.hidden{opacity:0;transform:translateY(40px)}.reveal.visible{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}::selection{background:var(--accent);color:#f5f2ee}@media(max-width:900px){nav{padding:1.5rem 2rem}#hero,section,footer{padding-left:2rem;padding-right:2rem}.about-grid{grid-template-columns:1fr;gap:3rem}.exp-item{grid-template-columns:1fr;gap:.5rem}.project-item{grid-template-columns:50px 1fr}.project-tags{display:none}.form-row{grid-template-columns:1fr}.nav-links{display:none}}
