@import 'https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;500;700&family=Lora:wght@400;700&display=swap';:root{--color-primary:#99a98f;--color-primary-dark:#7a8a6f;--color-secondary:#dce3c7;--color-background:#fff8de;--color-text:#333333;--color-text-light:#666666;--color-border:#dce3c7;--color-white:#ffffff;--font-family-body:'Ubuntu', sans-serif;--font-family-heading:'Lora', serif;--font-size-h1:2.5rem;--font-size-h2:1.8rem;--font-size-h3:1.4rem;--font-size-body:1rem;--font-size-small:0.875rem;--line-height-heading:1.3;--line-height-body:1.6;--line-height-small:1.5;--spacing-xs:8px;--spacing-sm:16px;--spacing-md:24px;--spacing-lg:40px;--spacing-xl:60px;--max-content-width:1200px;--padding-desktop:60px;--padding-tablet:40px;--padding-mobile:20px;--navbar-height:60px;--border-radius:8px;--border-radius-pill:20px;--shadow-card:0 2px 8px rgba(0, 0, 0, 0.1);--shadow-hover:0 4px 12px rgba(0, 0, 0, 0.15);--transition:0.3s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family-body);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);font-weight:700;line-height:var(--line-height-heading);color:var(--color-text);margin-bottom:var(--spacing-sm)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}p{margin-bottom:var(--spacing-sm)}a{color:var(--color-primary);text-decoration:none;transition:var(--transition)}a:hover{text-decoration:underline}ul,ol{margin-left:1.5rem;margin-bottom:var(--spacing-sm)}li{margin-bottom:8px;line-height:var(--line-height-body)}img{max-width:100%;height:auto;display:block}.container{max-width:var(--max-content-width);margin:0 auto;padding:0 var(--padding-desktop)}main{margin-top:var(--navbar-height);min-height:calc(100vh - var(--navbar-height))}section{padding:var(--spacing-xl)0}.btn{display:inline-block;padding:12px 24px;font-family:var(--font-family-body);font-size:var(--font-size-body);font-weight:700;text-align:center;text-decoration:none;border:none;border-radius:6px;cursor:pointer;transition:var(--transition)}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-primary-dark);text-decoration:none}.card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--shadow-card);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-hover)}.nav-card{background-color:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--border-radius);padding:40px 30px;min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:var(--shadow-card);transition:var(--transition);text-decoration:none;color:var(--color-primary);font-weight:700;font-size:1.3rem;line-height:1.4}.nav-card:hover{background-color:var(--color-primary);color:var(--color-white);transform:scale(1.02);text-decoration:none}.badge{display:inline-block;padding:10px 16px;background-color:var(--color-secondary);color:var(--color-primary);font-size:.9rem;font-weight:700;border-radius:var(--border-radius-pill);margin-right:8px;margin-bottom:8px}.skill-badge{display:inline-block;padding:10px 16px;background-color:var(--color-secondary);color:var(--color-primary);font-size:.95rem;font-weight:700;border-radius:var(--border-radius-pill);border:1px solid var(--color-primary);margin-right:12px;margin-bottom:12px;cursor:pointer;transition:var(--transition)}.skill-badge:hover{background-color:var(--color-primary);color:var(--color-background)}.timeline{position:relative;padding-left:30px;border-left:2px solid var(--color-primary)}.timeline-item{position:relative;background-color:rgba(220,227,199,.2);border-left:3px solid var(--color-primary);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-card)}.timeline-item::before{content:'';position:absolute;width:12px;height:12px;background-color:var(--color-primary);border-radius:50%;left:-37px;top:24px}.timeline-company{font-size:1.3rem;font-weight:700;color:var(--color-primary);margin-bottom:4px}.timeline-position{font-size:1.1rem;font-weight:700;color:var(--color-text);margin-bottom:8px}.timeline-date{font-size:.95rem;color:var(--color-text-light);margin-bottom:var(--spacing-sm)}.timeline-description{margin-bottom:var(--spacing-sm)}.timeline-skills{margin-top:var(--spacing-sm)}.timeline-skills-label{font-weight:700;font-size:.9rem;margin-bottom:8px}.timeline-skill-tag{display:inline-block;background-color:var(--color-secondary);color:var(--color-primary);padding:6px 12px;border-radius:var(--border-radius-pill);margin-right:8px;margin-bottom:8px;font-size:.85rem}.section-header{font-size:var(--font-size-h2);font-weight:700;color:var(--color-text);border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-sm);margin-bottom:30px}.project-card{background-color:var(--color-background);border:1px solid var(--color-secondary);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--shadow-card);transition:var(--transition)}.project-card:hover{box-shadow:var(--shadow-hover);border-top:3px solid var(--color-primary)}.project-title{font-size:1.3rem;font-weight:700;color:var(--color-text);margin-bottom:8px}.project-link{font-size:var(--font-size-body);color:var(--color-primary);margin-bottom:var(--spacing-sm);display:inline-block}.project-link:hover{text-decoration:underline}.project-description{margin-bottom:var(--spacing-sm)}.project-metadata{font-size:.85rem;color:var(--color-text-light);display:flex;gap:var(--spacing-sm)}.article-card{background-color:var(--color-background);border:1px solid var(--color-secondary);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--shadow-card);transition:var(--transition)}.article-card:hover{box-shadow:var(--shadow-hover);border-left:4px solid var(--color-primary)}.article-title{font-size:1.3rem;font-weight:700;color:var(--color-text);margin-bottom:8px}.article-link{font-size:var(--font-size-body);color:var(--color-primary);margin-bottom:var(--spacing-sm);display:inline-block}.article-publication{font-size:.9rem;color:var(--color-text-light);margin-bottom:4px}.publication-badge{display:inline-block;background-color:var(--color-secondary);color:var(--color-primary);padding:4px 8px;border-radius:4px;font-size:.8rem;margin-bottom:12px}.article-summary{font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-text);margin-bottom:12px}@media screen and (max-width:1023px){.container{padding:0 var(--padding-tablet)}section{padding:50px 0}h1{font-size:2.2rem}h2{font-size:1.6rem}h3{font-size:1.3rem}}@media screen and (max-width:767px){:root{--navbar-height:50px;--font-size-h1:2rem;--font-size-h2:1.4rem;--font-size-h3:1.2rem}.container{padding:0 var(--padding-mobile)}section{padding:30px 0}h1{font-size:2rem}h2{font-size:1.4rem}h3{font-size:1.2rem}.nav-card{padding:30px 20px;min-height:120px;font-size:1.1rem}.badge{font-size:.85rem;padding:8px 12px}.skill-badge{font-size:.85rem;padding:8px 12px;margin-right:10px;margin-bottom:10px}.timeline{padding-left:20px}.timeline-item{padding:20px}.timeline-item::before{left:-32px}.timeline-company{font-size:1.1rem}.timeline-position{font-size:1rem}.project-card,.article-card{padding:20px}.project-title,.article-title{font-size:1.1rem}}.grid-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}@media screen and (max-width:767px){.grid-2col{grid-template-columns:1fr}}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}@media screen and (max-width:767px){.grid-auto{grid-template-columns:1fr}}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-center{align-items:center;justify-content:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}