:root{--portfolio-primary:#1e6fa8;--portfolio-secondary:#17415d;--portfolio-success:#047857;--text:#1e293b;--text-muted:#4b5563;--bg:#fafafa;--card-bg:#ffffff;--border:#e2e8f0;--shadow:rgba(0, 0, 0, 0.1);--shadow-hover:rgba(0, 0, 0, 0.15);--text-shadow:0 2px 4px rgba(0, 0, 0, 0.3);--text-shadow-dark:0 2px 4px rgba(0, 0, 0, 0.5);--text-shadow-meta:0 1px 2px rgba(0, 0, 0, 0.2);--photo-surface-text:#ffffff}@media(prefers-color-scheme:dark){:root{--portfolio-primary:#5dade2;--portfolio-secondary:#17415d;--portfolio-success:#34d399;--text:#f1f5f9;--text-muted:#cbd5e1;--bg:#0a0f1a;--card-bg:#1e293b;--border:#334155;--shadow:rgba(0, 0, 0, 0.4);--shadow-hover:rgba(0, 0, 0, 0.6);--text-shadow:0 2px 4px rgba(0, 0, 0, 0.5);--text-shadow-dark:0 2px 4px rgba(0, 0, 0, 0.5);--text-shadow-meta:0 1px 2px rgba(0, 0, 0, 0.3);--photo-surface-text:#ffffff}}[data-theme=dark]{--portfolio-primary:#5dade2;--portfolio-secondary:#17415d;--portfolio-success:#34d399;--text:#f1f5f9;--text-muted:#cbd5e1;--bg:#0a0f1a;--card-bg:#1e293b;--border:#334155;--shadow:rgba(0, 0, 0, 0.4);--shadow-hover:rgba(0, 0, 0, 0.6);--text-shadow:0 2px 4px rgba(0, 0, 0, 0.5);--text-shadow-dark:0 2px 4px rgba(0, 0, 0, 0.5);--text-shadow-meta:0 1px 2px rgba(0, 0, 0, 0.3);--photo-surface-text:#ffffff}[data-theme=light]{--portfolio-primary:#1e6fa8;--portfolio-secondary:#17415d;--portfolio-success:#10b981;--text:#1e293b;--text-muted:#4b5563;--bg:#fafafa;--card-bg:#ffffff;--border:#e2e8f0;--shadow:rgba(0, 0, 0, 0.1);--shadow-hover:rgba(0, 0, 0, 0.15);--text-shadow:0 2px 4px rgba(0, 0, 0, 0.3);--text-shadow-dark:0 2px 4px rgba(0, 0, 0, 0.3);--text-shadow-meta:0 1px 2px rgba(0, 0, 0, 0.2);--photo-surface-text:#ffffff}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.portfolio-container{max-width:1200px;margin:0 auto;padding:3rem 1.5rem;font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,sans-serif;text-align:justify;color:var(--text)}.portfolio-header h1{font-size:3rem;font-weight:700;margin:0 0 1.5rem;background:linear-gradient(135deg,var(--portfolio-primary),var(--portfolio-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portfolio-content{max-width:800px;margin:0 auto;font-size:1.125rem;line-height:1.7;color:var(--text-muted)}.portfolio-content h2{color:var(--text);font-size:2rem;font-weight:600;text-align:start;margin:3rem 0 1.5rem;padding-bottom:.75rem;border-bottom:3px solid var(--portfolio-primary)}.portfolio-content h3{color:var(--portfolio-primary);font-size:1.5rem;font-weight:600;text-align:start;margin:2rem 0 1rem}.portfolio-content p{margin-bottom:1.25rem}.portfolio-content strong{color:var(--text);font-weight:600}.portfolio-content ul{margin:1.5rem 0;padding:0;list-style:none}.portfolio-content li{margin-bottom:1rem;line-height:1.7;list-style:none}@media(max-width:768px){.portfolio-container{padding:2rem 1rem}.portfolio-header h1{font-size:2.25rem}.portfolio-content{font-size:1rem}.portfolio-content h2{font-size:1.75rem}.portfolio-content h3{font-size:1.25rem}}@media(max-width:480px){.portfolio-header h1{font-size:1.75rem}}.portfolio-header{text-align:center;margin-bottom:4rem}.portfolio-card-cover .entry-cover{width:100%;height:180px;overflow:hidden;border-radius:8px;margin-bottom:1rem;position:relative;z-index:1}.portfolio-logo{object-fit:contain;background:0 0;border-radius:0;padding:0;box-shadow:none;transition:transform .2s ease}.svg-logo{display:flex;align-items:center;justify-content:center;color:var(--text)}.svg-logo svg{width:100%;height:100%;transition:fill .2s ease}.portfolio-logo.complex-svg{width:48px;height:48px;object-fit:contain}.portfolio-company-logos.top-left{position:absolute;top:-2rem;left:1rem;z-index:20;display:flex;gap:.5rem;flex-wrap:wrap;padding:.3rem;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.1)}@media(prefers-color-scheme:dark){.portfolio-company-logos.top-left{background:rgba(0,0,0,.1);box-shadow:0 4px 6px rgba(0,0,0,.2)}}[data-theme=dark] .portfolio-company-logos.top-left{background:rgba(0,0,0,.1);box-shadow:0 4px 6px rgba(0,0,0,.2)}[data-theme=light] .portfolio-company-logos.top-left{background:rgba(255,255,255,.1);box-shadow:0 4px 6px rgba(0,0,0,.1)}.portfolio-company-logos .portfolio-logo{width:64px;height:auto;border-radius:0;padding:0;box-shadow:none}.portfolio-skill-logos .portfolio-logo{width:48px;height:48px;border-radius:0;padding:0;box-shadow:none}@media(max-width:768px){.portfolio-skill-logos .portfolio-logo{width:30px;height:30px}.portfolio-logo.complex-svg{width:30px;height:30px}.portfolio-company-logos .portfolio-logo{width:48px;height:auto}.portfolio-company-logos.top-left{left:.2rem}.portfolio-skill-logos.bottom-right{right:.2rem!important;gap:.2rem}}.portfolio-skill-logos.bottom-right{position:absolute;bottom:-2rem;right:1rem;z-index:20;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.portfolio-card-link-wrapper:hover .portfolio-logo{transform:scale(1.1)}.clickable-portfolio-card{overflow:visible!important}.portfolio-card-link-wrapper{overflow:visible!important}.portfolio-card-cover .entry-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.clickable-portfolio-card:hover .portfolio-card-cover img{transform:scale(1.05)}.portfolio-card-content{padding-top:.5rem}.clickable-portfolio-card{position:relative;margin-bottom:2.5rem!important;padding:1rem;background:var(--card-bg);border-radius:12px;overflow:visible!important;box-shadow:0 8px 24px var(--shadow);border:1px solid var(--border);transition:all .5s cubic-bezier(.16,1,.3,1);animation:fadeInUp .6s ease-out backwards}.clickable-portfolio-card:nth-child(1){animation-delay:.1s}.clickable-portfolio-card:nth-child(2){animation-delay:.2s}.clickable-portfolio-card:nth-child(3){animation-delay:.3s}.clickable-portfolio-card:nth-child(4){animation-delay:.4s}.clickable-portfolio-card:nth-child(5){animation-delay:.5s}.clickable-portfolio-card::after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,rgba(52,152,219,.15),transparent 70%);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;z-index:0;pointer-events:none}.clickable-portfolio-card:hover{transform:translateY(-8px)scale(1.01);box-shadow:0 16px 40px rgba(52,152,219,.3),0 0 0 1px rgba(52,152,219,.2);border-color:rgba(52,152,219,.5);margin-bottom:2.75rem}.clickable-portfolio-card:hover::after{width:300px;height:300px}.clickable-portfolio-card:active{transform:translateY(-6px)scale(.99);transition-duration:.1s}.clickable-portfolio-card .portfolio-card-link-wrapper{display:block;position:relative;padding:1rem;margin:-1rem;z-index:1;color:inherit;text-decoration:none;line-height:1.7}.clickable-portfolio-card .portfolio-card-link-wrapper>*{position:relative;z-index:2}.clickable-portfolio-card .portfolio-card-link-wrapper strong{font-weight:600;color:var(--text)}.clickable-portfolio-card .portfolio-card-link-wrapper em{font-style:italic;color:var(--text-muted)}.challenges-solutions-container{margin:2rem 0;padding:1rem 0}.challenges-solutions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin:0 auto;max-width:1200px}.challenge-solution-card{background-color:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px var(--shadow);border:1px solid var(--border);text-align:left;position:relative}.challenge-header{padding-bottom:.75rem;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border);opacity:.8}.challenge-header h3{color:var(--portfolio-primary);margin:0;font-size:1.25rem;font-weight:600}.challenge-header::before{content:"🎯";font-size:1.25rem}.solution-header{padding-bottom:.75rem;margin:1rem 0;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border);opacity:.8}.solution-header h3{color:var(--portfolio-success);margin:0;font-size:1.25rem;font-weight:600}.solution-header::before{content:"✅";font-size:1.25rem}.challenge-content,.solution-content{color:var(--text);line-height:1.6;text-align:left}.challenge-content p,.solution-content p{margin-bottom:1rem}@media(max-width:768px){.challenges-solutions-grid{grid-template-columns:1fr}}@media(max-width:480px){.challenge-solution-card{padding:1rem}}