:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;color:#333;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}h1,h2,h3,h4,h5,h6{line-height:1.2}a{color:inherit;text-decoration:none}ul{list-style-position:inside}img{max-width:100%;height:auto;display:block}*{margin:0;padding:0;box-sizing:border-box}.portfolio{width:100%;background:#fff;color:#000;overflow-x:hidden;position:relative}.geometric-background{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.grid-overlay{position:absolute;width:100%;height:100%;background-image:linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px);background-size:50px 50px}.floating-shape{position:absolute;border:2px solid rgba(0,0,0,.08);animation:floatShape 20s infinite ease-in-out}.shape-1{width:300px;height:300px;top:10%;right:5%;transform:rotate(45deg);animation-delay:0s}.shape-2{width:200px;height:200px;bottom:15%;left:10%;clip-path:polygon(50% 0%,100% 100%,0% 100%);animation-delay:7s}.shape-3{width:250px;height:250px;top:50%;left:50%;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);animation-delay:14s}.diagonal-line{position:absolute;width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent);transform-origin:left}.line-1{top:30%;transform:rotate(-15deg)}.line-2{bottom:30%;transform:rotate(15deg)}@keyframes floatShape{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(20px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:4rem 2rem;position:relative;z-index:1}.hero-grid{max-width:1400px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.hero-left{position:relative}.geometric-frame{position:absolute;inset:-30px;pointer-events:none}.frame-corner{position:absolute;width:40px;height:40px;border:2px solid #000}.frame-corner.tl{top:0;left:0;border-right:none;border-bottom:none}.frame-corner.tr{top:0;right:0;border-left:none;border-bottom:none}.frame-corner.bl{bottom:0;left:0;border-right:none;border-top:none}.frame-corner.br{bottom:0;right:0;border-left:none;border-top:none}.title-block{position:relative;z-index:2}.label{font-size:.75rem;letter-spacing:.3em;font-weight:600;color:#666;margin-bottom:2rem}.name{font-size:6rem;font-weight:900;line-height:.9;margin:0;letter-spacing:-.02em}.first-name{display:block;color:#000}.last-name{display:block;color:#000;position:relative;margin-left:2rem}.separator{width:60px;height:4px;background:#000;margin:2rem 0}.role{font-size:1.2rem;letter-spacing:.2em;font-weight:600;color:#333}.hero-right{display:flex;flex-direction:column;gap:3rem}.intro-text{font-size:1.3rem;line-height:1.8;color:#333;font-weight:300}.contact-links{display:flex;flex-direction:column;gap:1.5rem}.contact-links a{display:flex;align-items:center;gap:1.5rem;color:#000;text-decoration:none;font-weight:600;letter-spacing:.15em;transition:all .3s ease;position:relative;padding:.5rem 0}.link-line{width:40px;height:2px;background:#000;transition:width .3s ease}.contact-links a:hover .link-line{width:60px}.link-text{transition:transform .3s ease}.contact-links a:hover .link-text{transform:translate(10px)}.section{padding:8rem 2rem;position:relative;z-index:1}.section:nth-child(2n){background:#fafafa}.section-container{max-width:1400px;margin:0 auto;position:relative}.section-number{position:absolute;top:0;left:0;font-size:8rem;font-weight:900;color:#0000000d;line-height:1;z-index:0}.section-layout{display:grid;grid-template-columns:1fr 2fr;gap:6rem;position:relative;z-index:1;padding-top:3rem}.section-layout.full-width{grid-template-columns:1fr}.section-header-left{position:sticky;top:8rem;height:fit-content}.section-header-center{margin-bottom:4rem}.section-title{font-size:3rem;font-weight:900;letter-spacing:.05em;color:#000;margin-bottom:1rem}.title-underline{width:80px;height:3px;background:#000}.section-content-right{position:relative}.text-block{position:relative;padding:3rem;background:#fff;border:1px solid #e0e0e0}.text-block p{font-size:1.3rem;line-height:2;color:#333;font-weight:300}.quote-mark{position:absolute;top:1rem;left:1rem;width:40px;height:40px;border-top:4px solid #000;border-left:4px solid #000}.skills-grid{display:grid;grid-template-columns:1fr;gap:2rem}.skill-box{border:2px solid #000;padding:2.5rem;background:#fff;transition:all .3s ease;position:relative}.skill-box:before{content:"";position:absolute;top:0;left:0;width:0;height:100%;background:#000;transition:width .3s ease;z-index:0}.skill-box:hover:before{width:100%}.skill-box:hover{color:#fff}.skill-box-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;position:relative;z-index:1}.skill-icon{font-size:1.5rem}.skill-box h3{font-size:1.3rem;font-weight:700;letter-spacing:.1em}.skill-box ul{list-style:none;position:relative;z-index:1}.skill-box li{padding:.6rem 0;font-weight:300;border-bottom:1px solid rgba(0,0,0,.1);transition:all .3s ease}.skill-box:hover li{border-bottom-color:#fff3}.skill-box li:last-child{border-bottom:none}.timeline{position:relative;padding-left:3rem}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#000}.timeline-item{position:relative;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid #e0e0e0}.timeline-item:last-child{border-bottom:none}.timeline-item:before{content:"";position:absolute;left:-3.5rem;top:0;width:10px;height:10px;background:#000;border:2px solid #fff;box-shadow:0 0 0 2px #000}.timeline-date{font-size:.85rem;font-weight:700;letter-spacing:.15em;color:#666;margin-bottom:.5rem}.timeline-item h3{font-size:1.8rem;font-weight:700;color:#000;margin-bottom:.5rem}.company{font-size:1.1rem;color:#666;font-style:italic;margin-bottom:1rem;font-weight:300}.responsibilities{list-style:none;padding-left:0}.responsibilities li{color:#333;font-weight:300;position:relative;padding:.5rem 0 .5rem 1.5rem}.responsibilities li:before{content:"■";position:absolute;left:0;color:#000;font-size:.5rem;top:.9rem}.projects-grid{display:grid;grid-template-columns:1fr;gap:0}.project-card{padding:3rem;border-bottom:2px solid #e0e0e0;position:relative;transition:all .3s ease;background:#fff}.project-card:last-child{border-bottom:none}.project-card:hover{background:#000;color:#fff}.project-number-badge{position:absolute;top:3rem;right:3rem;font-size:4rem;font-weight:900;color:#0000000d;line-height:1;transition:color .3s ease}.project-card:hover .project-number-badge{color:#ffffff1a}.project-info{max-width:700px}.project-info h3{font-size:2rem;font-weight:700;margin-bottom:1rem;letter-spacing:.02em}.project-info p{font-size:1.1rem;line-height:1.8;color:#666;margin-bottom:2rem;font-weight:300;transition:color .3s ease}.project-card:hover .project-info p{color:#fffc}.tech-stack{display:flex;gap:1rem;flex-wrap:wrap}.tech-stack span{padding:.5rem 1.2rem;border:1px solid #000;font-size:.85rem;font-weight:600;letter-spacing:.05em;transition:all .3s ease}.project-card:hover .tech-stack span{border-color:#fff;background:#fff;color:#000}.project-hover-line{position:absolute;bottom:0;left:0;width:0;height:2px;background:#fff;transition:width .3s ease}.project-card:hover .project-hover-line{width:100%}.contact-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}.contact-item{padding:2rem 0;border-bottom:1px solid #e0e0e0}.contact-item:last-child{border-bottom:2px solid #000}.contact-label{font-size:.8rem;font-weight:700;letter-spacing:.2em;color:#666;margin-bottom:.5rem}.contact-value{font-size:1.3rem;font-weight:300;color:#000}.footer{background:#000;color:#fff;padding:4rem 2rem}.footer-content{max-width:1400px;margin:0 auto;text-align:center}.footer-line{width:100px;height:2px;background:#fff;margin:0 auto 2rem}.footer p{font-size:.85rem;letter-spacing:.2em;font-weight:600;opacity:.8}@media(max-width:1024px){.hero-grid{grid-template-columns:1fr;gap:4rem}.section-layout{grid-template-columns:1fr;gap:3rem}.section-header-left{position:static}.section-number{font-size:6rem}.name{font-size:4rem}}@media(max-width:768px){.name{font-size:3.5rem}.section{padding:4rem 1.5rem}.section-title{font-size:2.5rem}.section-number{font-size:4rem}.hero{min-height:auto;padding:4rem 1.5rem}.geometric-frame,.floating-shape,.diagonal-line{display:none}.text-block,.skill-box,.project-card{padding:2rem}.timeline{padding-left:2rem}.project-number-badge{font-size:2.5rem;top:2rem;right:2rem}}
