@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Manrope:wght@300;400;500;600;700;800&display=swap";
:root{--bg:#f4f1eb;--bg-warm:#ebe6dc;--ink:#1a1a1a;--ink-soft:#3d3d3d;--ink-muted:#8a8a8a;--accent:#ff4d00;--accent-hover:#e64500;--cream:#faf8f4}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--accent);color:var(--bg)}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);cursor:crosshair;font-family:Manrope,sans-serif;overflow-x:hidden}.horizontal-scroll{width:fit-content;display:flex}.panel{border-right:1px solid #0000001a;flex-direction:column;min-width:100vw;height:100vh;padding:2rem 4rem;display:flex;position:relative;overflow:hidden auto}.panel::-webkit-scrollbar{width:6px}.panel::-webkit-scrollbar-track{background:0 0}.panel::-webkit-scrollbar-thumb{background:var(--ink-muted);border-radius:3px}.panel::-webkit-scrollbar-thumb:hover{background:var(--accent)}.nav-vertical{z-index:100;flex-direction:column;gap:1.5rem;transition:all .4s;display:flex;position:fixed;top:50%;left:2rem;transform:translateY(-50%)}.nav-dot{border:2px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;width:12px;height:12px;transition:all .3s;position:relative}.nav-dot:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;opacity:0;color:var(--ink);font-family:Geist Mono,monospace;font-size:.7rem;transition:opacity .3s;position:absolute;top:50%;left:25px;transform:translateY(-50%)}.nav-dot:hover:before{opacity:1}.nav-dot.active{background:var(--accent);border-color:var(--accent)}.nav-vertical.nav-light .nav-dot{border-color:#fff9}.nav-vertical.nav-light .nav-dot:before{color:#fffc}.nav-vertical.nav-light .nav-dot.active{background:var(--accent);border-color:var(--accent)}.top-bar{z-index:100;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:1.5rem 4rem;display:flex;position:fixed;top:0;left:0;right:0}.logo{color:#fff;font-family:Instrument Serif,serif;font-size:1.5rem;font-style:italic}.time-location{color:#fff;text-transform:uppercase;letter-spacing:.1em;font-family:Geist Mono,monospace;font-size:.75rem}.panel-hero{background:var(--bg);text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:2rem 4rem;position:relative}.hero-number{color:#0000;-webkit-text-stroke:1px #0000000d;z-index:0;font-family:Instrument Serif,serif;font-size:20rem;font-style:italic;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-content{z-index:1;flex-direction:column;align-items:center;max-width:900px;display:flex;position:relative}.hero-eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--ink-muted);align-items:center;gap:1rem;margin-bottom:2rem;font-family:Geist Mono,monospace;font-size:.75rem;display:inline-flex}.hero-eyebrow:before,.hero-eyebrow:after{content:"";background:var(--ink-muted);width:40px;height:1px}.hero-title{text-align:center;margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:clamp(3rem,8vw,6rem);font-weight:400;line-height:1.05}.hero-title .line-1{display:block}.hero-title .line-2{color:var(--accent);font-style:italic;display:block}.hero-description{color:var(--ink-soft);text-align:center;max-width:550px;margin-bottom:3rem;font-size:1.1rem;line-height:1.8}.hero-cta{background:var(--ink);color:var(--bg);align-items:center;gap:1rem;padding:1rem 2rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:inline-flex}.hero-cta:hover{background:var(--accent);transform:translate(10px)}.hero-cta .arrow{transition:transform .3s}.hero-cta:hover .arrow{transform:translate(5px)}.scroll-hint{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}.scroll-hint span{text-transform:uppercase;letter-spacing:.2em;color:var(--ink-muted);font-family:Geist Mono,monospace;font-size:.65rem}.scroll-hint .line{background:linear-gradient(to bottom,var(--accent),transparent);width:1px;height:50px;animation:2s infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.3}50%{opacity:1}}.panel-about-wrapper{background:var(--ink);color:var(--bg);grid-template-columns:1fr 1fr;min-height:100vh;padding:0;display:grid}.about-left{border-right:1px solid #ffffff1a;flex-direction:column;justify-content:center;padding:8rem 4rem;display:flex}.about-label{text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-bottom:2rem;font-family:Geist Mono,monospace;font-size:.7rem}.about-title{margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:clamp(2.5rem,5vw,4rem);font-weight:400;line-height:1.2}.about-title em{color:var(--accent);font-style:italic}.about-text{color:#ffffffb3;max-width:400px;font-size:1rem;line-height:1.9}.about-right{flex-direction:column;justify-content:center;gap:3rem;padding:8rem 4rem;display:flex}.info-block{border-bottom:1px solid #ffffff1a;padding-bottom:2rem}.info-block:last-child{border-bottom:none}.info-label{text-transform:uppercase;letter-spacing:.15em;color:#fff6;margin-bottom:.75rem;font-family:Geist Mono,monospace;font-size:.65rem}.info-value{font-family:Instrument Serif,serif;font-size:1.5rem;font-style:italic}.info-value a{color:inherit;text-decoration:none;transition:color .3s}.info-value a:hover{color:var(--accent)}.panel-skills-wrapper{background:var(--cream);min-height:100vh;padding:6rem 8rem}.skills-header{border-bottom:1px solid #0000001a;justify-content:space-between;align-items:flex-end;margin-bottom:5rem;padding-bottom:2rem;display:flex}.skills-title{font-family:Instrument Serif,serif;font-size:clamp(3rem,6vw,5rem);font-weight:400}.skills-count{color:var(--ink-muted);font-family:Geist Mono,monospace;font-size:.75rem}.skills-grid{background:#0000001a;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.skill-cell{background:var(--cream);padding:3rem;transition:all .4s;position:relative;overflow:hidden}.skill-cell:before{content:"";background:var(--accent);z-index:0;width:100%;height:100%;transition:transform .4s cubic-bezier(.175,.885,.32,1.275);position:absolute;top:0;left:0;transform:translateY(100%)}.skill-cell:hover:before{transform:translateY(0)}.skill-cell:hover{color:var(--bg)}.skill-cell>*{z-index:1;position:relative}.skill-number{color:var(--ink-muted);margin-bottom:2rem;font-family:Geist Mono,monospace;font-size:.7rem;transition:color .4s}.skill-cell:hover .skill-number{color:#fff9}.skill-name{margin-bottom:1rem;font-family:Instrument Serif,serif;font-size:1.75rem;font-style:italic}.skill-tags{flex-wrap:wrap;gap:.5rem;display:flex}.skill-tag{background:#0000000d;padding:.3rem .6rem;font-family:Geist Mono,monospace;font-size:.65rem;transition:background .4s}.skill-cell:hover .skill-tag{background:#fff3}.panel-projects-wrapper{background:var(--bg);min-width:100vw;min-height:100vh;padding:6rem 4rem}.projects-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:3rem;display:flex}.projects-label{text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-bottom:.5rem;font-family:Geist Mono,monospace;font-size:.7rem;display:block}.projects-title{font-family:Instrument Serif,serif;font-size:clamp(2rem,4vw,3rem);font-weight:400}.projects-title em{color:var(--accent);font-style:italic}.projects-intro{max-width:300px;color:var(--ink-soft);text-align:right;font-size:.95rem;line-height:1.7}.projects-grid{flex:1;grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.project-card{background:var(--cream);color:inherit;cursor:pointer;border:1px solid #00000014;text-decoration:none;transition:all .4s;display:block;overflow:hidden}.project-card:hover{border-color:var(--accent);transform:translateY(-8px);box-shadow:0 20px 40px #0000001a}.project-card-inner{flex-direction:column;height:100%;padding:2rem;display:flex}.project-top{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.project-category{text-transform:uppercase;letter-spacing:.1em;background:var(--ink);color:var(--bg);padding:.4rem .8rem;font-family:Geist Mono,monospace;font-size:.65rem}.project-year{color:var(--ink-muted);font-family:Geist Mono,monospace;font-size:.7rem}.project-initials{color:var(--ink-muted);opacity:.3;margin:1rem 0;font-family:Instrument Serif,serif;font-size:4rem;font-style:italic;transition:all .4s}.project-card:hover .project-initials{color:var(--accent);opacity:.5;transform:scale(1.1)}.project-bottom{margin-top:auto}.project-name{margin-bottom:.75rem;font-family:Instrument Serif,serif;font-size:1.5rem;font-weight:400}.project-desc{color:var(--ink-soft);margin-bottom:1.25rem;font-size:.9rem;line-height:1.6}.project-link{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);align-items:center;gap:.5rem;font-family:Geist Mono,monospace;font-size:.75rem;transition:gap .3s;display:inline-flex}.project-card:hover .project-link{gap:1rem}.panel-experience-wrapper{background:var(--ink);color:var(--bg);min-width:100vw;min-height:100vh;padding:6rem 4rem}.exp-header{margin-bottom:5rem}.exp-title{margin-bottom:1rem;font-family:Instrument Serif,serif;font-size:clamp(3rem,6vw,5rem);font-weight:400}.exp-subtitle{color:#ffffff80;font-size:1rem}.timeline{flex-direction:column;gap:2rem;display:flex}.timeline-item{border-left:2px solid #ffffff1a;padding:2rem;transition:all .3s;position:relative}.timeline-item:before{content:"";background:var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:2rem;left:-7px}.timeline-item:hover{border-left-color:var(--accent);background:#ffffff05}.timeline-date{color:var(--accent);margin-bottom:1.5rem;font-family:Geist Mono,monospace;font-size:.7rem}.timeline-role{margin-bottom:.5rem;font-family:Instrument Serif,serif;font-size:1.5rem;font-style:italic}.timeline-company{color:#ffffff80;margin-bottom:1.5rem;font-size:.9rem}.timeline-desc{color:#ffffffb3;font-size:.9rem;line-height:1.7}.panel-contact-wrapper{background:var(--accent);color:var(--bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:4rem;display:flex}.contact-huge{margin-bottom:3rem;font-family:Instrument Serif,serif;font-size:clamp(4rem,12vw,10rem);font-style:italic;font-weight:400;line-height:1}.contact-email{color:var(--ink);background:var(--bg);margin-bottom:3rem;padding:1.5rem 3rem;font-family:Geist Mono,monospace;font-size:1.25rem;text-decoration:none;transition:all .3s}.contact-email:hover{background:var(--ink);color:var(--bg)}.contact-details{gap:4rem;display:flex}.contact-item{text-align:center}.contact-item-label{text-transform:uppercase;letter-spacing:.15em;color:#fff9;margin-bottom:.5rem;font-family:Geist Mono,monospace;font-size:.65rem}.contact-item-value{font-size:1rem}.contact-item-value a{color:var(--ink);text-decoration:none}.progress-bar{background:var(--accent);z-index:1000;height:3px;transition:width .1s;position:fixed;bottom:0;left:0}@media (max-width:1024px){.horizontal-scroll{flex-direction:column;width:100%}.panel{border-bottom:1px solid #0000001a;border-right:none;min-width:100%;height:auto;min-height:100vh;overflow-y:visible}.panel-projects-wrapper,.panel-experience-wrapper{min-width:100%}.projects-grid{grid-template-columns:1fr}.project-card{width:100%}.nav-vertical{display:none}.panel-hero{padding:8rem 2rem 4rem}.hero-number{font-size:8rem}.panel-about-wrapper{grid-template-columns:1fr}.about-left{border-bottom:1px solid #ffffff1a;border-right:none}.skills-grid{grid-template-columns:1fr}.timeline{flex-direction:column}.contact-details{flex-direction:column;gap:2rem}}@media (max-width:768px){.top-bar{padding:1rem 2rem}.panel{padding:4rem 1.5rem}.skills-header{flex-direction:column;align-items:flex-start;gap:1rem}.projects-header{flex-direction:column;gap:1.5rem}.panel-skills-wrapper,.panel-experience-wrapper{padding:4rem 2rem}}
