@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);.site-header{align-items:center;background:var(--bg-primary);border-bottom:1px solid var(--border-subtle);display:flex;gap:1.5rem;height:var(--header-height);justify-content:space-between;left:0;margin:0 auto;max-width:100%;padding:0 clamp(1.25rem,4vw,3rem);position:fixed;right:0;top:0;z-index:9999}.site-header>:first-child{flex:0 0 auto}.site-header>:nth-child(2){display:flex;flex:1 1 auto;justify-content:flex-end;min-width:0}@media (min-width:992px){.site-header{grid-gap:1rem 2rem;align-items:center;display:grid;gap:1rem 2rem;grid-template-columns:auto 1fr auto;padding-left:max(1.25rem,calc((100% - var(--container-max))/2 + 1.5rem));padding-right:max(1.25rem,calc((100% - var(--container-max))/2 + 1.5rem))}.site-header>:first-child{grid-column:1}.site-header>:nth-child(2){display:contents;grid-column:2/4}}@media (max-width:991px){.site-header{height:var(--header-height);min-height:var(--header-height);padding-bottom:0;padding-top:0;z-index:10050}}.logo-link{cursor:pointer;display:inline-block;text-decoration:none}.logo-text{fill:var(--accent);font-family:Courier New,Consolas,monospace;font-size:20px;font-weight:700;transition:fill .25s ease}.logo-link:hover .logo-text{fill:var(--accent-light)}@media (max-width:991px){.logo-text{y:15;font-size:15px}.logo-link svg{height:36px;width:auto}}.main-nav{align-items:center;display:flex;justify-content:flex-end;width:100%}.desktop-nav,.hamburger-menu{display:none}@media screen and (min-width:992px){.main-nav{display:contents}.hamburger-menu{display:none!important}.desktop-nav{display:contents}.desktop-nav .nav-links{display:flex;gap:clamp(1rem,2vw,1.75rem);grid-column:2;justify-self:center}.desktop-nav .nav-social{gap:.75rem;grid-column:3;justify-self:end}}@media screen and (max-width:991px){.hamburger-menu{display:block;position:relative;z-index:10052}.desktop-nav{display:none!important}}.lbl-menu{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;line-height:1;padding:.5rem;transition:color .25s ease,background .25s ease}.lbl-menu.is-open,.lbl-menu:hover{color:var(--accent)}.lbl-menu.is-open{background:#d18b471f}.nav-links{align-items:center;list-style:none;margin:0;padding:0}.nav-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500;letter-spacing:.02em;padding:.35rem 0;position:relative;transition:color .25s ease;white-space:nowrap}.nav-links a:after{background:var(--accent);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .25s ease;width:0}.nav-links a.active,.nav-links a:hover{color:var(--text-primary)}.nav-links a.active:after,.nav-links a:hover:after{width:100%}.nav-social{align-items:center;display:flex;flex-shrink:0}.nav-social-link{color:var(--text-secondary);display:flex;font-size:1.05rem;padding:.35rem;transition:color .25s ease,transform .2s ease}.nav-social-link:hover{color:var(--accent);transform:scale(1.1)}.menu-overlay{-webkit-tap-highlight-color:transparent;background:#000000e0;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .25s ease,visibility .25s ease;visibility:hidden;z-index:10040}.menu-overlay.is-visible{opacity:1;pointer-events:auto;visibility:visible}.mobile-nav-drawer{-webkit-overflow-scrolling:touch;background:var(--bg-primary);bottom:0;box-shadow:-12px 0 40px #0009;display:flex;flex-direction:column;max-width:100%;overflow-x:hidden;overflow-y:auto;padding-top:calc(var(--header-height) + .5rem);pointer-events:none;position:fixed;right:0;scrollbar-width:none;top:0;transform:translateX(100%);transition:transform .3s ease,visibility .3s ease;visibility:hidden;width:min(88vw,300px);z-index:10041}.mobile-nav-drawer::-webkit-scrollbar{display:none;width:0}.mobile-nav-drawer.active{pointer-events:auto;transform:translateX(0);visibility:visible}@media screen and (min-width:992px){.menu-overlay,.mobile-nav-drawer{display:none!important}}@media screen and (max-width:991px){.mobile-nav-drawer .nav-links{align-items:stretch;display:flex;flex-direction:column;gap:0;padding:0 1.25rem;width:100%}.mobile-nav-drawer .nav-links li{border-bottom:1px solid var(--border-subtle)}.mobile-nav-drawer .nav-links a{display:block;font-size:1.15rem;padding:1rem .25rem;white-space:normal}.mobile-nav-drawer .nav-links a:after{display:none}.mobile-nav-drawer .nav-social{border-top:1px solid var(--border-subtle);gap:1.5rem;justify-content:center;margin-top:auto;padding:1.5rem 1.25rem 2rem;width:100%}.mobile-nav-drawer .nav-social-link{font-size:1.4rem}}footer{align-items:center;background:#0000;color:#b0b0b0;display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;margin-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(3rem,6vw,5rem);padding-top:clamp(3rem,6vw,5rem)}@media screen and (max-width:751px){footer{margin-top:clamp(1.5rem,3vw,2rem);padding-bottom:clamp(2rem,4vw,3rem);padding-top:clamp(2rem,4vw,3rem)}}.banner-wrapper{background:var(--bg-primary);margin-top:var(--header-height);overflow:hidden;position:relative}.banner-wrapper:before{background:radial-gradient(circle,#d18b471a 0,#0000 68%);content:"";height:min(60vw,480px);left:50%;pointer-events:none;position:absolute;top:-25%;transform:translateX(-50%);width:min(90vw,720px)}.banner-wrapper .hero-content{opacity:0;transition:opacity .6s ease}.banner-wrapper.visible .hero-content{opacity:1}.banner{padding:clamp(3.5rem,8vw,5.5rem) clamp(1.5rem,4vw,3rem) clamp(2.5rem,6vw,3.5rem);position:relative;z-index:1}.banner,.hero-container{margin:0 auto;max-width:var(--container-max)}.hero-container{width:100%}.hero-content{gap:clamp(1.5rem,3vw,2rem);text-align:center}.hero-content,.hero-intro{align-items:center;display:flex;flex-direction:column}.hero-intro{gap:clamp(1.25rem,2.5vw,1.75rem);max-width:44rem;width:100%}.hero-badge{align-items:center;color:var(--accent);display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.hero-title{color:var(--text-primary);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.08;margin:0;max-width:16ch}.hero-title-accent{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-light),var(--accent));-webkit-background-clip:text;background-clip:text;position:relative}.hero-title-accent:after{background:linear-gradient(90deg,#0000,var(--accent),#0000);border-radius:2px;bottom:.05em;content:"";height:3px;left:0;position:absolute;right:0}.hero-description{color:var(--text-secondary);font-size:clamp(1rem,1.8vw,1.25rem);font-weight:400;line-height:1.65;margin:0 auto;max-width:42ch}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-primary,.btn-secondary{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.85rem 1.5rem;transition:var(--transition)}.btn-primary{background:linear-gradient(135deg,var(--accent),#b87333);box-shadow:0 0 28px var(--accent-glow);color:var(--text-primary)}.btn-primary:hover{box-shadow:0 0 40px var(--accent-glow);transform:translateY(-2px) scale(1.02)}.btn-secondary{background:#0000;border-color:var(--border-accent);color:var(--text-primary)}.btn-secondary:hover{background:#d18b4714;border-color:var(--accent);transform:translateY(-2px)}.hero-features{grid-gap:clamp(1rem,2vw,1.5rem);border-top:1px solid var(--border-subtle);display:grid;gap:clamp(1rem,2vw,1.5rem);grid-template-columns:repeat(3,1fr);margin-top:.5rem;max-width:56rem;padding:clamp(1.5rem,3vw,2rem) 0 0;width:100%}.hero-feature{align-items:center;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.65rem;padding:1.25rem 1rem;text-align:center;transition:var(--transition)}.hero-feature:hover{border-color:var(--border-accent);transform:translateY(-2px)}.hero-feature-icon{align-items:center;color:var(--accent);display:flex;font-size:1.15rem;height:2.5rem;justify-content:center;width:2.5rem}.hero-feature strong{color:var(--text-primary);display:block;font-size:.9rem;font-weight:600;margin-bottom:.2rem}.hero-feature span{color:var(--text-muted);font-size:.78rem;line-height:1.45}.hero-tech-strip{border-top:1px solid var(--border-subtle);max-width:56rem;padding-top:clamp(1.5rem,3vw,2rem);width:100%}.hero-tech-label{color:var(--text-muted);font-size:.8rem;letter-spacing:.02em;margin:0 0 1rem}.hero-tech-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(5,1fr);width:100%}.hero-tech-card{align-items:center;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:1rem .5rem;transition:var(--transition)}.hero-tech-card:hover{border-color:var(--border-accent);box-shadow:0 8px 24px var(--accent-glow);transform:translateY(-3px)}.hero-tech-icon{font-size:1.5rem}.hero-tech-name{color:var(--text-secondary);font-size:.7rem;line-height:1.2;text-align:center}@media screen and (max-width:991px){.banner{padding:clamp(2.5rem,6vw,3.5rem) 1.25rem clamp(2rem,5vw,3rem)}.hero-title{font-size:clamp(1.85rem,7.5vw,2.35rem);max-width:none}.hero-features{display:none}.hero-tech-strip{max-width:420px}.btn-primary{background:#0000;border:1px solid var(--accent);box-shadow:0 0 18px #d18b4740;color:var(--accent)}.btn-primary:hover{background:#d18b471a;box-shadow:0 0 22px #d18b4759;transform:none}.btn-secondary:hover{transform:none}}@media screen and (max-width:380px){.hero-actions{flex-direction:column;max-width:320px;width:100%}.btn-primary,.btn-secondary{width:100%}.hero-tech-grid{gap:.4rem}.hero-tech-card{padding:.65rem .25rem}.hero-tech-name{font-size:.55rem}.hero-tech-icon{font-size:1.2rem}}.about-section{min-width:0;position:relative}.about-content{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.about-content.visible{opacity:1;transform:translateY(0)}.about-label{color:var(--accent);display:block;font-size:.72rem;font-weight:600;letter-spacing:.14em;margin-bottom:.75rem;text-transform:uppercase}.about-headline{color:var(--text-primary);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:700;line-height:1.35;margin:0 0 1.25rem}.about-lead-mobile{display:none}.about-body{color:var(--text-secondary);font-size:clamp(.88rem,1.4vw,.95rem);line-height:1.7;margin:0 0 1.75rem}.about-stats{grid-gap:1.25rem 1.5rem;display:grid;gap:1.25rem 1.5rem;grid-template-columns:repeat(2,1fr)}.about-stat{align-items:flex-start;display:flex;gap:.75rem}.about-stat-icon{align-items:center;color:var(--accent);display:flex;flex-shrink:0;font-size:1rem;height:2rem;justify-content:center;width:2rem}.about-stat-text strong{color:var(--text-primary);display:block;font-size:1.05rem;font-weight:700;margin-bottom:.1rem}.about-stat-text span{color:var(--text-muted);font-size:.75rem}@media screen and (max-width:991px){.about-section{padding:0;text-align:center}.about-label{color:var(--text-primary);font-size:clamp(1rem,4.5vw,1.15rem);font-weight:600;letter-spacing:.02em;margin-bottom:1rem;text-transform:none}.about-body,.about-headline,.about-stats{display:none}.about-lead-mobile{color:var(--text-secondary);display:block;font-size:clamp(.88rem,3.6vw,.95rem);line-height:1.65;margin:0 auto;max-width:36ch;padding:0 .25rem}}.what-to-do-section{min-width:0;opacity:0;position:relative;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.what-to-do-inner{display:flex;flex-direction:column;width:100%}.what-to-do-section.visible{opacity:1;transform:translateY(0)}.tech-section-header{margin-bottom:1.75rem;position:static;width:100%}.tech-section-title{color:var(--text-primary);font-size:clamp(1.1rem,2vw,1.35rem);font-weight:600;line-height:1.3;margin:0 0 .5rem}.tech-section-underline{background:linear-gradient(90deg,var(--accent),#0000);border-radius:2px;display:block;height:3px;width:48px}.tech-cards-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(5,1fr);margin-bottom:1.5rem}.tech-card{align-items:center;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:default;display:flex;flex-direction:column;gap:.6rem;justify-content:center;padding:1.25rem .75rem;transition:var(--transition)}.tech-card:hover{border-color:var(--border-accent);box-shadow:0 8px 32px var(--accent-glow);transform:translateY(-4px) scale(1.03)}.tech-card-icon{font-size:2rem}.tech-card-name{color:var(--text-secondary);font-size:.75rem;text-align:center}.tech-expand-btn{align-items:center;background:#0000;border:1px solid var(--border-accent);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.85rem;font-weight:500;gap:.5rem;margin-bottom:2.5rem;padding:.65rem 1.25rem;transition:var(--transition)}.tech-expand-btn:hover{background:#d18b470f;border-color:var(--accent);color:var(--accent)}.tech-groups{border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem}.tech-group{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem .75rem}.tech-group-label{color:var(--accent);flex:0 0 auto;font-size:.72rem;font-weight:600;letter-spacing:.08em;margin:0;min-width:7rem;text-transform:uppercase}.tech-group-items{display:flex;flex:1 1;flex-wrap:wrap;gap:.35rem .5rem}.tech-item{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);font-size:.8rem;padding:.2rem .55rem}@media screen and (max-width:991px){.what-to-do-section{padding:0}.tech-section-header{text-align:center}.tech-section-underline{margin:0 auto}.tech-cards-grid{gap:.5rem;grid-template-columns:repeat(5,minmax(0,1fr))}.tech-card{padding:.85rem .35rem}.tech-card-icon{font-size:1.35rem}.tech-card-name{font-size:.6rem}.tech-expand-btn,.tech-groups{display:none}}@media screen and (max-width:480px){.tech-cards-grid{gap:.35rem}}.section-title{margin-bottom:clamp(2rem,4vw,3rem);margin-top:0;position:relative;text-align:center}.section-title h2{display:none}.section-title h4{color:var(--accent);font-size:clamp(.72rem,1.2vw,.8rem);font-weight:600;letter-spacing:.14em;margin:0 0 .5rem;text-transform:uppercase}.section-title h3{color:var(--text-primary);font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:700;line-height:1.25;margin:0}.section-title:after{background:linear-gradient(90deg,var(--accent),#0000);border-radius:2px;content:"";display:block;height:3px;margin:.75rem auto 0;width:48px}.resume-section{background:var(--bg-primary);overflow:hidden;padding:clamp(4rem,8vw,6rem) clamp(1.5rem,4vw,3rem) clamp(1rem,2vw,1.5rem);position:relative}.resume-container{margin:0 auto;max-width:1400px;position:relative;z-index:1}.resume-section:after{background:linear-gradient(90deg,#0000,#d18b474d,#0000);bottom:0;content:"";height:1px;left:0;position:absolute;right:0;width:100%;z-index:2}.resume-tabs{border-bottom:1px solid #d18b4733;display:flex;flex-wrap:wrap;gap:clamp(1rem,2vw,1.5rem);justify-content:center;margin:clamp(4rem,8vw,6rem) auto;padding-bottom:clamp(1rem,2vw,1.5rem)}.resume-tabs button{background:#0000;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:clamp(.95rem,2vw,1.1rem);font-weight:500;letter-spacing:.05em;opacity:.6;padding:clamp(.75rem,1.5vw,1rem) clamp(1.5rem,3vw,2.5rem);position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.resume-tabs button:before{background:linear-gradient(90deg,var(--accent),var(--accent-light));bottom:-1.5rem;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:width .4s ease;width:0}.resume-tabs button.active,.resume-tabs button:hover{color:var(--accent);opacity:1}.resume-tabs button.active{border-bottom-color:var(--accent)}.resume-tabs button.active:before{width:100%}.timeline-wrapper{min-height:400px;position:relative;transition:opacity 1.2s ease,transform 1.2s ease}.timeline-wrapper,.timeline-wrapper.visible{opacity:1;transform:translateY(0)}.timeline{margin:0 auto;max-width:900px;padding-left:clamp(3rem,6vw,5rem);position:relative}.timeline-line{background:linear-gradient(180deg,var(--accent) 0,#d18b474d 50%,#0000 100%);bottom:0;left:clamp(1.5rem,3vw,2.5rem);position:absolute;top:0;width:2px}.timeline-item{animation:slideInRight .8s cubic-bezier(.25,.46,.45,.94) forwards;margin-bottom:clamp(3rem,6vw,4rem);opacity:0;position:relative;transform:translateX(-50px)}@keyframes slideInRight{to{opacity:1;transform:translateX(0)}}.timeline-marker{animation:pulseMarker 2s ease-in-out infinite;background:var(--accent);border:3px solid var(--bg-primary);border-radius:50%;box-shadow:0 0 20px #d18b4799;height:16px;left:calc(clamp(-3rem, -6vw, -5rem) + clamp(1.5rem, 3vw, 2.5rem) - 8px);position:absolute;top:.5rem;width:16px;z-index:2}@keyframes pulseMarker{0%,to{box-shadow:0 0 20px #d18b4799}50%{box-shadow:0 0 30px #d18b47e6}}.timeline-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#2b1f1866;border:1px solid #d18b4733;border-radius:20px;overflow:hidden;padding:clamp(2rem,4vw,2.5rem);position:relative;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.timeline-content:before{background:linear-gradient(90deg,#0000,#d18b471a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .8s ease;width:100%}.timeline-content:hover:before{left:100%}.timeline-content:hover{background:#2b1f1899;border-color:#d18b4766;box-shadow:0 20px 60px #d18b4733;transform:translateX(10px)}.timeline-year{color:var(--accent);font-size:clamp(.85rem,1.5vw,1rem);font-weight:600;letter-spacing:.1em;margin-bottom:.75rem;text-transform:uppercase}.timeline-title{color:#fff;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:.02em;margin:0 0 .5rem}.timeline-company{color:var(--accent);font-size:clamp(1rem,2vw,1.2rem);font-weight:400;letter-spacing:.05em;margin-bottom:1rem}.timeline-description{color:var(--text-secondary);font-size:clamp(1rem,2vw,1.1rem);font-weight:300;line-height:1.7;margin:0 0 1rem;opacity:.85}.timeline-technologies{color:var(--accent);font-size:clamp(.9rem,1.8vw,1rem);font-weight:400;line-height:1.6;margin-bottom:1rem}.timeline-technologies strong{color:#fff;font-weight:500;margin-right:.5rem}.timeline-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.timeline-links .project-link{align-items:center;background:#d18b471a;border:1px solid #d18b474d;border-radius:8px;color:var(--accent);display:inline-flex;font-size:clamp(.85rem,1.5vw,.95rem);font-weight:500;gap:.5rem;letter-spacing:.05em;padding:.6rem 1.2rem;text-decoration:none;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.timeline-links .project-link:hover{background:#d18b4733;border-color:#d18b4780;box-shadow:0 5px 15px #d18b474d;color:#fff;transform:translateY(-2px)}.projects-container{display:flex;flex-direction:column;gap:clamp(4rem,8vw,6rem);margin:0 auto;max-width:1400px}.project-card{grid-gap:0;background:#2b1f184d;border:1px solid #d18b471a;border-radius:24px;display:grid;filter:blur(0);gap:0;grid-template-columns:1fr 1fr;max-height:500px;min-height:400px;opacity:1;overflow:hidden;transform:translateY(0) scale(1);transition:all .6s cubic-bezier(.25,.46,.45,.94)}.project-card:hover{border-color:#d18b474d;box-shadow:0 30px 80px #d18b4726;transform:translateY(-5px)}.project-card.image-left{grid-template-columns:1fr 1fr}.project-card.image-left .project-image-wrapper{order:1}.project-card.image-left .project-content{order:2}.project-card.image-right{grid-template-columns:1fr 1fr}.project-card.image-right .project-image-wrapper{order:2}.project-card.image-right .project-content{order:1}.project-image-wrapper{align-items:center;background:var(--bg-primary);display:flex;height:100%;justify-content:center;max-height:500px;min-height:400px;overflow:hidden;position:relative;width:100%}.project-image{height:100%;max-height:100%;max-width:100%;object-fit:contain;object-position:center;transition:transform .8s cubic-bezier(.25,.46,.45,.94);width:100%}.project-card:hover .project-image{transform:scale(1.05)}.project-image-overlay{background:linear-gradient(180deg,#0000,#1a16124d 50%,#1a161299);bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .6s ease}.project-card:hover .project-image-overlay{opacity:1}.project-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1a1612f2;display:flex;flex-direction:column;justify-content:flex-start;overflow-x:hidden;overflow-y:auto;padding:clamp(1.5rem,3vw,2.5rem)}.project-year{color:var(--accent);font-size:clamp(.85rem,1.5vw,1rem);font-weight:600;letter-spacing:.1em;margin-bottom:1rem;opacity:.8;text-transform:uppercase}.project-title{color:#fff;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 .5rem}.project-category{word-wrap:break-word;color:var(--accent);font-size:clamp(.9rem,1.8vw,1.1rem);font-weight:400;letter-spacing:.05em;margin-bottom:1rem}.project-description{word-wrap:break-word;color:var(--text-secondary);font-size:clamp(.85rem,1.6vw,1rem);font-weight:300;line-height:1.5;margin:0 0 1rem;opacity:.85;overflow-wrap:break-word}.project-technologies{margin-bottom:1rem}.project-technologies strong{color:#fff;display:block;font-size:clamp(.85rem,1.6vw,.95rem);font-weight:500;letter-spacing:.05em;margin-bottom:.75rem}.tech-tags{display:flex;flex-wrap:wrap;gap:.75rem}.tech-tag{background:#d18b471a;border:1px solid #d18b4733;border-radius:6px;color:var(--accent);font-size:clamp(.75rem,1.3vw,.85rem);font-weight:400;letter-spacing:.02em;padding:.4rem .8rem;transition:all .3s ease;white-space:nowrap}.tech-tag:hover{background:#d18b4733;border-color:#d18b4766;transform:translateY(-2px)}.project-links{display:flex;flex-wrap:wrap;gap:1rem}.project-link-button{align-items:center;background:#d18b471a;border:1px solid #d18b474d;border-radius:10px;color:var(--accent);display:inline-flex;font-size:clamp(.85rem,1.5vw,.95rem);font-weight:500;gap:.5rem;letter-spacing:.05em;padding:.75rem 1.5rem;text-decoration:none;transition:all .4s cubic-bezier(.25,.46,.45,.94);white-space:nowrap}.project-link-button:hover{background:var(--accent);border-color:var(--accent);box-shadow:0 10px 30px #d18b474d;color:var(--bg-primary);transform:translateY(-2px)}.project-link-button.secondary{background:#0000;border-color:#d18b4733}.project-link-button.secondary:hover{background:#d18b471a;border-color:#d18b4766}.project-link-button svg{transition:transform .3s ease}.project-link-button:hover svg{transform:translateX(3px)}.certificates-grid{grid-gap:clamp(1.5rem,3vw,2rem);display:grid;gap:clamp(1.5rem,3vw,2rem);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1000px}.certificate-card{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#2b1f1866;border:1px solid #d18b4726;border-radius:16px;display:flex;filter:blur(10px);flex-direction:column;justify-content:center;min-height:220px;opacity:0;overflow:hidden;padding:clamp(2.5rem,5vw,3.5rem);position:relative;text-align:center;transform:translateY(50px) scale(.8);transition:all .6s cubic-bezier(.25,.46,.45,.94)}.certificate-card.animate{animation:fadeInFromVoid 1s cubic-bezier(.25,.46,.45,.94) forwards}.certificate-card:before{background:linear-gradient(90deg,#0000,#d18b4726,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .8s ease;width:100%}.certificate-card:hover:before{left:100%}.certificate-card:hover{background:#2b1f188c;border-color:#d18b4766;box-shadow:0 20px 50px #d18b4733;transform:translateY(-8px) scale(1.01)}.certificate-icon{align-items:center;color:var(--accent);display:flex;filter:drop-shadow(0 2px 8px rgba(209,139,71,.2));font-size:clamp(2.5rem,5vw,3.5rem);justify-content:center;margin-bottom:1.5rem;opacity:.8;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.certificate-card:hover .certificate-icon{color:var(--accent-light);filter:drop-shadow(0 8px 20px rgba(209,139,71,.4));opacity:1;transform:scale(1.1) translateY(-4px) rotate(5deg)}.certificate-name{color:#fff;font-size:clamp(.95rem,2vw,1.15rem);font-weight:500;letter-spacing:.1em;line-height:1.4;margin:0;padding:0 .5rem;text-align:center;text-transform:uppercase}.certificate-issuer{color:var(--accent);font-size:clamp(.95rem,1.8vw,1.05rem);font-weight:400;letter-spacing:.05em;margin-bottom:.5rem}.certificate-year{color:var(--text-secondary);font-size:clamp(.85rem,1.5vw,.95rem);font-weight:500;letter-spacing:.1em;opacity:.7}.cv-download-wrapper{display:flex;justify-content:center;margin-top:clamp(4rem,8vw,6rem)}@media screen and (max-width:751px){.resume-section{padding:clamp(4.5rem,8vw,6rem) clamp(1.5rem,5vw,2rem)}.resume-tabs{gap:.75rem}.resume-tabs button{font-size:.85rem;padding:.6rem 1.25rem}.timeline{padding-left:clamp(2rem,4vw,3rem)}.timeline-marker{height:12px;left:calc(clamp(-2rem, -4vw, -3rem) + clamp(1rem, 2vw, 1.5rem) - 6px);width:12px}.resume-section{padding-bottom:1rem}.timeline-content{padding:clamp(1.5rem,3vw,2rem)}.certificates-grid{grid-template-columns:1fr}.projects-container{gap:clamp(3rem,6vw,4rem)}.project-card{max-height:none;min-height:auto}.project-card,.project-card.image-left,.project-card.image-right{display:flex;flex-direction:column;grid-template-columns:1fr}.project-card.image-left .project-image-wrapper,.project-card.image-right .project-image-wrapper{height:auto;max-height:60vh;min-height:250px;order:1;overflow:visible;width:100%}.project-card.image-left .project-image,.project-card.image-right .project-image{height:auto;max-height:60vh;object-fit:contain;object-position:center;width:100%}.project-card.image-left .project-content,.project-card.image-right .project-content{order:2;padding:clamp(2rem,4vw,3rem);width:100%}.project-title{font-size:clamp(1.75rem,5vw,2.5rem)}.project-link-button{font-size:.9rem;padding:.875rem 1.75rem}}@media screen and (max-width:480px){.timeline{padding-left:1.5rem}.timeline-line{left:.75rem}.timeline-marker{left:-.25rem}.certificate-card{padding:clamp(1.5rem,4vw,2rem)}}.contact-section{background:var(--bg-primary);overflow:hidden;padding:clamp(4rem,8vw,6rem) clamp(1.5rem,4vw,3rem) clamp(1rem,2vw,1.5rem);position:relative}.contact-section .section-title{margin-bottom:clamp(2.5rem,5vw,3.5rem)}.contact-container{margin:0 auto;max-width:1400px;position:relative;z-index:1}.contact-section:after{background:linear-gradient(90deg,#0000,#d18b474d,#0000);bottom:0;content:"";height:1px;left:0;position:absolute;right:0;width:100%;z-index:2}.contact-content{display:flex;flex-direction:column;gap:clamp(5rem,10vw,8rem);margin-left:auto;margin-right:auto;margin-top:clamp(5rem,10vw,8rem);max-width:1200px;opacity:0;transform:translateY(50px);transition:opacity 1.2s ease,transform 1.2s ease}.contact-content.visible{opacity:1;transform:translateY(0)}.contact-form-section{position:relative}.form-header{align-items:center;animation:fadeInUp .8s cubic-bezier(.25,.46,.45,.94) .2s forwards;display:flex;gap:clamp(1.5rem,3vw,2rem);margin-bottom:clamp(2.5rem,5vw,3.5rem);opacity:0;transform:translateY(30px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.form-header-line{background:linear-gradient(90deg,#0000,#d18b474d,#0000);flex:1 1;height:1px}.form-title{color:#fff;font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:500;letter-spacing:.15em;margin:0;text-transform:uppercase;white-space:nowrap}.contact-form-section{filter:blur(10px);opacity:0;transform:translateY(50px) scale(.9)}.contact-form-section.animate{animation:fadeInFromVoid 1s cubic-bezier(.25,.46,.45,.94) .2s forwards}@keyframes fadeInFromVoid{to{filter:blur(0);opacity:1;transform:translateY(0) scale(1)}}.contact-form-section form{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#2b1f184d;border:1px solid #d18b4726;border-radius:20px;box-sizing:border-box;display:flex;flex-direction:column;gap:clamp(1.75rem,3.5vw,2.25rem);max-width:100%;padding:clamp(3rem,6vw,4rem);transition:all .6s cubic-bezier(.25,.46,.45,.94);width:100%}.contact-form-section form:hover{background:#2b1f1866;border-color:#d18b474d;box-shadow:0 20px 50px #d18b4726}.form-row{display:flex;flex-wrap:wrap;gap:clamp(1rem,2vw,1.5rem)}.form-row:first-child{flex-direction:row}.contact-form-section .form-control{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a161299;border:1px solid #d18b4726;border-radius:10px;box-sizing:border-box;color:#fff;flex:1 1;font-family:inherit;font-size:clamp(.95rem,1.8vw,1.05rem);font-weight:300;letter-spacing:.02em;max-width:100%;min-width:250px;outline:none;padding:clamp(1.1rem,2.2vw,1.35rem);transition:all .4s cubic-bezier(.25,.46,.45,.94);width:100%}.contact-form-section .form-control::placeholder{color:#fff6;letter-spacing:.02em}.contact-form-section .form-control:focus{background:#1a1612cc;border-color:#d18b4766;box-shadow:0 0 25px #d18b4726;color:#fff;transform:translateY(-2px)}.contact-form-section textarea.form-control{font-family:inherit;min-height:clamp(150px,20vw,200px);resize:vertical}.contact-form-section .btn{align-self:flex-start;background:#d18b471a;border:1px solid #d18b474d;border-radius:10px;color:var(--accent);cursor:pointer;font-size:clamp(.9rem,1.8vw,1rem);font-weight:500;letter-spacing:.1em;overflow:hidden;padding:clamp(1.15rem,2.3vw,1.4rem) clamp(3rem,6vw,4rem);position:relative;text-transform:uppercase;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.contact-form-section .btn:before{background:linear-gradient(90deg,#0000,#d18b4733,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.contact-form-section .btn:hover:before{left:100%}.contact-form-section .btn:hover{background:var(--accent);border-color:var(--accent);box-shadow:0 15px 40px #d18b474d;color:var(--bg-primary);transform:translateY(-3px)}.thank-you-container{align-items:center;background:#0000;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:50px 20px;text-align:center}.thank-you-message{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#2b1f18eb;border:1px solid #d18b474d;border-radius:24px;box-shadow:0 20px 60px #d18b474d;max-width:600px;padding:clamp(3rem,6vw,4rem);width:100%}.thank-you-message h2{font-size:clamp(2rem,5vw,2.5rem);font-weight:600}.thank-you-message h2,.thank-you-message p{background:#0000;color:var(--text-secondary);margin-bottom:1.5rem}.thank-you-message p{font-size:clamp(1.1rem,2.5vw,1.3rem);line-height:1.7;opacity:.9}.thank-you-message .btn{background:linear-gradient(135deg,var(--accent),var(--accent-light));border-radius:12px;color:#fff;margin-top:1.5rem;padding:1rem 2.5rem;text-decoration:none;transition:all .3s ease}.thank-you-message .btn:hover{box-shadow:0 15px 40px #d18b4780;transform:translateY(-3px)}@media screen and (max-width:751px){.contact-section{box-sizing:border-box;max-width:100vw;overflow-x:hidden;padding:clamp(6rem,10vw,8rem) clamp(1.5rem,5vw,2rem);width:100%}.contact-container{padding:0}.contact-container,.contact-content{box-sizing:border-box;max-width:100%;width:100%}.contact-content{gap:clamp(4rem,8vw,5rem)}.contact-form-section{box-sizing:border-box;max-width:100%;overflow:hidden;width:100%}.form-header{align-items:center;flex-direction:column;gap:1rem;justify-content:center;text-align:center}.form-header-line{width:60px}.form-title{text-align:center;width:100%}.contact-form-section form{overflow:hidden;padding:clamp(2rem,4vw,2.5rem)}.contact-form-section form,.form-row{box-sizing:border-box;max-width:100%;width:100%}.form-row{flex-direction:column}.contact-form-section .form-control{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.contact-form-section textarea.form-control{word-wrap:break-word;box-sizing:border-box;max-width:100%;overflow-wrap:break-word;width:100%}.contact-form-section .btn{align-items:center;align-self:center;display:flex;justify-content:center;width:100%}.contact-section{padding-bottom:1rem}}@media screen and (max-width:480px){.section-subtitle{font-size:clamp(1.25rem,4vw,1.75rem)}.contact-info-card{padding:clamp(1.5rem,4vw,2rem)}.contact-form-section form{box-sizing:border-box;max-width:100%;padding:clamp(1.5rem,3vw,2rem);width:100%}}:root{--bg-primary:#0a0a0a;--bg-elevated:#111;--bg-card:#141414;--accent:#d18b47;--accent-light:#e8a86a;--accent-glow:#d18b4759;--text-primary:#fff;--text-secondary:#a1a1aa;--text-muted:#71717a;--border-subtle:#ffffff14;--border-accent:#d18b4759;--container-max:1400px;--header-height:72px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--transition:0.3s cubic-bezier(0.25,0.46,0.45,0.94)}*,:after,:before{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;scroll-padding-top:72px;scroll-padding-top:var(--header-height);scrollbar-gutter:stable}body{-webkit-font-smoothing:antialiased;background-color:#0a0a0a;background-color:var(--bg-primary);color:#a1a1aa;color:var(--text-secondary);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}body.menu-open{overflow:hidden;touch-action:none}@media screen and (max-width:991px){#root,body,html{max-width:100%;overflow-x:hidden}}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}#__next,#root{isolation:isolate}h1,h2,h3,h4,h5{color:#fff;color:var(--text-primary)}ul{list-style:none;padding:0}a{color:#fff;color:var(--text-primary);text-decoration:none}.container{margin:0 auto;width:min(92%,1400px);width:min(92%,var(--container-max))}.btn{align-items:center;background:linear-gradient(135deg,#d18b47,#b87333);background:linear-gradient(135deg,var(--accent),#b87333);border:none;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 0 24px #d18b4759;box-shadow:0 0 24px var(--accent-glow);color:#fff;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:12px 28px;transition:.3s cubic-bezier(.25,.46,.45,.94);transition:var(--transition)}.btn:hover{box-shadow:0 0 32px #d18b4759;box-shadow:0 0 32px var(--accent-glow);transform:translateY(-2px) scale(1.02)}.section-content .row{display:flex;flex-wrap:wrap;gap:50px}.section-content .row .left,.section-content .row .right{flex:300px 1 1}section.container{margin-bottom:30px;margin-top:30px;position:relative}.animate-section{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.animate-section.visible{opacity:1;transform:translateY(0)}.landing-row{grid-gap:clamp(2rem,5vw,4rem);align-items:start;display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:0 auto;max-width:1400px;max-width:var(--container-max);padding:clamp(3rem,6vw,5rem) clamp(1.5rem,4vw,3rem)}.landing-row>*{min-width:0}@media screen and (max-width:991px){.landing-row{gap:0;grid-template-columns:1fr;padding:clamp(2.5rem,6vw,3.5rem) 1.25rem clamp(3rem,7vw,4rem)}.landing-row .what-to-do-section{display:none}}
/*# sourceMappingURL=main.c55582db.css.map*/