:root{--color-bg: #fafafa;--color-text: #1a1a1a;--color-text-light: #666666;--color-accent: #000000;--color-border: #e5e5e5;--color-hover: #f0f0f0;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 48px;--spacing-xl: 80px;--spacing-xxl: 120px;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--transition: all .2s ease}[data-theme=dark]{--color-bg: #0a0a0a;--color-text: #e5e5e5;--color-text-light: #a0a0a0;--color-accent: #ffffff;--color-border: #2a2a2a;--color-hover: #1a1a1a}*{font-family:Poppins,sans-serif;font-display:swap;margin:0;padding:0;box-sizing:border-box}body,html{background-color:var(--color-bg);color:var(--color-text);overflow-x:hidden;width:100%;height:100%;line-height:1.6}.scroll-container{height:100vh;overflow-y:scroll;scroll-behavior:smooth}section{min-height:100vh}section:first-of-type{margin-top:0}@media (max-width: 1180px){*{overflow-x:hidden}}.navbar{width:100%;padding:var(--spacing-md) var(--spacing-xl);background:var(--color-bg);display:flex;justify-content:space-between;align-items:center;position:fixed;top:0;left:0;z-index:100;border-bottom:1px solid var(--color-border)}.logo{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-accent);text-decoration:none;letter-spacing:.5px}.logo-full{display:inline}.logo-short{display:none}.burger{display:none;flex-direction:column;gap:4px;cursor:pointer}.burger .line{width:24px;height:2px;background-color:var(--color-accent)}.themeToggle{width:25px;height:25px;border:none;background:transparent;color:var(--color-accent);font-size:2.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.themeToggle:hover{background-color:transparent;border-color:transparent}.navLinks{list-style:none;display:flex;gap:var(--spacing-lg);margin:0;padding:0}.navLinks li a{text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text);transition:var(--transition);position:relative}.navLinks li a:hover{color:var(--color-accent)}.navLinks li a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background-color:var(--color-accent);transition:var(--transition)}.navLinks li a:hover:after{width:100%}@media (max-width: 860px){.logo-full{display:none}.logo-short{display:inline}}@media (max-width: 768px){.navbar{padding:var(--spacing-sm) var(--spacing-md)}.navLinks{display:none;flex-direction:column;align-items:flex-end;justify-content:flex-start;position:fixed;top:62px;right:0;background:var(--color-bg);padding:var(--spacing-md);width:200px;border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);box-shadow:-2px 2px 8px #0000000d;z-index:99;gap:var(--spacing-xs)}.navLinks.open{display:flex;animation:slideInRight .3s ease forwards}.navLinks.close{display:flex;animation:slideOutRight .3s ease forwards}.navLinks li{width:100%;text-align:right}.navLinks li a{display:block;padding:var(--spacing-sm) 0;font-size:var(--font-size-base)}.navLinks li a:after{display:none}.themeToggle{width:36px;height:36px;font-size:1.1rem}.burger{display:flex}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(50px)}}.coreContent{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;background-color:var(--color-bg);color:var(--color-text);padding:var(--spacing-xl)}.contentWrapper{max-width:800px;width:100%;margin:0 auto}.textContainer{display:flex;flex-direction:column;gap:var(--spacing-md)}.greeting{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-text-light);margin:0}.coreContentTitle{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);line-height:1.2;margin:0;color:var(--color-accent)}.coreContentSubtitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);margin:0;color:var(--color-text)}.descriptionCore{font-size:var(--font-size-lg);line-height:1.7;color:var(--color-text-light);max-width:600px;margin:0}.buttonsContainer{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.linkButton{padding:12px 0;background:transparent;color:var(--color-accent);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition);border:none;border-bottom:1px solid var(--color-accent);letter-spacing:.5px}.linkButton:hover{opacity:.7}.linkButton.secondary{border-bottom:1px solid var(--color-text-light);color:var(--color-text-light)}.linkButton.secondary:hover{border-bottom-color:var(--color-accent);color:var(--color-accent)}@media (max-width: 768px){.coreContent{padding:var(--spacing-md)}.coreContentTitle{font-size:var(--font-size-2xl)}.coreContentSubtitle{font-size:var(--font-size-lg)}.descriptionCore{font-size:var(--font-size-base)}.buttonsContainer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}@media (max-width: 480px){.coreContent{padding:var(--spacing-sm)}.coreContentTitle{font-size:1.75rem}.coreContentSubtitle{font-size:var(--font-size-base)}.descriptionCore{font-size:var(--font-size-sm)}}.about-section{background-color:var(--color-bg);color:var(--color-text);padding:var(--spacing-xxl) var(--spacing-xl);width:100%}.about-container{max-width:800px;margin:0 auto}.about-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);color:var(--color-accent);letter-spacing:.5px}.about-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.about-description{font-size:var(--font-size-base);line-height:1.8;color:var(--color-text-light);margin:0}.skills-section{margin-top:var(--spacing-md)}.skills-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm);color:var(--color-text)}.skills-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.skill-tag{padding:8px 16px;background-color:transparent;border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);transition:var(--transition)}.skill-tag:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (max-width: 768px){.about-section{padding:var(--spacing-xl) var(--spacing-md)}.about-title{font-size:var(--font-size-lg)}.about-description,.skills-title{font-size:var(--font-size-sm)}}@media (max-width: 480px){.about-section{padding:var(--spacing-lg) var(--spacing-sm)}.skill-tag{font-size:.8rem;padding:6px 12px}}.work-section{background-color:var(--color-bg);color:var(--color-text);padding:var(--spacing-xxl) var(--spacing-xl);width:100%}.work-container{max-width:800px;margin:0 auto}.work-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);color:var(--color-accent);letter-spacing:.5px}.filter-buttons{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.filter-btn{background:transparent;color:var(--color-text-light);border:none;padding:8px 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition);border-bottom:2px solid transparent}.filter-btn:hover{color:var(--color-accent)}.filter-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:var(--font-weight-medium)}.experiences-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.experience-item{padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.experience-item:last-child{border-bottom:none}.experience-header{margin-bottom:var(--spacing-sm)}.experience-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0 0 4px}.experience-company{font-size:var(--font-size-base);color:var(--color-text-light);margin:0}.experience-meta{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-light);margin-bottom:var(--spacing-md);flex-wrap:wrap}.experience-divider{color:var(--color-border)}.experience-description{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.experience-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag{padding:4px 12px;background-color:transparent;border:1px solid var(--color-border);color:var(--color-text-light);font-size:.8rem;font-weight:var(--font-weight-normal);transition:var(--transition)}.tag:hover{border-color:var(--color-accent);color:var(--color-accent)}.experience-details{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease-in-out}.experience-details.expanded{grid-template-rows:1fr;margin-top:var(--spacing-md)}@media (max-width: 768px){.work-section{padding:var(--spacing-xl) var(--spacing-md)}.work-title{font-size:var(--font-size-lg)}.experience-title{font-size:var(--font-size-base)}.experience-company,.experience-description{font-size:var(--font-size-sm)}.experience-meta{font-size:.8rem}}@media (max-width: 480px){.work-section{padding:var(--spacing-lg) var(--spacing-sm)}.filter-buttons{gap:var(--spacing-xs)}.filter-btn{font-size:.8rem}.tag{font-size:.75rem;padding:3px 10px}}.projects-section{background-color:var(--color-bg);color:var(--color-text);padding:var(--spacing-xxl) var(--spacing-xl);width:100%}.projects-container{max-width:800px;margin:0 auto}.projects-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);color:var(--color-accent);letter-spacing:.5px}.projects-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.project-item{padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.project-item:last-child{border-bottom:none}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);gap:var(--spacing-md)}.project-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0}.project-link,.project-link-btn{font-size:var(--font-size-sm);color:var(--color-text-light);text-decoration:none;border:none;background:none;cursor:pointer;transition:var(--transition);border-bottom:1px solid transparent;padding:0;white-space:nowrap}.project-link:hover,.project-link-btn:hover{color:var(--color-accent);border-bottom-color:var(--color-accent)}.project-description{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.project-technologies{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tech-tag{padding:4px 12px;background-color:transparent;border:1px solid var(--color-border);color:var(--color-text-light);font-size:.8rem;font-weight:var(--font-weight-normal);transition:var(--transition)}.tech-tag:hover{border-color:var(--color-accent);color:var(--color-accent)}.details-toggle{display:flex;align-items:center;gap:6px;margin-top:var(--spacing-md);background:transparent;border:none;color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;padding:0;transition:var(--transition)}.details-toggle:hover{color:var(--color-accent)}.details-toggle .arrow{display:inline-block;font-size:1.2rem;transform:rotate(90deg);transition:transform .3s ease}.details-toggle .arrow.expanded{transform:rotate(270deg)}.project-details{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease-in-out}.project-details.expanded{grid-template-rows:1fr;margin-top:var(--spacing-md)}.details-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm);overflow:hidden}.details-list li{font-size:var(--font-size-sm);color:var(--color-text-light);line-height:1.6;padding-left:var(--spacing-md);position:relative}.details-list li:before{content:"—";position:absolute;left:0;color:var(--color-border)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background-color:var(--color-bg);padding:var(--spacing-xl);max-width:500px;width:90%;border:1px solid var(--color-border);box-shadow:0 4px 20px #0000001a}.modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md);color:var(--color-accent)}.modal-text{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.modal-close-btn{padding:10px 24px;background-color:var(--color-accent);color:var(--color-bg);border:none;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:var(--transition);margin-top:var(--spacing-sm)}.modal-close-btn:hover{opacity:.8}@media (max-width: 768px){.projects-section{padding:var(--spacing-xl) var(--spacing-md)}.projects-title{font-size:var(--font-size-lg)}.project-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.project-name{font-size:var(--font-size-base)}.project-description{font-size:var(--font-size-sm)}.modal-content{padding:var(--spacing-lg)}.modal-title{font-size:var(--font-size-base)}.modal-text{font-size:var(--font-size-sm)}}@media (max-width: 480px){.projects-section{padding:var(--spacing-lg) var(--spacing-sm)}.tech-tag{font-size:.75rem;padding:3px 10px}}.contact-section{background-color:var(--color-bg);color:var(--color-text);padding:var(--spacing-xxl) var(--spacing-xl);width:100%}.contact-container{max-width:800px;margin:0 auto}.contact-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);color:var(--color-accent);letter-spacing:.5px}.contact-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xxl)}.contact-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.contact-item:last-child{border-bottom:none}.contact-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);text-transform:uppercase;letter-spacing:1px}.contact-link{font-size:var(--font-size-base);color:var(--color-text-light);text-decoration:none;transition:var(--transition)}.contact-link:hover{color:var(--color-accent)}.contact-text{font-size:var(--font-size-base);color:var(--color-text-light)}.footer{text-align:center;padding:var(--spacing-xl) 0;color:var(--color-text-light);font-size:var(--font-size-sm);border-top:1px solid var(--color-border)}.footer p{margin:0}@media (max-width: 768px){.contact-section{padding:var(--spacing-xl) var(--spacing-md)}.contact-title{font-size:var(--font-size-lg)}.contact-label{font-size:.8rem}.contact-link,.contact-text{font-size:var(--font-size-sm)}}@media (max-width: 480px){.contact-section{padding:var(--spacing-lg) var(--spacing-sm)}.footer{font-size:.8rem}}.techStack{background-color:#1f1f1f;color:#fff;font-family:Poppins,sans-serif;padding:40px 20px;text-align:center}.techStackTitle{font-size:2rem;font-weight:700;margin-bottom:30px;color:#ecdfcc}.techCategory{margin-bottom:20px}.techCategory h3{font-size:1.4rem;color:#ecdfcc;margin-bottom:10px}.techIcons{display:flex;justify-content:center;flex-wrap:wrap;gap:15px}.techItem{background:#2b2b2b;padding:12px 15px;border-radius:10px;display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:#ecdfcc;transition:transform .2s ease,background .3s ease}.techItem .icon{font-size:1.5rem}.techItem:hover{transform:scale(1.1);background:#cbbeaa;color:#1f1f1f}@media (max-width: 768px){.techStack{padding:30px 15px}.techIcons{flex-direction:row;justify-content:center}.techItem{padding:10px 12px;font-size:.9rem}.techItem .icon{font-size:1.2rem}}
