*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#e8ecf1;color:#2c3e50;line-height:1.6}.container{display:flex;min-height:100vh}.sidebar{width:250px;background:linear-gradient(180deg,#4a5f7f,#3d4e63);color:#e8ecf1;padding:2rem 0;position:fixed;height:100vh;box-shadow:2px 0 10px #0000001a}.logo{text-align:center;margin-bottom:3rem;padding:0 1rem}.profile-picture{margin-bottom:1rem}.profile-picture img{width:80px;height:80px;border-radius:12px;border:3px solid #e8ecf1;object-fit:cover;box-shadow:0 2px 8px #0003;transition:transform .3s ease}.profile-picture img:hover{transform:scale(1.05)}.logo h2{font-size:1.8rem;font-weight:600;color:#d4dce5;letter-spacing:1px}.nav-links{list-style:none}.nav-links li{margin:0}.nav-links a{display:block;padding:1rem 2rem;color:#c5d0dd;text-decoration:none;font-size:1.1rem;transition:all .3s ease;border-left:4px solid transparent}.nav-links a:hover{background-color:#ffffff1a;border-left-color:#7fa4c7;color:#e8ecf1}.nav-links a.active{background-color:#ffffff26;border-left-color:#7fa4c7;color:#fff;font-weight:500}.mobile-menu-toggle{display:none;position:fixed;top:1rem;left:1rem;z-index:1001;background:#4a5f7f;border:none;border-radius:6px;padding:.75rem;cursor:pointer;box-shadow:0 2px 8px #0003;transition:all .3s ease}.mobile-menu-toggle:hover{background:#3d4e63;transform:scale(1.05)}.hamburger-line{display:block;width:20px;height:2px;background-color:#e8ecf1;margin:3px 0;transition:all .3s ease;border-radius:1px}.sidebar-overlay{display:none}.section{display:none;animation:fadeIn .5s ease-in}.section.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{font-size:2.5rem;color:#3d4e63;margin-bottom:1.5rem;font-weight:600}.intro-text{font-size:1.1rem;color:#5a6c7d;margin-bottom:1.5rem;line-height:1.8;max-width:800px}.carousel-container{margin-top:3rem;max-width:900px}.carousel-container h2{font-size:2rem;color:#3d4e63;margin-bottom:2rem;font-weight:500}.carousel{position:relative;background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 15px #4a5f7f26;overflow:hidden}.carousel-track{position:relative;width:100%;min-height:400px}.carousel-slide{display:none;flex-direction:column;align-items:center;justify-content:center;animation:slideIn .5s ease-in}.carousel-slide.active{display:flex}@keyframes slideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.placeholder-image{width:100%;max-width:700px;height:350px;background:linear-gradient(135deg,#6b8cae,#8ba4bf);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;font-weight:500;box-shadow:0 2px 10px #0000001a;margin-bottom:1rem;overflow:hidden}.placeholder-image img{width:100%;height:100%;object-fit:cover;border-radius:8px}.slide-caption{font-size:1.2rem;color:#4a5f7f;margin-top:1rem;font-weight:500}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:#4a5f7fb3;color:#fff;border:none;padding:1rem 1.2rem;cursor:pointer;font-size:1.5rem;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.carousel-btn:hover{background-color:#4a5f7fe6;transform:translateY(-50%) scale(1.1)}.carousel-btn.prev{left:1rem}.carousel-btn.next{right:1rem}.carousel-dots{text-align:center;margin-top:1.5rem}.dot{height:12px;width:12px;margin:0 6px;background-color:#c5d0dd;border-radius:50%;display:inline-block;cursor:pointer;transition:all .3s ease}.dot:hover{background-color:#8ba4bf}.dot.active{background-color:#4a5f7f;transform:scale(1.2)}.main-content{margin-left:250px;padding:2rem}body.number-crunch-active .main-content{width:calc(100vw - 250px)}.interactable{position:relative;z-index:10;pointer-events:auto;cursor:pointer}@media screen and (max-width:768px){.interactable{min-height:44px;min-width:44px}.mobile-menu-toggle{display:block}.sidebar{width:280px;transform:translate(-100%);transition:transform .3s ease;z-index:1000}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay.sidebar-overlay-visible{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999}.intro-text{max-width:none}.projects-grid{grid-template-columns:1fr;gap:1.5rem}.main-content{margin-left:0;padding:4rem 1.5rem 2rem;width:100%}body.number-crunch-active .main-content{padding:0!important;padding-top:4rem!important;margin:0!important;width:calc(100vw - 250px)!important;max-width:calc(100vw - 250px)!important}}@media screen and (max-width:768px){body.number-crunch-active .main-content{padding:0!important;padding-top:4rem!important;margin:0!important;width:calc(100vw - 250px)!important;max-width:calc(100vw - 250px)!important}}.categories-container{margin-top:3rem}.category{margin-bottom:4rem}.category h2{font-size:2rem;color:#3d4e63;margin-bottom:1rem;font-weight:500}.category-description{font-size:1.1rem;color:#5a6c7d;margin-bottom:2rem;line-height:1.6}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,360px);gap:2rem;margin-top:2rem;justify-content:start}.project-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #4a5f7f1a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #4a5f7f26}.project-image{height:200px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-image img{transform:scale(1.05)}.project-content{padding:1.5rem}.project-content h3{font-size:1.3rem;color:#3d4e63;margin-bottom:.5rem;font-weight:600}.project-content p{color:#5a6c7d;margin-bottom:1rem;line-height:1.6}.technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tech-tag{background:#e8ecf1;color:#4a5f7f;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.project-status{margin-bottom:.75rem}.status-tag{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-right:.5rem}.status-completed{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-in-development{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-defunct{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.project-link{display:inline-block;background:#4a5f7f;color:#fff;padding:.75rem 1.5rem;text-decoration:none;border-radius:6px;font-weight:500;transition:background .3s ease}.project-link:hover{background:#3d4e63}.activities-grid{display:grid;grid-template-columns:repeat(auto-fit,360px);gap:2rem;margin-top:2rem;justify-content:start}.activity-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #4a5f7f1a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.activity-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #4a5f7f26}.activity-image{height:200px;overflow:hidden}.activity-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.activity-card:hover .activity-image img{transform:scale(1.05)}.activity-content{padding:1.5rem}.activity-content h3{font-size:1.3rem;color:#3d4e63;margin-bottom:.5rem;font-weight:600}.activity-content p{color:#5a6c7d;margin-bottom:.5rem;line-height:1.6}.activity-details{font-size:.9rem;color:#7a8a9e;font-style:italic;line-height:1.5}.activity-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.skill-tag,.status-tag{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.skill-tag{border:1px solid}.skill-novice{background:#e7f3ff;color:#06c;border-color:#b3d9ff}.skill-intermediate{background:#fff3cd;color:#856404;border-color:#ffeaa7}.skill-expert{background:#d1ecf1;color:#0c5460;border-color:#bee5eb}.skill-default{background:#f8f9fa;color:#6c757d;border-color:#dee2e6}.status-active{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-inactive{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status-default{background:#e2e3e5;color:#383d41;border:1px solid #d6d8db}
