*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#fafcfc;--color-surface:#12121a;--color-surface-elevated:#1a1a24;--color-text:#fff;--color-text-secondary:#c5c5ca;--color-text-muted:#e8b4ae;--color-accent:#0ccac4;--color-accent-hover:#67ada0;--color-success:#52c7b8;--color-warning:#ffa726;--color-pink:#e8b4ae;--color-border:#2a2a2a;--font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;--shadow-island:0 40px 80px #0009,0 20px 40px #0006,0 10px 20px #0000004d;--shadow-island-hover:0 60px 120px #000000b3,0 30px 60px #00000080,0 15px 30px #0006;--transition:all 0.4s cubic-bezier(0.4,0,0.2,1);--transition-fast:all 0.2s cubic-bezier(0.4,0,0.2,1)}html{height:100%}body::-webkit-scrollbar{display:none}body{-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;background:#1b2835;color:#fff;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-family:var(--font-family);height:100%;line-height:1.6;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.timeline-app{min-height:100vh;position:relative}.video-background{height:100%;left:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:-2}@media (max-width:480px){.video-background{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-2}}.background-video{height:auto;left:50%;min-height:100%;min-width:100%;object-fit:cover;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto}.video-overlay{background:linear-gradient(180deg,#0a0a0f80 100%,#0a0a0f66 0,#0a0a0f80 0);height:100%;left:0;position:absolute;top:0;width:100%}.floating-background{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.bg-orb{animation:float-gentle 25s ease-in-out infinite;border-radius:50%;filter:blur(100px);opacity:.15;position:absolute}.orb-1{animation-delay:0s;background:radial-gradient(circle,#67ada0,#0000);height:600px;left:-100px;top:-200px;width:600px}.orb-2{animation-delay:8s;background:radial-gradient(circle,#0ccac4,#0000);height:500px;right:-150px;top:40%;width:500px}.orb-3{animation-delay:16s;background:radial-gradient(circle,#e8b4ae,#0000);bottom:-100px;height:550px;left:30%;width:550px}@keyframes float-gentle{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-40px) scale(1.05)}66%{transform:translate(-30px,40px) scale(.95)}}.bg-grid{background-image:linear-gradient(#67ada00d 1px,#0000 0),linear-gradient(90deg,#67ada00d 1px,#0000 0);background-size:100px 100px;height:100%;left:0;opacity:.4;position:absolute;top:0;width:100%}.nav-stack{background:#0000;left:0;padding:1.5rem 0;position:fixed;right:0;top:0;transition:var(--transition-fast);z-index:1000}.nav-stack.scrolled{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:0 4px 30px #00000080;padding:1rem 0}.nav-content-stack{align-items:center;display:flex;height:20px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 3rem}.nav-logo-stack{align-items:center;color:#fff;display:flex;font-size:1.25rem;font-weight:700;gap:.75rem}.logo-text{color:#fff}.logo-initial{align-items:center;background:linear-gradient(135deg,#67ada0,#0ccac4);border-radius:10px;color:#fff;display:flex;font-size:1.25rem;font-weight:800;height:40px;justify-content:center;width:40px}.menu-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:6px;padding:.5rem}.menu-toggle span{background:#fff;border-radius:2px;height:2px;transition:var(--transition-fast);width:28px}.menu-toggle span.active:first-child{transform:rotate(45deg) translate(8px,8px)}.menu-toggle span.active:nth-child(2){opacity:0}.menu-toggle span.active:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.nav-links-stack{display:flex;gap:2rem}.nav-links-stack a{border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:var(--transition-fast)}.nav-links-stack a:hover{background:#0ccac433;color:#fff;transform:translateY(-1px)}.container-bento{margin:0 auto;max-width:1400px;padding:0 2rem}.bento-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.bento-card{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#12121a99;border:1px solid #ffffff0d;border-radius:24px;overflow:hidden;padding:2rem;transition:var(--transition)}.bento-card:hover{background:#12121acc;border-color:#0ccac433;box-shadow:0 20px 60px #0006;transform:translateY(-2px)}.card-header-bento{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.card-header-bento h3{font-size:1.25rem;font-weight:700}.card-icon{font-size:1.75rem}.hero-bento{align-items:center;display:flex;min-height:100vh;padding:8rem 0 4rem;position:relative;z-index:1}.hero-grid{gap:1.5rem;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto auto}.hero-main{align-items:center;display:flex;grid-column:span 2;grid-row:span 2;padding:3rem}.hero-main:hover{background:#12121acc}.hero-top-row{align-items:center;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2.5rem}.hero-avatar{animation:fadeIn .8s ease .2s both;position:relative}.avatar-image{background:linear-gradient(var(--color-surface),var(--color-surface)) padding-box,linear-gradient(135deg,#67ada0,#0ccac4,#e8b4ae) border-box;border:3px solid #0000;border-radius:50%;box-shadow:0 8px 30px #0ccac480,0 0 0 8px #0ccac414;display:block;height:160px;object-fit:cover;transition:var(--transition);width:160px}.avatar-image:hover{box-shadow:0 12px 40px #0ccac4b3,0 0 0 12px #0ccac41f,0 0 60px #0ccac466;transform:scale(1.05) rotate(2deg)}.hero-avatar:before{animation:pulse-ring-large 3s ease-in-out infinite;background:linear-gradient(135deg,#e8b4ae,#0ccac4,#ffeeb4);border-radius:50%;content:"";height:180px;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:var(--transition);width:180px;z-index:-1}@keyframes pulse-ring-large{0%,to{opacity:0;transform:translate(-50%,-50%) scale(1)}50%{opacity:.3;transform:translate(-50%,-50%) scale(1.15)}}.hero-avatar:hover:before{opacity:.5}.status-badge-bento{align-items:center;background:#10b9811a;border:1px solid #10b98133;border-radius:100px;color:var(--color-success);display:inline-flex;flex-shrink:0;font-size:.9375rem;font-weight:600;gap:.5rem;margin-bottom:0;padding:.625rem 1.25rem}.status-dot-bento{animation:pulse 2s ease infinite;background:var(--color-success);border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 #10b98166;opacity:1}50%{box-shadow:0 0 0 8px #10b98100;opacity:.8}}.hero-title-bento{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1rem}.title-subtitle{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#67ada0,#ffeeb4,#0ccac4);-webkit-background-clip:text;display:block;font-size:clamp(1.5rem,3vw,2.5rem);margin-top:.5rem}.hero-description-bento{color:var(--color-text-secondary);font-size:1.125rem;line-height:1.7;margin-bottom:2rem}.hero-description-bento strong{color:var(--color-text);font-weight:600}.hero-actions-bento{display:flex;flex-wrap:wrap;gap:1rem}.btn-bento{align-items:center;border:none;border-radius:12px;color:inherit;cursor:pointer;display:flex;font-family:var(--font-family);font-size:.9375rem;font-weight:600;gap:.5rem;padding:1rem 2rem;text-decoration:none;transition:var(--transition)}.btn-bento.primary{background:linear-gradient(135deg,#67ada0,#0ccac4);color:#fff}.btn-bento.primary:hover{box-shadow:0 10px 30px #0ccac466;transform:translateY(-2px)}.btn-bento.secondary{background:#ffffff0d;border:1px solid var(--color-border);color:var(--color-text)}.btn-bento.secondary:hover{background:#ffffff1a;transform:translateY(-2px)}.stats-card{grid-column:span 2}.stats-grid-bento{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.stat-item-bento{background:#ffffff05;border-radius:12px;padding:1rem;text-align:center}.stat-value-bento{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ffeeb4,#0ccac4);-webkit-background-clip:text;font-size:2.5rem;font-weight:800;line-height:1.2;margin-bottom:.5rem}.stat-label-bento{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.time-card{border:none;grid-column:span 1;overflow:hidden;position:relative}.time-card:before{background-image:url(https://firebasestorage.googleapis.com/v0/b/liam-portfolio.appspot.com/o/Np-2.jpeg?alt=media&token=2b1904ff-d20c-4fd4-ab47-3ef9c63d9af2);background-position:50%;background-repeat:no-repeat;background-size:cover;bottom:0;content:"";left:0;opacity:.65;position:absolute;right:0;top:0;transition:var(--transition);z-index:0}.time-card:hover:before{opacity:.85;transform:scale(1.05)}.card-header-bento,.time-display-bento{position:relative;z-index:1}.time-card:after{background:linear-gradient(135deg,#12121a1a 100%,#12121a0d 0,#12121a1a 0);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.time-display-bento{text-align:center}.time-large{font-feature-settings:"tnum";color:var(--color-text);font-size:3rem;font-variant-numeric:tabular-nums;font-weight:800;margin-bottom:1rem}.time-location{align-items:center;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:.5rem}.location-pin{font-size:1.25rem}.time-date{color:var(--color-text);font-size:1rem}.info-card{grid-column:span 1}.info-list-bento{display:flex;flex-direction:column;gap:1rem}.info-item-bento{align-items:center;background:#ffffff05;border-radius:12px;display:flex;gap:1rem;padding:1rem}.info-emoji{font-size:2rem}.info-title{font-size:1rem;font-weight:700}.info-subtitle{color:var(--color-text-secondary);font-size:.875rem}.tech-card{grid-column:span 2;grid-row:span 1}.tech-tags-bento{display:flex;flex-wrap:wrap;gap:.75rem}.tech-tag{background:#0ccac41a;border:1px solid #0ccac433;border-radius:10px;color:#0ccac4;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:var(--transition)}.tech-tag:hover{background:#0ccac433;transform:translateY(-2px)}.social-card{grid-column:span 2}.social-links-bento{display:flex;flex-direction:column;gap:.75rem}.social-link-bento{align-items:center;background:#ffffff05;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);display:flex;font-weight:500;gap:1rem;padding:1rem;text-decoration:none;transition:var(--transition)}.social-link-bento:hover{background:#ffffff0d;border-color:var(--color-accent);transform:translateX(5px)}.section-islands{padding:8rem 0;position:relative;z-index:1}.container-islands{margin:0 auto;max-width:1400px;padding:0 3rem}.island{animation:floatIn .8s ease both;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#12121a99;border:1px solid #ffffff0d;border-radius:32px;box-shadow:var(--shadow-island);padding:3rem;position:relative;transition:var(--transition)}@keyframes floatIn{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.island:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:1px;left:0;opacity:0;position:absolute;right:0;top:0;transition:var(--transition)}.island:hover{border-color:#0ccac433;box-shadow:var(--shadow-island-hover);transform:translateY(-10px) scale(1.01)}.island:hover:before{opacity:1}.island-header{margin-bottom:3rem}.island-label{color:var(--color-accent);display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.15em;margin-bottom:1rem;text-transform:uppercase}.island-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1rem}.about-grid-islands{grid-gap:4rem;align-items:start;display:grid;gap:4rem;grid-template-columns:1.5fr 1fr}.about-text-islands{color:var(--color-text-secondary);font-size:1.0625rem;line-height:1.8}.text-lead{color:var(--color-text);font-size:1.375rem;font-weight:500}.about-text-islands p,.text-lead{margin-bottom:1.5rem}.about-credentials-islands{display:flex;flex-direction:column;gap:1.5rem}.credential-card-islands{align-items:center;background:#ffffff08;border:1px solid #ffffff0d;border-radius:16px;display:flex;gap:1.5rem;padding:1.5rem;transition:var(--transition)}.credential-card-islands:hover{background:#ffffff0d;border-color:#0ccac44d;transform:translateX(10px)}.credential-icon-islands{align-items:center;background:#0ccac41a;border-radius:14px;display:flex;flex-shrink:0;font-size:2.5rem;height:70px;justify-content:center;width:70px}.credential-title{font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.credential-subtitle{color:var(--color-text-secondary);font-size:.9375rem}.section-header-islands{margin-bottom:4rem;text-align:center}.section-label-islands{color:var(--color-accent);display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.15em;margin-bottom:1rem;text-transform:uppercase}.section-title-islands{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1rem}.skills-islands{background:#ffffff03}.skills-grid-islands{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.skill-island{animation-delay:0s;animation-delay:var(--animation-delay,0s)}.skill-header-islands{align-items:center;display:flex;gap:1rem;margin-bottom:2rem}.skill-icon-islands{font-size:2.5rem}.skill-category-islands{font-size:1.5rem;font-weight:700}.skill-items-islands{display:flex;flex-wrap:wrap;gap:.75rem}.skill-chip-islands{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:var(--transition-fast)}.skill-chip-islands:hover{background:#0ccac41a;border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.container-timeline{margin:0 auto;max-width:1400px;padding:0 3rem}.journey-timeline{padding:8rem 0;position:relative}.section-header-timeline{margin-bottom:5rem}.section-header-timeline.centered{text-align:center}.section-label-timeline{color:var(--color-accent);display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.15em;margin-bottom:1rem;text-transform:uppercase}.section-title-timeline{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1rem}.section-description-timeline{color:var(--color-text-secondary);font-size:1.25rem;line-height:1.7}.timeline-wrapper{margin:0 auto;max-width:1200px;position:relative}.timeline-line{background:linear-gradient(180deg,#0000,var(--color-accent) 10%,var(--color-accent) 90%,#0000);bottom:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:3px}.timeline-content,.timeline-item{position:relative}.timeline-item{margin-bottom:6rem;opacity:0;transform:translateY(40px);transition:var(--transition)}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-item:nth-child(odd) .timeline-card{margin-right:52%}.timeline-item:nth-child(2n) .timeline-card{margin-left:52%}.timeline-dot{align-items:center;background:var(--color-surface);border:4px solid;border-radius:50%;box-shadow:0 4px 20px #0000004d;display:flex;height:60px;justify-content:center;left:50%;position:absolute;top:2rem;transform:translateX(-50%);transition:var(--transition);width:60px;z-index:2}.timeline-item.visible .timeline-dot{animation:popIn .4s ease;transform:translateX(-50%) scale(1)}@keyframes popIn{0%{transform:translateX(-50%) scale(0)}50%{transform:translateX(-50%) scale(1.2)}to{transform:translateX(-50%) scale(1)}}.dot-icon{font-size:1.75rem}.timeline-item.present .timeline-dot{animation:pulseGlow 2s ease infinite}@keyframes pulseGlow{0%,to{box-shadow:0 4px 20px #0000004d,0 0 0 0 #0ccac466}50%{box-shadow:0 4px 20px #0000004d,0 0 0 20px #0ccac400}}.timeline-card{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#12121a99;border:1px solid #ffffff0d;border-radius:24px;box-shadow:0 20px 60px #0006;padding:2.5rem;transition:var(--transition)}.timeline-card:hover{background:#12121acc;border-color:#0ccac433;box-shadow:0 30px 80px #00000080;transform:translateY(-5px)}.card-header-timeline{flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem}.card-header-timeline,.card-year{align-items:center;display:flex;gap:1rem}.card-year{font-size:2.5rem;font-weight:900;line-height:1}.present-badge{background:#10b9811a;border:1px solid #10b9814d;border-radius:8px;color:var(--color-success);font-size:.75rem;padding:.375rem .875rem}.card-category,.present-badge{font-weight:700;letter-spacing:.05em;text-transform:uppercase}.card-category{background:#0ccac41a;border:1px solid;border-radius:10px;font-size:.875rem;padding:.5rem 1rem}.card-title-timeline{font-size:1.75rem;font-weight:700;line-height:1.3;margin-bottom:.75rem}.card-company-timeline,.card-description-timeline{color:var(--color-text-secondary);font-size:1rem;margin-bottom:1.5rem}.card-description-timeline{line-height:1.8}.card-achievements{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.achievement-item-timeline{align-items:start;background:#10b9810d;border-radius:10px;color:var(--color-text-secondary);display:flex;font-size:.9375rem;gap:.75rem;padding:.75rem 1rem}.achievement-item-timeline svg{color:var(--color-success);flex-shrink:0;margin-top:2px}.card-technologies{display:flex;flex-wrap:wrap;gap:.5rem}.tech-badge-timeline{background:#ffffff0d;border:1px solid;border-radius:8px;font-size:.8125rem;font-weight:600;padding:.5rem 1rem}.section-bento{padding:6rem 0}.section-header-bento{margin-bottom:3rem}.section-header-bento.centered{text-align:center}.section-label-bento{color:var(--color-accent);display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.15em;margin-bottom:.75rem;text-transform:uppercase}.section-title-bento{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1rem}.section-description-bento{color:var(--color-text-secondary);font-size:1.125rem;line-height:1.7}.projects-bento{background:#ffffff03}.filter-buttons-bento{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:3rem}.filter-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-family);font-size:.9375rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--transition)}.filter-btn.active,.filter-btn:hover{background:#0ccac41a;border-color:var(--color-accent);color:var(--color-accent)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.project-card-bento{display:flex;flex-direction:column;gap:1.25rem}.project-header-bento{align-items:center;display:flex;justify-content:space-between;min-height:80px}.project-emoji{font-size:3rem}.project-category-badge{background:#0ccac41a;border:1px solid #0ccac433;border-radius:8px;color:var(--color-accent);font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:.375rem .875rem;text-transform:uppercase}.project-categories-badges{display:flex;flex-wrap:wrap;gap:.5rem}.project-category-badge:nth-child(2){background:#8b5cf61a;border-color:#8b5cf64d;color:#8b5cf6}.project-category-badge:nth-child(3){background:#ec48991a;border-color:#ec48994d;color:#ec4899}.project-skills-bento{display:flex;flex-wrap:wrap;gap:.5rem}.project-skill-tag{background:#ffffff0d;border:1px solid var(--color-border);border-radius:6px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .875rem;text-transform:uppercase}.project-title-bento{font-size:1.5rem;font-weight:700;line-height:1.3}.project-desc-bento{color:var(--color-text-secondary);flex-grow:1;font-size:.9375rem;line-height:1.7}.project-stats-bento{background:#0003;border-radius:12px;display:flex;justify-content:space-around;padding:1.25rem}.project-stat-item{text-align:center}.stat-val{color:var(--color-accent);font-size:1.25rem;font-weight:800;margin-bottom:.25rem}.stat-key{color:var(--color-text-muted);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.project-actions-bento{display:flex;gap:.75rem}.btn-project-bento{align-items:center;border:1px solid #0000;border-radius:10px;display:flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1.25rem;text-decoration:none;transition:var(--transition)}.btn-project-bento.primary{background:linear-gradient(135deg,#67ada0,#0ccac4);color:#fff}.btn-project-bento.primary:hover{background:var(--color-accent);box-shadow:0 8px 20px #0ccac44d;transform:translateY(-2px)}.btn-project-bento.secondary{background:#ffffff0d;border-color:var(--color-border);color:var(--color-text)}.btn-project-bento.secondary:hover{background:#ffffff1a;transform:translateY(-2px)}.section-immersive{align-items:center;display:flex;flex-direction:column;padding:8rem 0;position:relative;z-index:1}.section-content-immersive{margin:0 auto;max-width:1400px;width:100%}.content-center{margin:0 auto;max-width:1000px;text-align:center}.section-label-immersive{color:var(--color-accent);display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.2em;margin-bottom:1.5rem;text-transform:uppercase}.section-title-immersive{font-size:clamp(3rem,8vw,6rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;margin-bottom:2rem}.section-title-immersive .gradient{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#67ada0,#ffeeb4,#52c7b8);-webkit-background-clip:text;display:block}.text-large{color:var(--color-text);font-size:clamp(1.25rem,2.5vw,1.75rem);line-height:1.6;margin-bottom:2rem}.text-large.center{text-align:center}.contact-immersive{background:linear-gradient(180deg,#ffffff05,#0000)}.contact-methods-immersive{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:4rem 0}.contact-card-immersive{align-items:center;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#12121a99;border:1px solid #ffffff0d;border-radius:24px;color:inherit;display:flex;flex-direction:column;gap:1.5rem;padding:3rem 2rem;text-align:center;text-decoration:none;transition:var(--transition)}.contact-card-immersive:hover{background:#12121acc;border-color:#0ccac44d;box-shadow:0 20px 60px #0006;transform:translateY(-10px)}.contact-icon-immersive{align-items:center;background:#0ccac41a;border-radius:20px;color:var(--color-accent);display:flex;height:80px;justify-content:center;width:80px}.contact-label-immersive{color:var(--color-text-muted);font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.contact-value-immersive{color:var(--color-text);font-size:1.125rem;font-weight:600}.contact-cta-immersive{display:flex;justify-content:center;margin-top:2rem}.btn-immersive{align-items:center;border:none;border-radius:14px;color:inherit;cursor:pointer;display:flex;font-family:var(--font-family);font-size:1rem;font-weight:600;gap:.75rem;padding:1.25rem 2.5rem;text-decoration:none;transition:var(--transition-fast)}.btn-immersive.primary{background:linear-gradient(135deg,#67ada0,#0ccac4);color:#fff}.btn-immersive.primary:hover{box-shadow:0 15px 50px #0ccac480;transform:translateY(-3px)}.btn-immersive.large{font-size:1.125rem;padding:1.5rem 3rem}.footer-immersive{align-items:center;border-top:1px solid #ffffff0d;display:flex;flex-direction:column;justify-content:center;margin-top:6rem;padding-top:3rem;text-align:center;width:100%}.footer-immersive p{color:var(--color-text-secondary);font-size:.9375rem;margin-bottom:1.5rem;text-align:center;width:100%}.footer-links-immersive{display:flex;gap:2rem;justify-content:center}.footer-links-immersive a{color:var(--color-text-secondary);font-size:.9375rem;font-weight:500;text-decoration:none;transition:var(--transition-fast)}.footer-links-immersive a:hover{color:var(--color-text)}.btn-bento.resume{background:linear-gradient(135deg,#10b981,#059669);color:#fff;overflow:hidden;position:relative}.btn-bento.resume:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-bento.resume:hover:before{left:100%}.btn-bento.resume:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 10px 30px #10b98166;transform:translateY(-2px)}.btn-bento.resume svg{flex-shrink:0}.react-atom-icon{align-items:center;display:inline-flex;height:60px;justify-content:center;width:60px}.react-atom-icon svg{height:100%;width:100%}.orbit{animation:orbitGlow 3s ease-in-out infinite}.orbit-1{animation-delay:0s}.orbit-2{animation-delay:1s}.orbit-3{animation-delay:2s}@keyframes orbitGlow{0%,to{stroke-width:2;opacity:.4}50%{stroke-width:2.5;opacity:.8}}.electron{filter:drop-shadow(0 0 4px currentColor)}.nucleus{animation:nucleusPulse 2s ease-in-out infinite}@keyframes nucleusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}}.nucleus-core{animation:coreRotate 4s linear infinite}@keyframes coreRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.nucleus-inner{animation:innerPulse 1.5s ease-in-out infinite}@keyframes innerPulse{0%,to{r:3;opacity:1}50%{r:4;opacity:.7}}.energy-ring{animation:energyExpand 2s ease-out infinite}@keyframes energyExpand{0%{r:10;stroke-width:1.5;opacity:.6}to{r:20;stroke-width:.5;opacity:0}}.skill-island:hover .orbit{stroke:#61dafb;stroke-width:3;animation:orbitIntense 1s ease-in-out infinite}@keyframes orbitIntense{0%,to{opacity:.8}50%{opacity:1}}.skill-island:hover .electron{r:4;filter:drop-shadow(0 0 8px currentColor)}.skill-island:hover .nucleus{animation:nucleusExplode .8s ease-out infinite}@keyframes nucleusExplode{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.skill-island:hover .nucleus-inner{fill:#fbbf24;r:5}.skill-island:hover .energy-ring{animation:energyExpandFast 1s ease-out infinite}@keyframes energyExpandFast{0%{r:10;stroke-width:2;opacity:.8}to{r:25;stroke-width:.5;opacity:0}}.server-stack-icon{align-items:center;display:inline-flex;height:60px;justify-content:center;width:60px}.server-stack-icon svg{height:100%;width:100%}.server-layer{animation:serverPulse 3s ease-in-out infinite}.layer-1{animation-delay:0s}.layer-2{animation-delay:.3s}.layer-3{animation-delay:.6s}@keyframes serverPulse{0%,to{opacity:.9;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.status-light{animation:lightBlink 2s ease-in-out infinite;filter:drop-shadow(0 0 3px currentColor)}.light-1{animation-delay:0s}.light-2{animation-delay:.7s}.light-3{animation-delay:1.4s}@keyframes lightBlink{0%,to{r:2;opacity:.5}50%{r:2.5;opacity:1}}.database-symbol{animation:dbFloat 3s ease-in-out infinite}@keyframes dbFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.db-top{animation:dbTopShine 2s ease-in-out infinite}@keyframes dbTopShine{0%,to{opacity:1}50%{opacity:.7}}.flow-line{animation:flowPulse 2s ease-in-out infinite}.line-1{animation-delay:0s}.line-2{animation-delay:.5s}.line-3{animation-delay:1s}@keyframes flowPulse{0%,to{stroke-width:2;opacity:.3}50%{stroke-width:2.5;opacity:.8}}.data-packet{filter:drop-shadow(0 0 4px currentColor)}.process-bar{animation:processActivity 1.5s ease-in-out infinite}.bar-1{animation-delay:0s}.bar-2{animation-delay:.5s}.bar-3{animation-delay:1s}@keyframes processActivity{0%,to{height:8px;opacity:.3}50%{height:12px;opacity:1}}.skill-island:hover .server-layer{animation:serverActive 1s ease-in-out infinite}@keyframes serverActive{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.05)}}.skill-island:hover .status-light{fill:#fbbf24;animation:lightActive .5s ease-in-out infinite}@keyframes lightActive{0%,to{r:2.5;opacity:1}50%{r:3;opacity:.6}}.skill-island:hover .database-symbol{animation:dbSpin 2s linear infinite;filter:drop-shadow(0 0 8px #10b981)}@keyframes dbSpin{0%{transform:rotateY(0deg) translateY(0)}50%{transform:rotateY(180deg) translateY(-3px)}to{transform:rotateY(1turn) translateY(0)}}.skill-island:hover .flow-line{stroke:#fbbf24;stroke-width:3;animation:flowActive 1s linear infinite;opacity:1}@keyframes flowActive{0%{stroke-dashoffset:0}to{stroke-dashoffset:-10}}.skill-island:hover .data-packet{r:3;filter:drop-shadow(0 0 8px currentColor)}.skill-island:hover .process-bar{fill:#fbbf24;animation:processIntense .8s ease-in-out infinite}@keyframes processIntense{0%,to{height:8px;opacity:.6}50%{height:16px;opacity:1}}.cloud-devops-icon{align-items:center;display:inline-flex;height:60px;justify-content:center;width:60px}.cloud-devops-icon svg{height:100%;width:100%}.cloud-puff{animation:cloudFloat 4s ease-in-out infinite}.puff-1{animation-delay:0s}.puff-2{animation-delay:.5s}.puff-3{animation-delay:1s}@keyframes cloudFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.cloud-highlight{animation:highlightShimmer 3s ease-in-out infinite}@keyframes highlightShimmer{0%,to{opacity:.3}50%{opacity:.6}}.docker-containers .container{animation:containerBounce 2s ease-in-out infinite}.container-1{animation-delay:0s}.container-2{animation-delay:.3s}.container-3{animation-delay:.6s}@keyframes containerBounce{0%,to{opacity:.8;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.container-dot{animation:dotBlink 1.5s ease-in-out infinite}@keyframes dotBlink{0%,to{opacity:.5}50%{opacity:1}}.upload-arrow{animation:uploadPulse 2s ease-in-out infinite}.download-arrow{animation:downloadPulse 2s ease-in-out infinite}@keyframes uploadPulse{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@keyframes downloadPulse{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(2px)}}.k8s-wheel{animation:k8sRotate 8s linear infinite;transform-origin:25px 30px}@keyframes k8sRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.pipeline-stage{animation:stageActivate 3s ease-in-out infinite}.stage-1{animation-delay:0s}.stage-2{animation-delay:1.5s}@keyframes stageActivate{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.pipeline-progress{animation:progressFlow 3s ease-in-out infinite}.progress-1{animation-delay:0s}.progress-2{animation-delay:1.5s}@keyframes progressFlow{0%,to{height:8px;opacity:.3}50%{height:8px;opacity:1}}.pipeline-connector{animation:connectorPulse 3s ease-in-out infinite}@keyframes connectorPulse{0%,to{stroke-width:1.5;opacity:.4}50%{stroke-width:2;opacity:1}}.data-particle{animation:particleDrift 4s ease-in-out infinite;filter:drop-shadow(0 0 2px currentColor)}.particle-2{animation-delay:1s}.particle-3{animation-delay:2s}.particle-4{animation-delay:3s}@keyframes particleDrift{0%,to{opacity:.5;transform:translate(0)}25%{opacity:1;transform:translate(-3px,-5px)}50%{opacity:.7;transform:translate(3px,-8px)}75%{opacity:.9;transform:translate(-2px,-5px)}}.aws-indicator{animation:awsBounce 2s ease-in-out infinite}@keyframes awsBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.skill-island:hover .main-cloud-shape{animation:cloudExpand 1s ease-out infinite;filter:drop-shadow(0 0 12px #60a5fa)}@keyframes cloudExpand{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.skill-island:hover .docker-containers .container{fill:#3ba3ff;animation:containerJump 1s ease-out infinite}@keyframes containerJump{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.skill-island:hover .upload-arrow{stroke:#fde047;animation:uploadIntense .8s ease-in-out infinite}@keyframes uploadIntense{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.8;transform:translateY(-4px)}}.skill-island:hover .download-arrow{stroke:#34d399;animation:downloadIntense .8s ease-in-out infinite}@keyframes downloadIntense{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.8;transform:translateY(4px)}}.skill-island:hover .k8s-wheel{animation:k8sRotateFast 3s linear infinite}@keyframes k8sRotateFast{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.skill-island:hover .pipeline-stage{animation:stageFlash 1s ease-in-out infinite}@keyframes stageFlash{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.skill-island:hover .data-particle{r:1.5;animation:particleExplode 2s ease-out infinite}.skill-island:hover .particle-1{--px:-15px;--py:-15px}.skill-island:hover .particle-2{--px:15px;--py:-12px}.skill-island:hover .particle-3{--px:0px;--py:-18px}.skill-island:hover .particle-4{--px:12px;--py:-10px}.ai-brain-icon{align-items:center;display:inline-flex;height:60px;justify-content:center;width:60px}.ai-brain-icon svg{height:100%;width:100%}.brain-hemisphere{animation:brainPulse 3s ease-in-out infinite}.left-brain{animation-delay:0s}.right-brain{animation-delay:1.5s}@keyframes brainPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}.brain-fold{animation:foldWave 2s ease-in-out infinite}@keyframes foldWave{0%,to{stroke-width:1.5;opacity:.4}50%{stroke-width:2;opacity:.8}}.neuron{animation:neuronFire 2s ease-in-out infinite}.input-node{animation-delay:0s}.hidden-node{animation-delay:.3s}.output-node{animation-delay:.6s}@keyframes neuronFire{0%,to{r:3;opacity:.8}50%{r:4;opacity:1}}.connection{animation:connectionPulse 3s ease-in-out infinite}.conn-1{animation-delay:0s}.conn-2{animation-delay:.2s}.conn-3{animation-delay:.4s}.conn-4{animation-delay:.6s}.conn-5{animation-delay:.8s}.conn-6{animation-delay:1s}.conn-7{animation-delay:1.2s}.conn-8{animation-delay:1.4s}.conn-9{animation-delay:1.6s}.conn-10{animation-delay:1.8s}.conn-11{animation-delay:2s}.conn-12{animation-delay:2.2s}.conn-13{animation-delay:2.4s}@keyframes connectionPulse{0%,to{stroke-width:1;opacity:.2}50%{stroke-width:2;opacity:.8}}.signal{filter:drop-shadow(0 0 3px currentColor);opacity:.9}.ai-sparkles .sparkle{animation:sparkleAI 2s ease-in-out infinite}.sparkle-2{animation-delay:.3s}.sparkle-3{animation-delay:.6s}.sparkle-4{animation-delay:.9s}.sparkle-5{animation-delay:1.2s}.sparkle-6{animation-delay:1.5s}@keyframes sparkleAI{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.5)}}.thinking-waves .wave{animation:waveThink 3s ease-in-out infinite}.wave-1{animation-delay:0s}.wave-2{animation-delay:.5s}.wave-3{animation-delay:1s}@keyframes waveThink{0%,to{opacity:.2;transform:translateY(0)}50%{opacity:.7;transform:translateY(-3px)}}.process-ring{animation:ringProcess 2s ease-out infinite}@keyframes ringProcess{0%{r:3;stroke-width:2;opacity:.8}to{r:8;stroke-width:.5;opacity:0}}.process-core{animation:coreProcess 1.5s ease-in-out infinite}@keyframes coreProcess{0%,to{r:1.5;opacity:1}50%{r:2;opacity:.7}}.skill-island:hover .brain-hemisphere{animation:brainActive 1s ease-in-out infinite;filter:drop-shadow(0 0 8px #a78bfa);opacity:1}@keyframes brainActive{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.skill-island:hover .neuron{fill:#fbbf24;animation:neuronExplode .8s ease-out infinite}@keyframes neuronExplode{0%,to{r:3;opacity:1}50%{r:5;opacity:.8}}.skill-island:hover .connection{stroke:#fbbf24;animation:connectionActive .5s ease-in-out infinite}@keyframes connectionActive{0%,to{stroke-width:2;opacity:1}50%{stroke-width:3;opacity:.6}}.skill-island:hover .signal{r:2;filter:drop-shadow(0 0 6px currentColor)}.skill-island:hover .ai-sparkles .sparkle{animation:sparkleExplodeAI 1s ease-out infinite}@keyframes sparkleExplodeAI{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(3)}}.skill-island:hover .thinking-waves .wave{stroke:#fbbf24;animation:waveIntense 1s ease-in-out infinite}@keyframes waveIntense{0%,to{opacity:.8;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}.skill-island:hover .process-ring{stroke:#fbbf24;animation:ringProcessFast 1s ease-out infinite}@keyframes ringProcessFast{0%{r:3;stroke-width:3;opacity:1}to{r:10;stroke-width:.5;opacity:0}}.skill-island:hover .process-core{fill:#fbbf24;r:2.5;filter:drop-shadow(0 0 6px #fbbf24)}.graduation-cap-icon{animation:capFloat 3s ease-in-out infinite;height:100%;width:100%}@keyframes capFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.board-top,.mortarboard{transition:var(--transition)}.board-top{filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}.board-bottom,.board-right{transition:var(--transition)}.center-button{animation:buttonPulse 2s ease-in-out infinite}@keyframes buttonPulse{0%,to{r:2.5;opacity:1}50%{r:3;opacity:.8}}.center-button-inner{animation:innerButtonGlow 2s ease-in-out infinite}@keyframes innerButtonGlow{0%,to{opacity:1}50%{opacity:.6}}.tassel-group{animation:tasselSwing 3s ease-in-out infinite;transform-origin:50px 40px}@keyframes tasselSwing{0%,to{transform:rotate(0deg)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.tassel-cord{transition:var(--transition)}.tassel-knot{animation:knotShine 2.5s ease-in-out infinite;filter:drop-shadow(0 0 3px #fbbf24)}@keyframes knotShine{0%,to{r:2.5;opacity:1}50%{r:3;opacity:.8}}.tassel-threads path{animation:threadSway 2s ease-in-out infinite;transform-origin:56px 28px}.tassel-threads path:first-child{animation-delay:0s}.tassel-threads path:nth-child(2){animation-delay:.1s}.tassel-threads path:nth-child(3){animation-delay:.2s}.tassel-threads path:nth-child(4){animation-delay:.3s}.tassel-threads path:nth-child(5){animation-delay:.4s}@keyframes threadSway{0%,to{transform:rotate(0deg)}50%{transform:rotate(8deg)}}.tassel-end{animation:endBounce 3s ease-in-out infinite}@keyframes endBounce{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.cap-base,.skull-cap{transition:var(--transition)}.cap-top-rim{animation:rimGlow 3s ease-in-out infinite}@keyframes rimGlow{0%,to{opacity:.4}50%{opacity:.7}}.cap-sparkles .sparkle{animation:capSparkle 2s ease-in-out infinite}@keyframes capSparkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.5)}}.achievement-star{animation:starTwinkle 3s ease-in-out infinite;transform-origin:center}.star-2{animation-delay:1.5s}.credential-card-islands:hover .graduation-cap-icon,.info-item-bento:hover .graduation-cap-icon,.timeline-item:hover .graduation-cap-icon{animation:capToss 1.2s ease-out}@keyframes capToss{0%{transform:translateY(0) rotate(0deg)}30%{transform:translateY(-25px) rotate(-15deg) scale(1.1)}50%{transform:translateY(-35px) rotate(5deg) scale(1.15)}70%{transform:translateY(-20px) rotate(-10deg) scale(1.05)}85%{transform:translateY(-5px) rotate(2deg) scale(1.02)}to{transform:translateY(0) rotate(0deg) scale(1)}}.credential-card-islands:hover .board-top,.info-item-bento:hover .board-top,.timeline-item:hover .board-top{fill:url(#capTopGradient);filter:drop-shadow(0 4px 12px rgba(251,191,36,.6))}.credential-card-islands:hover .tassel-group,.info-item-bento:hover .tassel-group,.timeline-item:hover .tassel-group{animation:tasselSwingWild .6s ease-in-out infinite}@keyframes tasselSwingWild{0%,to{transform:rotate(0deg)}25%{transform:rotate(-25deg)}75%{transform:rotate(25deg)}}.credential-card-islands:hover .center-button,.info-item-bento:hover .center-button,.timeline-item:hover .center-button{fill:#fde047;r:3.5;filter:drop-shadow(0 0 6px #fbbf24)}.credential-card-islands:hover .cap-sparkles .sparkle,.info-item-bento:hover .cap-sparkles .sparkle,.timeline-item:hover .cap-sparkles .sparkle{animation:capSparkleExplode .8s ease-out infinite}@keyframes capSparkleExplode{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(4)}}.credential-card-islands:hover .achievement-star,.info-item-bento:hover .achievement-star,.timeline-item:hover .achievement-star{animation:starCelebrate 1s ease-in-out infinite;opacity:1}@keyframes starCelebrate{0%,to{transform:scale(1) rotate(0deg)}50%{transform:scale(1.5) rotate(1turn)}}.credential-card-islands:hover .tassel-knot,.info-item-bento:hover .tassel-knot,.timeline-item:hover .tassel-knot{fill:#fde047;r:3.5;filter:drop-shadow(0 0 8px #fbbf24)}.timeline-item .dot-icon .graduation-cap-icon{height:35px;width:35px}.timeline-item.visible .graduation-cap-icon{animation:capFloatIn .8s ease-out,capFloat 3s ease-in-out .8s infinite}@keyframes capFloatIn{0%{opacity:0;transform:translateY(20px) scale(0) rotate(-30deg)}60%{opacity:1;transform:translateY(-5px) scale(1.1) rotate(10deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}}.info-emoji .graduation-cap-icon{height:60px;width:60px}.credential-icon-islands .graduation-cap-icon{height:50px;width:50px}.institution-icon{animation:institutionFloat 4s ease-in-out infinite;height:100%;width:100%}@keyframes institutionFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.building-foundation{transition:var(--transition)}.building-base{animation:baseGlow 3s ease-in-out infinite}@keyframes baseGlow{0%,to{opacity:1}50%{opacity:.8}}.building-body{animation:buildingPulse 4s ease-in-out infinite;transition:var(--transition)}@keyframes buildingPulse{0%,to{opacity:1}50%{opacity:.95}}.columns{transition:var(--transition)}.column{animation:columnShine 3s ease-in-out infinite}.column-1{animation-delay:0s}.column-2{animation-delay:.2s}.column-3{animation-delay:.4s}.column-4{animation-delay:.6s}@keyframes columnShine{0%,to{opacity:1}50%{opacity:.85}}.column-base,.column-capital,.pediment{transition:var(--transition)}.pediment{animation:pedimentGlow 4s ease-in-out infinite}@keyframes pedimentGlow{0%,to{opacity:1}50%{opacity:.9}}.pediment-detail{animation:detailShimmer 3s ease-in-out infinite}@keyframes detailShimmer{0%,to{opacity:.4}50%{opacity:.8}}.entrance{transition:var(--transition)}.door{animation:doorGlow 3s ease-in-out infinite}@keyframes doorGlow{0%,to{opacity:1}50%{opacity:.9}}.door-knob{animation:knobShine 2s ease-in-out infinite}@keyframes knobShine{0%,to{r:1;opacity:.8}50%{r:1.3;opacity:1}}.window{transition:var(--transition)}.window-glow{animation:windowLight 4s ease-in-out infinite}.glow-1{animation-delay:0s}.glow-2{animation-delay:1.3s}.glow-3{animation-delay:2.6s}@keyframes windowLight{0%,to{opacity:.2}50%{opacity:.6}}.emblem{animation:emblemRotate 8s linear infinite;transform-origin:50px 25px}@keyframes emblemRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.emblem-circle{transition:var(--transition)}.emblem-ring{animation:ringPulse 2s ease-in-out infinite}@keyframes ringPulse{0%,to{stroke-width:.8;opacity:.8}50%{stroke-width:1.2;opacity:1}}.emblem-text{animation:textGlow 2s ease-in-out infinite}@keyframes textGlow{0%,to{opacity:.9}50%{opacity:1}}.excellence-star{animation:starTwinkleInstitution 3s ease-in-out infinite;transform-origin:center}.star-left{animation-delay:0s}.star-right{animation-delay:1.5s}@keyframes starTwinkleInstitution{0%,to{opacity:.5;transform:scale(1) rotate(0deg)}50%{opacity:1;transform:scale(1.3) rotate(180deg)}}.knowledge-beam{animation:beamPulse 3s ease-in-out infinite}@keyframes beamPulse{0%,to{opacity:.6}50%{opacity:1}}.beam{animation:beamGlow 3s ease-in-out infinite}@keyframes beamGlow{0%,to{opacity:.2}50%{opacity:.6}}.beam-light{animation:lightShine 2s ease-in-out infinite}@keyframes lightShine{0%,to{r:2;opacity:.8}50%{r:3;opacity:1}}.credential-card-islands:hover .institution-icon{animation:institutionRise 1s ease-out}@keyframes institutionRise{0%{transform:translateY(0) scale(1)}40%{transform:translateY(-15px) scale(1.08)}60%{transform:translateY(-12px) scale(1.05)}to{transform:translateY(0) scale(1)}}.credential-card-islands:hover .building-body{fill:url(#buildingGradient);filter:drop-shadow(0 6px 20px rgba(96,165,250,.8))}.credential-card-islands:hover .column{fill:url(#columnGradient);animation:columnGlow .8s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(147,197,253,.8))}@keyframes columnGlow{0%,to{opacity:1}50%{opacity:.7}}.credential-card-islands:hover .pediment{fill:url(#roofGradient);filter:drop-shadow(0 4px 16px rgba(30,64,175,.8))}.credential-card-islands:hover .window-glow{animation:windowLightIntense 1s ease-in-out infinite}@keyframes windowLightIntense{0%,to{opacity:.5}50%{opacity:1}}.credential-card-islands:hover .emblem{animation:emblemRotateFast 2s linear infinite}@keyframes emblemRotateFast{0%{transform:rotate(0deg) scale(1)}to{transform:rotate(1turn) scale(1.1)}}.credential-card-islands:hover .emblem-ring{stroke:#fde047;stroke-width:1.5;filter:drop-shadow(0 0 6px #fbbf24)}.credential-card-islands:hover .emblem-text{fill:#fde047;filter:drop-shadow(0 0 4px #fbbf24)}.credential-card-islands:hover .excellence-star{fill:#fde047;animation:starCelebrateInstitution 1s ease-in-out infinite;opacity:1}@keyframes starCelebrateInstitution{0%,to{transform:scale(1) rotate(0deg)}50%{transform:scale(1.5) rotate(180deg)}}.credential-card-islands:hover .knowledge-beam{animation:beamBurst 1.5s ease-out infinite}@keyframes beamBurst{0%{opacity:.8;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-10px) scale(1.5)}}.credential-card-islands:hover .beam-light{r:4;fill:#fde047;filter:drop-shadow(0 0 8px #fbbf24)}.credential-card-islands:hover .door-knob{fill:#fde047;r:1.5;filter:drop-shadow(0 0 6px #fbbf24)}.credential-icon-islands .institution-icon{height:50px;width:50px}.timeline-briefcase-icon{height:100%;width:100%}.timeline-item .dot-icon{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.timeline-item .dot-icon svg{height:33px;width:33px}.timeline-item:hover .briefcase-body{fill:url(#briefcaseGradientTimeline);filter:drop-shadow(0 4px 8px rgba(245,158,11,.6))}.timeline-item:hover .briefcase-handle{animation:handleSwingFast .5s ease-in-out infinite}.timeline-item:hover .lock-keyhole{fill:#fde047;filter:drop-shadow(0 0 6px #fde047)}.timeline-item:hover .sparkle{animation:sparkleExplode 1s ease-out infinite}.timeline-item.visible .briefcase-body{animation:briefcasePulse 3s ease-in-out infinite}.timeline-item.visible .briefcase-handle{animation:handleSwing 3s ease-in-out infinite}.timeline-item.visible .lock-keyhole{animation:keyholeGlow 2s ease-in-out infinite}.timeline-item.visible .sparkle{animation:sparkleShine 2s ease-in-out infinite}@keyframes briefcasePulse{0%,to{opacity:1}50%{opacity:.9}}.info-nike-logo{align-items:center;background:linear-gradient(135deg,#111,#000);border-radius:12px;box-shadow:0 4px 12px #00000080;display:flex;height:60px;justify-content:center;overflow:hidden;padding:12px;position:relative;transition:var(--transition);width:60px}.info-nike-logo:before{animation:swooshTrail 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#0ccac4,#0000);content:"";height:2px;left:-100%;position:absolute;top:50%;width:100%}.nike-logo-hero{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:auto;transition:var(--transition);width:100%}.info-item-bento:hover .info-nike-logo{background:linear-gradient(135deg,#000,#1a1a1a);box-shadow:0 8px 24px #0ccac499,0 0 40px #0ccac44d;transform:scale(1.05) rotate(-2deg)}.info-item-bento:hover .nike-logo-hero{animation:swooshBounce .6s ease-in-out;color:#0ccac4;filter:drop-shadow(0 4px 12px rgba(12,202,196,.8))}.credential-nike-logo{align-items:center;background:linear-gradient(135deg,#111,#000);border-radius:14px;box-shadow:0 4px 12px #00000080;display:flex;flex-shrink:0;height:70px;justify-content:center;overflow:hidden;padding:14px;position:relative;transition:var(--transition);width:70px}.credential-nike-logo:before{animation:swooshTrail 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#0ccac4,#0000);content:"";height:2px;left:-100%;position:absolute;top:50%;width:100%}.nike-logo-credential{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:auto;transition:var(--transition);width:100%}.credential-card-islands:hover .credential-nike-logo{background:linear-gradient(135deg,#000,#1a1a1a);box-shadow:0 8px 24px #0ccac499,0 0 40px #0ccac44d;transform:scale(1.05) rotate(-2deg)}.credential-card-islands:hover .nike-logo-credential{animation:swooshBounce .6s ease-in-out;color:#0ccac4;filter:drop-shadow(0 4px 12px rgba(12,202,196,.8))}.project-nike-logo{align-items:center;background:linear-gradient(135deg,#111,#000);border-radius:16px;box-shadow:0 4px 12px #00000080;display:flex;height:80px;justify-content:center;overflow:hidden;padding:16px;position:relative;transition:var(--transition);width:80px}.project-nike-logo:before{animation:swooshTrail 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#0ccac4,#0000);content:"";height:2px;left:-100%;position:absolute;top:50%;width:100%}.nike-logo-project{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:auto;transition:var(--transition);width:100%}.project-card-bento:hover .project-nike-logo{background:linear-gradient(135deg,#000,#1a1a1a);box-shadow:0 8px 24px #0ccac499,0 0 40px #0ccac44d;transform:scale(1.05) rotate(-2deg)}.project-card-bento:hover .nike-logo-project{animation:swooshBounce .6s ease-in-out;color:#0ccac4;filter:drop-shadow(0 4px 12px rgba(12,202,196,.8))}@keyframes swooshTrail{0%,to{left:-100%;opacity:0}50%{left:100%;opacity:1}}@keyframes swooshBounce{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.project-spirit-logo{align-items:center;background:linear-gradient(135deg,#52c7b8,#67ada0);border-radius:50%;box-shadow:0 4px 12px #52c7b84d;display:flex;height:80px;justify-content:center;overflow:visible;padding:4px;position:relative;transition:var(--transition);width:80px}.project-spirit-logo:before{animation:spiritHalo 4s ease-in-out infinite;background:linear-gradient(45deg,#52c7b8,#67ada0,#0ccac4,#52c7b8);background-size:300% 300%;border-radius:50%;bottom:-2px;content:"";left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;z-index:-1}@keyframes spiritHalo{0%,to{background-position:0 50%;opacity:0}50%{background-position:100% 50%;opacity:.5}}.spirit-logo-project{animation:spiritGlow 3s ease-in-out infinite;border-radius:50%;height:100%;object-fit:contain;transition:var(--transition);width:100%}@keyframes spiritGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.2)}}.project-card-bento:hover .project-spirit-logo{background:linear-gradient(135deg,#67ada0,#52c7b8);box-shadow:0 8px 24px #52c7b899,0 0 40px #52c7b866;transform:scale(1.1) rotate(10deg)}.project-card-bento:hover .project-spirit-logo:before{opacity:.8}.project-card-bento:hover .spirit-logo-project{filter:brightness(1.3) drop-shadow(0 0 12px rgba(82,199,184,.8));transform:scale(1.05) rotate(-10deg)}.project-disney-logo{align-items:center;background:linear-gradient(135deg,#0c111b,#040714);border-radius:12px;box-shadow:0 4px 16px #113ccf66;display:flex;height:80px;justify-content:center;overflow:hidden;padding:12px;position:relative;transition:var(--transition);width:120px}.project-disney-logo:after,.project-disney-logo:before{animation:disneySparkle 3s ease-in-out infinite;content:"✨";font-size:12px;opacity:0;position:absolute}.project-disney-logo:before{animation-delay:0s;left:10%;top:10%}.project-disney-logo:after{animation-delay:1.5s;bottom:10%;right:10%}@keyframes disneySparkle{0%,to{opacity:0;transform:scale(0) rotate(0deg)}50%{opacity:1;transform:scale(1) rotate(180deg)}}.disney-logo-project{height:auto;width:100%}.disney-text-main{filter:drop-shadow(0 2px 6px rgba(255,255,255,.2));transition:var(--transition)}.plus-circle{animation:disneyPlusRotate 4s linear infinite;transition:var(--transition)}@keyframes disneyPlusRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.plus-symbol{transition:var(--transition)}.project-card-bento:hover .project-disney-logo{background:linear-gradient(135deg,#0e1520,#060b18);box-shadow:0 8px 32px #113ccfb3,0 0 60px #4d9fff80;transform:scale(1.05)}.project-card-bento:hover .disney-text-main{fill:#6fa3ff;animation:disneyTextPulse 1s ease-in-out;filter:drop-shadow(0 4px 12px rgba(111,163,255,.9))}@keyframes disneyTextPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.project-card-bento:hover .plus-circle{fill:url(#disneyGradient);animation:disneyPlusZoom .8s ease-in-out;filter:drop-shadow(0 4px 12px rgba(17,60,207,.9))}@keyframes disneyPlusZoom{0%,to{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.2)}}.project-card-bento:hover .plus-symbol line{stroke:#fff;filter:drop-shadow(0 2px 6px rgba(255,255,255,1))}.project-plinko-logo{align-items:center;background:linear-gradient(135deg,#1a1a2e,#0f0f1e);border-radius:16px;box-shadow:0 4px 12px #f59e0b4d;display:flex;height:80px;justify-content:center;overflow:hidden;padding:8px;position:relative;transition:var(--transition);width:80px}.project-plinko-logo:before{animation:plinkoRotate 10s linear infinite;background:radial-gradient(circle,#f59e0b1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes plinkoRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.plinko-logo-project{height:100%;position:relative;width:100%;z-index:1}.peg,.plinko-ball,.plinko-triangle{transition:var(--transition)}.plinko-ball{animation:plinkoFall 2s ease-in-out infinite}@keyframes plinkoFall{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.8;transform:translateY(15px)}}.ml-brain{transition:var(--transition)}.project-card-bento:hover .project-plinko-logo{background:linear-gradient(135deg,#2a2a3e,#1a1a2e);box-shadow:0 8px 24px #f59e0b99,0 0 40px #f59e0b4d;transform:scale(1.05)}.project-card-bento:hover .plinko-triangle{stroke:#fbbf24;filter:drop-shadow(0 0 8px rgba(251,191,36,.6))}.project-card-bento:hover .peg{fill:#8b5cf6;animation:pegPulse 1s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(139,92,246,.8))}@keyframes pegPulse{0%,to{r:2.5}50%{r:3}}.project-card-bento:hover .plinko-ball{fill:url(#ballGradient);animation:plinkoFallFast 1s ease-in-out infinite;filter:drop-shadow(0 0 12px rgba(251,191,36,1))}@keyframes plinkoFallFast{0%,to{transform:translateY(0)}25%{transform:translateY(10px) translateX(-5px)}75%{transform:translateY(25px) translateX(5px)}}.project-card-bento:hover .ml-brain{filter:drop-shadow(0 0 8px rgba(139,92,246,.8));transform:translate(55px,8px) scale(1.2)}.project-card-bento:hover .ml-brain circle,.project-card-bento:hover .ml-brain line{stroke:#a78bfa}.project-card-bento:hover .ml-brain circle[fill="#8b5cf6"]{fill:#a78bfa}.project-anna-logo{align-items:center;background:linear-gradient(135deg,#f0f4f8,#d9e7f0);border-radius:50%;box-shadow:0 4px 12px #0000001a;display:flex;height:80px;justify-content:center;overflow:visible;padding:4px;position:relative;transition:var(--transition);width:80px}.project-anna-logo:before{animation:annaRipple 3s ease-out infinite;border:2px solid #0ccac44d;border-radius:50%;content:"";height:100%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);width:100%}@keyframes annaRipple{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.anna-logo-project{animation:annaFloat 4s ease-in-out infinite;border-radius:50%;height:100%;object-fit:contain;transition:var(--transition);width:100%}@keyframes annaFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.project-card-bento:hover .project-anna-logo{background:linear-gradient(135deg,#d9e7f0,#c2d9e8);box-shadow:0 8px 24px #0ccac44d,0 0 40px #0ccac433;transform:scale(1.1) rotate(5deg)}.project-card-bento:hover .project-anna-logo:before{animation:annaRippleFast 1.5s ease-out infinite}@keyframes annaRippleFast{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}.project-card-bento:hover .anna-logo-project{animation:annaSpin 2s ease-in-out;filter:brightness(1.1) drop-shadow(0 0 12px rgba(12,202,196,.5));transform:scale(1.1) rotate(-5deg)}@keyframes annaSpin{0%,to{transform:scale(1.1) rotate(-5deg)}50%{transform:scale(1.15) rotate(5deg)}}.project-cloud-logo{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:16px;box-shadow:0 4px 12px #3b82f64d;display:flex;height:80px;justify-content:center;overflow:hidden;padding:8px;position:relative;transition:var(--transition);width:80px}.project-cloud-logo:before{animation:cloudPulse 4s ease-in-out infinite;background:radial-gradient(circle,#60a5fa26 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes cloudPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.cloud-logo-project{height:100%;position:relative;width:100%;z-index:1}.main-cloud{transition:var(--transition)}.data-particles{animation:particlesFloat 3s ease-in-out infinite}.particle{opacity:.6;transition:var(--transition)}.particle-1{animation:floatUp 2s ease-in-out infinite}.particle-2{animation:floatUp 2.5s ease-in-out infinite;animation-delay:.3s}.particle-3{animation:floatUp 2.2s ease-in-out infinite;animation-delay:.6s}.particle-4{animation:floatUp 2.8s ease-in-out infinite;animation-delay:.2s}.particle-5{animation:floatUp 2.3s ease-in-out infinite;animation-delay:.5s}.particle-6{animation:floatUp 2.6s ease-in-out infinite;animation-delay:.8s}@keyframes floatUp{0%{opacity:0;transform:translateY(0)}20%{opacity:.8}to{opacity:0;transform:translateY(-30px)}}.cloud-arrows{transition:var(--transition)}.download-arrow,.upload-arrow{animation:arrowPulse 2s ease-in-out infinite}.download-arrow{animation-delay:1s}@keyframes arrowPulse{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.vercel-badge{transition:var(--transition)}.project-card-bento:hover .project-cloud-logo{background:linear-gradient(135deg,#1e293b,#334155);box-shadow:0 8px 24px #3b82f699,0 0 40px #60a5fa4d;transform:scale(1.05)}.project-card-bento:hover .main-cloud{filter:drop-shadow(0 0 12px rgba(96,165,250,.8));transform:translateY(-3px)}.project-card-bento:hover .particle{animation-duration:1.5s!important;opacity:1}.project-card-bento:hover .upload-arrow{stroke:#60a5fa;animation-duration:1s;filter:drop-shadow(0 0 6px rgba(96,165,250,1))}.project-card-bento:hover .download-arrow{stroke:#8b5cf6;animation-duration:1s;filter:drop-shadow(0 0 6px rgba(139,92,246,1));opacity:1}.project-card-bento:hover .vercel-badge{filter:drop-shadow(0 0 8px rgba(0,0,0,.8));transform:translate(58px,58px) scale(1.3)}.project-card-bento:hover .vercel-badge path{fill:#fff}.project-knn-logo{align-items:center;background:linear-gradient(135deg,#1e1b4b,#312e81);border-radius:16px;box-shadow:0 4px 12px #6366f14d;display:flex;height:80px;justify-content:center;overflow:hidden;padding:8px;position:relative;transition:var(--transition);width:80px}.project-knn-logo:before{animation:knnPulse 4s ease-in-out infinite;background:radial-gradient(circle,#8b5cf626 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes knnPulse{0%,to{opacity:.3;transform:scale(1) rotate(0deg)}50%{opacity:.6;transform:scale(1.3) rotate(180deg)}}.knn-logo-project{height:100%;position:relative;width:100%;z-index:1}.grid-line,.knn-grid{transition:var(--transition)}.grid-line{stroke:#4f46e5;opacity:.3}.data-point{transition:var(--transition)}.point-cluster-1{fill:#8b5cf6}.point-cluster-1,.point-cluster-2{animation:pointPulse 2s ease-in-out infinite}.point-cluster-2{fill:#ec4899;animation-delay:.3s}.point-cluster-3{fill:#10b981;animation:pointPulse 2s ease-in-out infinite;animation-delay:.6s}@keyframes pointPulse{0%,to{r:2.5;opacity:.8}50%{r:3.5;opacity:1}}.target-point{fill:#fbbf24;animation:targetGlow 2s ease-in-out infinite;filter:drop-shadow(0 0 4px #fbbf24)}@keyframes targetGlow{0%,to{r:4;opacity:1}50%{r:5;opacity:.8}}.k-line{stroke:#fbbf24;stroke-dasharray:2,2;animation:lineAppear 3s ease-in-out infinite;opacity:0}.k-line-1{animation-delay:0s}.k-line-2{animation-delay:.2s}.k-line-3{animation-delay:.4s}@keyframes lineAppear{0%,to{stroke-dashoffset:20;opacity:0}30%,70%{stroke-dashoffset:0;opacity:.8}}.prediction-circle{fill:none;stroke:#fbbf24;animation:predictionExpand 3s ease-in-out infinite}@keyframes predictionExpand{0%,to{r:0;stroke-width:1;opacity:0}50%{r:25;stroke-width:2;opacity:.6}}.k-indicator{transition:var(--transition)}.k-text{fill:#fbbf24;animation:kTextPulse 2s ease-in-out infinite;font-weight:700}@keyframes kTextPulse{0%,to{opacity:.8}50%{opacity:1}}.accuracy-meter{transition:var(--transition)}.accuracy-bar{fill:#10b981;animation:accuracyFill 3s ease-in-out infinite}@keyframes accuracyFill{0%{opacity:0;width:0}50%,to{opacity:1;width:20}}.project-card-bento:hover .project-knn-logo{background:linear-gradient(135deg,#312e81,#4c1d95);box-shadow:0 8px 24px #6366f199,0 0 40px #8b5cf666;transform:scale(1.05)}.project-card-bento:hover .grid-line{stroke:#8b5cf6;stroke-width:.8;opacity:.6}.project-card-bento:hover .data-point{animation:pointExplode 1s ease-out infinite}@keyframes pointExplode{0%,to{r:2.5;opacity:1}50%{r:4;opacity:.7}}.project-card-bento:hover .target-point{r:6;filter:drop-shadow(0 0 12px #fbbf24)}.project-card-bento:hover .k-line{animation:lineIntense 1s ease-in-out infinite}@keyframes lineIntense{0%,to{stroke-width:1.5;opacity:1}50%{stroke-width:2.5;opacity:.6}}.project-card-bento:hover .prediction-circle{animation:predictionExpandFast 1.5s ease-in-out infinite}@keyframes predictionExpandFast{0%,to{r:0;opacity:0}50%{r:30;stroke-width:3;opacity:.8}}.project-card-bento:hover .k-indicator{filter:drop-shadow(0 0 6px #fbbf24);transform:scale(1.2)}.project-card-bento:hover .accuracy-bar{fill:#34d399;animation:accuracyPulse 1s ease-in-out infinite}@keyframes accuracyPulse{0%,to{opacity:1}50%{opacity:.6}}.project-car-emissions-logo{align-items:center;background:linear-gradient(135deg,#1e293b,#000);border-radius:16px;box-shadow:0 4px 12px #359aaa;display:flex;height:80px;justify-content:center;overflow:hidden;padding:8px;position:relative;transition:var(--transition);width:80px}.project-car-emissions-logo:before{animation:carEmissionsPulse 4s ease-in-out infinite;background:radial-gradient(circle,#22c55e26 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes carEmissionsPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.car-emissions-logo-project{height:100%;position:relative;width:100%;z-index:1}.car-container{animation:carDrive 3s ease-in-out infinite}@keyframes carDrive{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.car-body{transition:var(--transition)}.car-wheel{animation:wheelRotate 1s linear infinite;transform-origin:center}@keyframes wheelRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.road-line{animation:roadMove 1.5s linear infinite}@keyframes roadMove{0%{transform:translateX(0)}to{transform:translateX(-20px)}}.exhaust-pipe{transition:var(--transition)}.emission-particle{animation:emissionDrift 2s ease-out infinite}@keyframes emissionDrift{0%{opacity:0;transform:translate(0) scale(.5)}20%{opacity:.8}to{opacity:0;transform:translate(-35px,-15px) scale(1.5)}}.ml-chip{animation:chipBlink 2s ease-in-out infinite;transition:var(--transition)}@keyframes chipBlink{0%,to{opacity:1}50%{opacity:.7}}.project-card-bento:hover .project-car-emissions-logo{background:linear-gradient(135deg,#0f172a,#1e293b);box-shadow:0 8px 24px #359aaa,0 0 40px #359aaa;transform:scale(1.05)}.project-card-bento:hover .car-container{animation:carDriveFast 1.5s ease-in-out infinite}@keyframes carDriveFast{0%,to{transform:translateY(0) translateX(0)}25%{transform:translateY(-3px) translateX(2px)}75%{transform:translateY(-1px) translateX(-2px)}}.project-card-bento:hover .car-body{fill:#359aaa;filter:drop-shadow(0 0 8px rgb(53,154,170))}.project-card-bento:hover .car-wheel{animation:wheelRotateFast .5s linear infinite}@keyframes wheelRotateFast{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.project-card-bento:hover .road-line{animation:roadMoveFast .8s linear infinite}@keyframes roadMoveFast{0%{transform:translateX(0)}to{transform:translateX(-20px)}}.project-card-bento:hover .emission-particle{animation:emissionBurst 1.2s ease-out infinite}@keyframes emissionBurst{0%{opacity:0;transform:translate(0) scale(.5)}20%{opacity:1}to{opacity:0;transform:translate(-45px,-20px) scale(2)}}.project-card-bento:hover .ml-chip{animation:chipPulse .8s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(251,191,36,.8));transform:scale(1.2)}@keyframes chipPulse{0%,to{opacity:1}50%{opacity:.5}}.project-card-bento:hover .ml-chip rect{fill:#fbbf24}.project-card-bento:hover .ml-chip line{stroke:#fff}.project-card-bento:hover .classification-meter circle:last-child{animation:meterSpin 2s linear infinite}@keyframes meterSpin{0%{stroke-dashoffset:18.84}to{stroke-dashoffset:0}}.rocket-icon{display:inline-block;height:60px;position:relative;width:60px}.rocket-icon svg{animation:rocketFloat 3s ease-in-out infinite;height:100%;width:100%}@keyframes rocketFloat{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-10px) rotate(5deg)}}.rocket-body{fill:url(#rocketGradient);transition:var(--transition)}.rocket-window{fill:#60a5fa;animation:windowGlow 2s ease-in-out infinite;opacity:.8}@keyframes windowGlow{0%,to{opacity:.6}50%{opacity:1}}.rocket-fin{fill:#0ccac4;transition:var(--transition)}.rocket-flame{animation:flameFlicker .3s ease-in-out infinite;transform-origin:center top}.flame-1{fill:#fbbf24;animation-delay:0s}.flame-2{fill:#f59e0b;animation-delay:.1s}.flame-3{fill:#ef4444;animation-delay:.2s}@keyframes flameFlicker{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(.8)}}.rocket-star{fill:#fbbf24;animation:starTwinkle 1.5s ease-in-out infinite}.star-1{animation-delay:0s}.star-2{animation-delay:.5s}.star-3{animation-delay:1s}@keyframes starTwinkle{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.stats-card:hover .rocket-body{fill:url(#rocketGradientHover)}.stats-card:hover .rocket-icon svg{animation:rocketLaunch .8s ease-out}@keyframes rocketLaunch{0%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-20px) rotate(10deg) scale(1.1)}to{transform:translateY(0) rotate(-5deg)}}.stats-card:hover .rocket-flame{animation:flameBurst .2s ease-in-out infinite}@keyframes flameBurst{0%,to{opacity:1;transform:scaleY(1.2)}50%{opacity:.8;transform:scaleY(.6)}}.globe-icon{display:inline-block;height:60px;position:relative;width:60px}.globe-icon svg{height:100%;width:100%}.globe-sphere{animation:globeRotate 20s linear infinite;transform-origin:center}@keyframes globeRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.globe-ocean{animation:oceanWave 4s ease-in-out infinite}@keyframes oceanWave{0%,to{opacity:.5}50%{opacity:.7}}.longitude-lines{animation:longitudeSpin 15s linear infinite;transform-origin:center}@keyframes longitudeSpin{0%{transform:rotateY(0deg)}to{transform:rotateY(1turn)}}.latitude-line{animation:latitudePulse 3s ease-in-out infinite}.latitude-line:first-child{animation-delay:0s}.latitude-line:nth-child(2){animation-delay:1s}.latitude-line:nth-child(3){animation-delay:2s}@keyframes latitudePulse{0%,to{opacity:.4}50%{opacity:.8}}.continents{animation:continentShift 20s linear infinite;transform-origin:50px 50px}@keyframes continentShift{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.orbit-ring{animation:orbitPulse 4s ease-in-out infinite}@keyframes orbitPulse{0%,to{stroke-width:.5;opacity:.2}50%{stroke-width:1;opacity:.5}}.satellite{filter:drop-shadow(0 0 3px #fbbf24)}.location-marker{animation:markerBounce 2s ease-in-out infinite;transform-origin:50px 45px}@keyframes markerBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.1)}}.globe-glow{animation:glowPulse 3s ease-in-out infinite}@keyframes glowPulse{0%,to{stroke-width:.5;opacity:.2}50%{stroke-width:1.5;opacity:.6}}.time-card:hover .globe-sphere{animation:globeRotateFast 8s linear infinite}@keyframes globeRotateFast{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.time-card:hover .continents{animation:continentShiftFast 8s linear infinite}@keyframes continentShiftFast{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.time-card:hover .globe-glow{stroke:#3b82f6;stroke-width:2;opacity:.8}.time-card:hover .location-marker{animation:markerBounceFast 1s ease-in-out infinite}@keyframes markerBounceFast{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.2)}}.briefcase-icon{display:inline-block;height:60px;position:relative;width:60px}.briefcase-icon svg{animation:briefcaseBob 3s ease-in-out infinite;height:100%;width:100%}@keyframes briefcaseBob{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}.briefcase-body{transition:var(--transition)}.briefcase-lid{animation:lidShine 4s ease-in-out infinite}@keyframes lidShine{0%,to{fill:#b45309}50%{fill:#d97706}}.briefcase-handle{animation:handleSwing 3s ease-in-out infinite;transform-origin:50px 25px}@keyframes handleSwing{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.lock-keyhole{animation:keyholeGlow 2s ease-in-out infinite}@keyframes keyholeGlow{0%,to{fill:#fbbf24;filter:drop-shadow(0 0 2px #fbbf24)}50%{fill:#fde047;filter:drop-shadow(0 0 4px #fde047)}}.briefcase-clasp{animation:claspShine 3s ease-in-out infinite}@keyframes claspShine{0%,to{opacity:1}50%{opacity:.7}}.corner-rivet{animation:rivetPulse 4s ease-in-out infinite}.corner-rivet:first-child{animation-delay:0s}.corner-rivet:nth-child(2){animation-delay:1s}.corner-rivet:nth-child(3){animation-delay:2s}.corner-rivet:nth-child(4){animation-delay:3s}@keyframes rivetPulse{0%,to{r:1.5;opacity:1}50%{r:2;opacity:.7}}.sparkle{animation:sparkleShine 2s ease-in-out infinite}.sparkle-1{animation-delay:0s}.sparkle-2{animation-delay:.7s}.sparkle-3{animation-delay:1.4s}@keyframes sparkleShine{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.5)}}.info-card:hover .briefcase-icon svg{animation:briefcaseJump .6s ease-out}@keyframes briefcaseJump{0%{transform:translateY(0) rotate(-3deg)}30%{transform:translateY(-15px) rotate(-5deg)}50%{transform:translateY(-20px) rotate(5deg)}70%{transform:translateY(-10px) rotate(-2deg)}to{transform:translateY(0) rotate(-3deg)}}.info-card:hover .briefcase-body{fill:url(#briefcaseGradient);filter:drop-shadow(0 4px 8px rgba(245,158,11,.6))}.info-card:hover .briefcase-handle{animation:handleSwingFast .5s ease-in-out infinite}@keyframes handleSwingFast{0%,to{transform:rotate(0deg)}50%{transform:rotate(-8deg)}}.info-card:hover .lock-keyhole{fill:#fde047;filter:drop-shadow(0 0 6px #fde047)}.info-card:hover .sparkle{animation:sparkleExplode 1s ease-out infinite}@keyframes sparkleExplode{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(2)}to{opacity:0;transform:scale(3)}}.lightning-icon{display:inline-block;height:60px;position:relative;width:60px}.lightning-icon svg{height:100%;width:100%}.lightning-bolt{animation:lightningStrike 2s ease-in-out infinite;transform-origin:center}@keyframes lightningStrike{0%,90%,to{opacity:1;transform:scale(1)}92%,96%{opacity:.5;transform:scale(1.05)}94%,98%{opacity:1;transform:scale(1)}}.lightning-highlight{animation:highlightPulse 2s ease-in-out infinite}@keyframes highlightPulse{0%,to{stroke-width:2;opacity:.6}50%{stroke-width:3;opacity:1}}.energy-particle{animation:particleFloat 3s ease-in-out infinite}.particle-1{animation-delay:0s}.particle-2{animation-delay:.5s}.particle-3{animation-delay:1s}.particle-4{animation-delay:1.5s}.particle-5{animation-delay:2s}.particle-6{animation-delay:2.5s}@keyframes particleFloat{0%,to{opacity:.3;transform:translate(0)}25%{opacity:1;transform:translate(-5px,-8px)}50%{opacity:.6;transform:translate(5px,-15px)}75%{opacity:.8;transform:translate(-3px,-10px)}}.electric-arc{animation:arcFlicker 1.5s ease-in-out infinite}.arc-1{animation-delay:0s}.arc-2{animation-delay:.75s}@keyframes arcFlicker{0%,to{stroke-width:1.5;opacity:0}10%,30%,50%,70%,90%{stroke-width:2;opacity:.8}20%,40%,60%,80%{stroke-width:1;opacity:.3}}.impact-spark{animation:sparkBurst 2s ease-out infinite}.spark-1{animation-delay:0s}.spark-2{animation-delay:.3s}.spark-3{animation-delay:.6s}@keyframes sparkBurst{0%{opacity:0;transform:scale(0) translate(0)}20%{opacity:1}50%{opacity:.8;transform:scale(1.5) translate(-5px,5px)}to{opacity:0;transform:scale(2) translate(-10px,10px)}}.tech-card:hover .lightning-bolt{animation:lightningIntensify .5s ease-in-out infinite}@keyframes lightningIntensify{0%,to{filter:drop-shadow(0 0 8px #fbbf24);opacity:1}25%,75%{opacity:.7}50%{filter:drop-shadow(0 0 15px #fbbf24) drop-shadow(0 0 25px #f59e0b);opacity:1}}.tech-card:hover .lightning-highlight{stroke:#fff;stroke-width:3;opacity:1}.tech-card:hover .energy-particle{animation:particleExplode 1s ease-out infinite}@keyframes particleExplode{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px,-20px);transform:translate(var(--tx,-20px),var(--ty,-20px))}}.tech-card:hover .particle-1{--tx:-15px;--ty:-15px}.tech-card:hover .particle-2{--tx:-20px;--ty:-10px}.tech-card:hover .particle-3{--tx:15px;--ty:-18px}.tech-card:hover .particle-4{--tx:10px;--ty:-12px}.tech-card:hover .particle-5{--tx:20px;--ty:-8px}.tech-card:hover .particle-6{--tx:-10px;--ty:-15px}.tech-card:hover .electric-arc{animation:arcIntense .3s ease-in-out infinite}@keyframes arcIntense{0%,to{stroke-width:2.5;opacity:1}50%{stroke-width:1.5;opacity:.5}}.tech-card:hover .impact-spark{animation:sparkExplosion .8s ease-out infinite}@keyframes sparkExplosion{0%{opacity:1;transform:scale(1) translate(0)}to{opacity:0;transform:scale(3) translate(-15px,15px)}}.network-icon{display:inline-block;height:60px;position:relative;width:60px}.network-icon svg{height:100%;width:100%}.link{animation:linkPulse 3s ease-in-out infinite}.link-1{animation-delay:0s}.link-2{animation-delay:.5s}.link-3{animation-delay:1s}.link-4{animation-delay:1.5s}.link-5{animation-delay:2s}.link-6{animation-delay:2.5s}@keyframes linkPulse{0%,to{stroke-width:2;opacity:.4}50%{stroke-width:3;opacity:1}}.node{animation:nodePulse 2s ease-in-out infinite}.center-node{animation-delay:0s}.side-node{animation-delay:.3s}.bottom-node{animation-delay:.6s}@keyframes nodePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}.node-core{animation:coreGlow 1.5s ease-in-out infinite}@keyframes coreGlow{0%,to{opacity:.8}50%{r:4.5;opacity:1}}.packet{filter:drop-shadow(0 0 3px currentColor)}.pulse-ring{animation:ringExpand 2s ease-out infinite}.ring-1{animation-delay:0s}.ring-2{animation-delay:1s}@keyframes ringExpand{0%{r:10;stroke-width:2;opacity:.6}to{r:20;stroke-width:.5;opacity:0}}.social-card:hover .link{stroke:#0ccac4;animation:linkIntense .8s ease-in-out infinite}@keyframes linkIntense{0%,to{stroke-width:2;opacity:.6}50%{stroke-width:4;opacity:1}}.social-card:hover .node{animation:nodeExplode 1s ease-out infinite}@keyframes nodeExplode{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.social-card:hover .node-core{fill:#fbbf24;r:5}.social-card:hover .pulse-ring{animation:ringExpandFast 1s ease-out infinite}@keyframes ringExpandFast{0%{r:10;stroke-width:3;opacity:.8}to{r:25;stroke-width:.5;opacity:0}}.social-card:hover .packet{r:3;filter:drop-shadow(0 0 6px currentColor)}@media (max-width:1200px){.hero-grid{grid-template-columns:repeat(3,1fr)}.hero-main{grid-row:span 1}.hero-main,.social-card,.stats-card,.tech-card{grid-column:span 3}.about-grid-islands{gap:3rem;grid-template-columns:1fr}.timeline-item:nth-child(2n) .timeline-card,.timeline-item:nth-child(odd) .timeline-card{margin-left:0;margin-right:0;padding-left:4rem}.timeline-dot,.timeline-line{left:30px}.projects-grid{grid-template-columns:1fr}}@media (max-width:768px){.menu-toggle{display:flex}.nav-links-stack{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#1b2835f7;border-bottom:1px solid #ffffff0d;box-shadow:0 20px 60px #0006;flex-direction:column;gap:0;left:0;opacity:0;padding:2rem;pointer-events:none;position:fixed;right:0;top:70px;transform:translateY(-100%);transition:var(--transition)}.nav-links-stack.open{opacity:1;pointer-events:all;transform:translateY(-20px)}.nav-links-stack a{border-radius:8px;padding:1rem;text-align:center;width:100%}.container-bento,.container-islands,.container-timeline,.nav-content-stack{padding:0 1.5rem}.hero-bento{min-height:auto;padding:6rem 0 3rem}.hero-grid{grid-template-columns:1fr}.hero-main{grid-column:span 1;grid-row:span 1;padding:2rem}.hero-top-row{align-items:center;flex-direction:column;gap:1.5rem;text-align:center}.avatar-image{height:120px;width:120px}.hero-avatar:before{height:140px;width:140px}.stats-card{grid-column:span 1}.stats-grid-bento{gap:1rem;grid-template-columns:repeat(2,1fr)}.info-card,.social-card,.tech-card,.time-card{grid-column:span 1}.section-islands{padding:5rem 0}.island{padding:2rem 1.5rem}.section-title-timeline{font-size:2.5rem}.timeline-item{margin-bottom:4rem}.timeline-card{padding:1.5rem}.card-year{font-size:2rem}.card-title-timeline{font-size:1.5rem}.section-bento{padding:4rem 0}.bento-card{padding:1.5rem}.projects-grid{grid-template-columns:1fr}.project-stats-bento{gap:1rem}.project-actions-bento,.project-stats-bento{flex-direction:column}.filter-buttons-bento{gap:.75rem}.filter-btn{font-size:.875rem;padding:.625rem 1.25rem}.contact-methods-immersive{gap:1.5rem;grid-template-columns:1fr}.section-title-immersive{font-size:2.5rem}.contact-card-immersive{padding:2rem 1.5rem}}@media (max-width:480px){.hero-title-bento{font-size:2rem}.title-subtitle{font-size:1.5rem}.hero-description-bento{font-size:1rem}.hero-actions-bento{flex-direction:column;width:100%}.btn-bento{justify-content:center;width:100%}.avatar-image{height:100px;width:100px}.hero-avatar:before{height:120px;width:120px}.status-badge-bento{font-size:.8125rem;padding:.5rem 1rem}.island-title,.section-title-timeline{font-size:2rem}.stats-grid-bento{grid-template-columns:1fr}.time-large{font-size:2.5rem}.card-year{font-size:1.5rem}.timeline-dot{height:50px;left:25px;width:50px}.dot-icon{font-size:1.5rem}.timeline-line{left:25px}.timeline-card{padding-left:3rem}.bento-card,.island{padding:1.5rem}.credential-card-islands{padding:1rem}.credential-icon-islands{font-size:2rem;height:50px;width:50px}.project-title-bento{font-size:1.25rem}.section-title-immersive{font-size:2rem}.contact-icon-immersive{height:60px;width:60px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.bento-card{animation:fadeIn .6s ease both}.bento-card:first-child{animation-delay:.1s}.bento-card:nth-child(2){animation-delay:.2s}.bento-card:nth-child(3){animation-delay:.3s}.bento-card:nth-child(4){animation-delay:.4s}.bento-card:nth-child(5){animation-delay:.5s}.bento-card:nth-child(6){animation-delay:.6s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.floating-background,.nav-stack,.video-background{display:none}.island,.timeline-card{border:1px solid #ccc;box-shadow:none;page-break-inside:avoid}body{background:#fff;color:#000}}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:#0ccac44d;color:var(--color-text)}::-moz-selection{background:#0ccac44d;color:var(--color-text)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#0ccac44d;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#0ccac480}.btn-bento svg{flex-shrink:0;transition:var(--transition-fast)}.btn-bento.primary svg{animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.btn-bento:hover svg{transform:scale(1.1)}
/*# sourceMappingURL=main.2d91518f.css.map*/