@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #ffffff;--color-text: #000000;--color-gray: #666666;--color-light-gray: #e5e5e5;--color-border: #d4d4d4;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--transition: all .3s ease}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{font-size:clamp(1rem,2vw,1.125rem);color:var(--color-gray)}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;background:none}ul{list-style:none}img{max-width:100%;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0;min-height:100vh;display:flex;align-items:center}.section-title{margin-bottom:var(--spacing-lg);text-align:center}.btn{display:inline-block;padding:1rem 2rem;font-size:1rem;font-weight:500;border:2px solid var(--color-text);background-color:transparent;color:var(--color-text);transition:var(--transition);cursor:pointer}.btn:hover{background-color:var(--color-text);color:var(--color-bg)}.btn:focus{outline:2px solid var(--color-text);outline-offset:4px}.btn-primary{background-color:var(--color-text);color:var(--color-bg)}.btn-primary:hover{background-color:transparent;color:var(--color-text)}@media(max-width:768px){:root{--spacing-lg: 3rem;--spacing-xl: 4rem}.section{min-height:auto}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--color-bg);transition:var(--transition);border-bottom:1px solid transparent}.navbar.scrolled{border-bottom-color:var(--color-border);box-shadow:0 2px 8px #0000000d}.navbar-container{max-width:1200px;margin:0 auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.navbar-logo{font-size:1.25rem;font-weight:700;color:var(--color-text)}.navbar-menu{display:flex;gap:2rem;align-items:center}.navbar-link{font-size:.95rem;font-weight:500;color:var(--color-gray);transition:var(--transition);position:relative}.navbar-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background-color:var(--color-text);transition:width .3s ease}.navbar-link:hover,.navbar-link.active{color:var(--color-text)}.navbar-link.active:after{width:100%}.navbar-cta{padding:.75rem 1.5rem;font-size:.95rem}@media(max-width:768px){.navbar-container{padding:1rem}.navbar-menu{display:none}.navbar-cta{padding:.6rem 1.2rem;font-size:.9rem}}@media(min-width:769px)and (max-width:1024px){.navbar-menu{gap:1.5rem}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding-top:80px}.hero-content{max-width:800px;text-align:center}.hero-title{margin-bottom:1rem;font-weight:700;letter-spacing:-.02em}.hero-subtitle{font-size:clamp(1.25rem,3vw,1.5rem);font-weight:500;color:var(--color-text);margin-bottom:1.5rem}.hero-description{max-width:600px;margin:0 auto 3rem;font-size:1.125rem;line-height:1.8}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media(max-width:768px){.hero{padding-top:60px}.hero-description{font-size:1rem;margin-bottom:2rem}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:100%;max-width:300px}}.about{background-color:var(--color-bg)}.about-content{max-width:1000px;margin:0 auto 4rem;display:grid;grid-template-columns:300px 1fr;gap:3rem;align-items:center}.about-photo{position:relative}.profile-image{width:100%;height:300px;object-fit:cover;border:2px solid var(--color-border);transition:var(--transition)}.profile-image:hover{border-color:var(--color-text);transform:scale(1.02)}.about-text-wrapper{text-align:left}.about-text{font-size:1.125rem;line-height:1.8;margin-bottom:1.5rem}.highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.highlight-item{padding:2rem;border:1px solid var(--color-border);text-align:center;transition:var(--transition)}.highlight-item:hover{border-color:var(--color-text);transform:translateY(-4px)}.highlight-title{font-size:1.5rem;margin-bottom:1rem;font-weight:600}.highlight-description{font-size:1rem;line-height:1.6}@media(max-width:768px){.about-content{grid-template-columns:1fr;gap:2rem}.about-photo{max-width:250px;margin:0 auto}.profile-image{height:250px}.about-text-wrapper{text-align:center}.highlights{grid-template-columns:1fr;gap:1.5rem}.highlight-item{padding:1.5rem}.about-text{font-size:1rem}}.skills{background-color:var(--color-bg)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.skills-category{padding:2.5rem;border:1px solid var(--color-border);transition:var(--transition)}.skills-category:hover{border-color:var(--color-text)}.category-title{font-size:1.5rem;margin-bottom:1.5rem;font-weight:600}.skills-list{display:flex;flex-direction:column;gap:.75rem}.skill-item{font-size:1rem;color:var(--color-gray);padding:.5rem 0;border-bottom:1px solid var(--color-light-gray);transition:var(--transition)}.skill-item:last-child{border-bottom:none}.skill-item:hover{color:var(--color-text);transform:translate(4px)}@media(max-width:768px){.skills-grid{grid-template-columns:1fr;gap:1.5rem}.skills-category{padding:2rem}}.projects{background-color:var(--color-bg)}.tab-navigation{display:flex;justify-content:center;margin-bottom:3rem;gap:.5rem;background:var(--color-light-gray);padding:.5rem;border-radius:1rem;max-width:400px;margin-left:auto;margin-right:auto}.tab-button{background:transparent;border:none;padding:1rem 2rem;font-size:1.1rem;color:var(--color-gray);cursor:pointer;transition:all .3s ease;border-radius:.5rem;position:relative;flex:1}.tab-button:hover{color:var(--color-text);background:#0000001a}.tab-button.active{color:var(--color-bg);background:var(--color-text)}.tab-content{min-height:400px}.certificates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.certificate-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:1rem;padding:1.5rem;text-align:center;transition:transform .3s ease;box-shadow:0 2px 10px #0000001a}.certificate-card:hover{transform:translateY(-5px);box-shadow:0 4px 20px #00000026}.certificate-card-link{text-decoration:none;display:block;transition:transform .3s ease;cursor:pointer}.certificate-card-link:hover{transform:translateY(-5px)}.certificate-image-only{width:100%;height:300px;border-radius:1rem;overflow:hidden;box-shadow:0 2px 10px #0000001a;transition:box-shadow .3s ease}.certificate-card-link:hover .certificate-image-only{box-shadow:0 4px 20px #00000026}.certificate-image-only img{width:100%;height:100%;object-fit:cover;object-position:center}.certificate-modal-backdrop{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem}.certificate-modal-content{position:relative;max-width:90vw;max-height:90vh;background:var(--color-bg);border-radius:1rem;padding:2rem;display:flex;flex-direction:column;align-items:center}.certificate-modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background-color:transparent;cursor:pointer;transition:var(--transition);font-size:1.5rem;border-radius:50%}.certificate-modal-close:hover{border-color:var(--color-text);background-color:var(--color-text);color:var(--color-bg)}.certificate-modal-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:.5rem}.certificate-info h4{color:var(--color-text);margin-bottom:.5rem;font-size:1.1rem}.certificate-issuer{color:var(--color-text);font-weight:500;margin-bottom:.25rem}.certificate-date{color:var(--color-gray);font-size:.9rem}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.portfolio-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:1rem;overflow:hidden;transition:transform .3s ease;box-shadow:0 2px 10px #0000001a}.portfolio-card:hover{transform:translateY(-5px);box-shadow:0 4px 20px #00000026}.portfolio-image{position:relative;width:100%;height:250px;overflow:hidden}.portfolio-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.1);transition:transform .3s ease}.portfolio-thumbnail{width:100%;height:100%;background:var(--color-light-gray);display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600;color:var(--color-text);text-align:center;padding:0;overflow:hidden;position:relative}.portfolio-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center;padding:0;margin:0;display:block;transform:scale(1.1)}.portfolio-thumbnail img.rotated{transform:scale(1.1) rotate(90deg)}.portfolio-thumbnail .play-icon-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem}.portfolio-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.portfolio-card:hover .portfolio-overlay{opacity:1}.portfolio-card:hover .portfolio-image img{transform:scale(1.2)}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--color-gray);font-style:italic}.portfolio-link{color:var(--color-bg);text-decoration:none;padding:.75rem 1.5rem;border:2px solid var(--color-text);border-radius:.5rem;background:var(--color-text);transition:all .3s ease}.portfolio-link:hover{background:transparent;color:var(--color-text)}.portfolio-info{padding:1.5rem}.portfolio-info h4{color:var(--color-text);margin-bottom:.75rem;font-size:1.2rem}.portfolio-info p{color:var(--color-gray);margin-bottom:1rem;line-height:1.6}.portfolio-tech{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background:var(--color-light-gray);color:var(--color-text);padding:.25rem .75rem;border-radius:1rem;font-size:.8rem;font-weight:500}@media(max-width:768px){.tab-navigation{margin-bottom:2rem}.tab-button{padding:.75rem 1.5rem;font-size:1rem}.certificates-grid,.portfolio-grid{grid-template-columns:1fr;gap:1.5rem}.certificate-card,.portfolio-info{padding:1rem}.tab-content{min-height:300px}}@media(max-width:1024px)and (min-width:769px){.certificates-grid,.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.experience{background-color:var(--color-bg)}.timeline{max-width:800px;margin:0 auto;position:relative;padding-left:3rem}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background-color:var(--color-border)}.timeline-item{position:relative;margin-bottom:3rem}.timeline-item:last-child{margin-bottom:0}.timeline-marker{position:absolute;left:-3.5rem;top:.5rem;width:12px;height:12px;background-color:var(--color-text);border:3px solid var(--color-bg);box-shadow:0 0 0 2px var(--color-text)}.timeline-content{padding:1.5rem;border:1px solid var(--color-border);transition:var(--transition)}.timeline-content:hover{border-color:var(--color-text)}.timeline-position{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.timeline-company{font-size:1.125rem;color:var(--color-text);margin-bottom:.25rem}.timeline-year{font-size:.95rem;color:var(--color-gray);margin-bottom:1rem}.timeline-description{font-size:1rem;line-height:1.7;color:var(--color-gray)}@media(max-width:768px){.timeline{padding-left:2rem}.timeline-marker{left:-2.5rem}.timeline-content{padding:1.25rem}.timeline-position{font-size:1.25rem}.timeline-company{font-size:1rem}}.contact{background-color:var(--color-bg)}.contact-content{max-width:1000px;margin:0 auto}.contact-intro{text-align:center;font-size:1.125rem;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.contact-info-center{max-width:400px;margin:0 auto;text-align:center;padding:2rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:1rem}.contact-info-title{font-size:1.5rem;margin-bottom:1.5rem;color:var(--color-text);font-weight:600}.contact-details{display:flex;flex-direction:column;gap:1rem}.contact-link{font-size:1.1rem;color:var(--color-text);text-decoration:none;transition:var(--transition);padding:.5rem;border-radius:.5rem}.contact-link:hover{background:var(--color-light-gray);color:var(--color-text)}.contact-location{font-size:1rem;opacity:.8;margin-top:.5rem;margin-bottom:1.5rem}.contact-social{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.social-link{font-size:1rem;color:var(--color-text);text-decoration:none;transition:var(--transition);padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:.5rem;text-align:center}.social-link:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}@media(max-width:768px){.contact-info-center{padding:1.5rem;margin:0 1rem}}.footer{padding:3rem 0;border-top:1px solid var(--color-border);background-color:var(--color-bg)}.footer-content{display:flex;justify-content:center;align-items:center}.footer-copyright{font-size:.95rem;color:var(--color-gray)}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1;padding-top:80px}@media(max-width:768px){main{padding-top:60px}}
