@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600&display=swap";.projects{--p-ink:#f1f5f9;--p-ink-soft:#cbd5e1;--p-accent:var(--accent-secondary);--p-accent-hover:#67e8f9;--p-on-accent:#04121a;--p-ease:cubic-bezier(.16, 1, .3, 1);--p-radius:12px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.projects :focus-visible,.video-modal :focus-visible{outline:2px solid var(--p-accent,var(--accent-secondary));outline-offset:3px}.projects__intro{max-width:760px;margin-bottom:120px}.projects__intro h2{letter-spacing:-.04em;color:var(--p-ink);font-size:clamp(2.75rem,7vw,5.5rem);font-weight:800;line-height:.95}.projects__intro p{max-width:56ch;color:var(--p-ink-soft);margin-top:28px;font-size:1.15rem;line-height:1.6}.projects__list{flex-direction:column;gap:160px;display:flex}.project{grid-template-columns:7fr 5fr;align-items:start;column-gap:64px;display:grid}.project[data-flipped]{grid-template-columns:5fr 7fr}.project__media{grid-area:1/1}.project__body{grid-area:1/2}.project[data-flipped] .project__media{grid-column:2}.project[data-flipped] .project__body{grid-column:1}.project__media{min-width:0;position:sticky;top:112px}.project__poster{aspect-ratio:16/9;border-radius:var(--p-radius);background:var(--bg-surface-elevated);width:100%;color:inherit;border:0;padding:0;display:block;position:relative;overflow:hidden}button.project__poster{cursor:pointer}.project__poster img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--p-ease);display:block}.project__poster-play{background:var(--p-accent);width:56px;height:56px;color:var(--p-on-accent);transition:transform .25s var(--p-ease);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:20px;left:20px}.project__poster-play svg{margin-left:2px}@media (hover:hover){.project__poster:hover img{transform:scale(1.03)}.project__poster:hover .project__poster-play{transform:scale(1.08)}}.project__body{min-width:0}.project__badge{color:#fbbf24;align-items:center;gap:8px;margin-bottom:16px;font-size:.925rem;font-weight:600;line-height:1.4;display:flex}.project__badge svg{flex:none}.project__name{letter-spacing:-.035em;color:var(--p-ink);text-wrap:balance;font-size:clamp(2rem,3.6vw,3.25rem);font-weight:800;line-height:1.05}.project__tagline{font-family:var(--font-display);color:var(--p-ink);margin-top:14px;font-size:1.1rem;font-weight:600;line-height:1.4}.project__summary{max-width:60ch;color:var(--p-ink-soft);margin-top:16px;font-size:1.05rem;line-height:1.65}.project__tech{flex-wrap:wrap;gap:8px;margin-top:24px;padding:0;list-style:none;display:flex}.project__tech li{background:var(--bg-surface-elevated);color:var(--p-ink-soft);border-radius:999px;padding:6px 12px;font-size:.875rem;font-weight:500}.project__actions{flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:32px;display:flex}.btn-solid,.btn-text{min-height:44px;font:inherit;cursor:pointer;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.btn-solid{background:var(--p-accent);color:var(--p-on-accent);border:0;border-radius:999px;padding:0 22px;transition:transform .16s ease-out,background-color .16s ease-out}.btn-solid:hover{background:var(--p-accent-hover)}.btn-solid:active{transform:scale(.97)}.btn-text{color:var(--p-ink);text-underline-offset:5px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1.5px;transition:color .16s ease-out,text-decoration-color .16s ease-out}.btn-text:hover{color:var(--p-accent);text-decoration-color:currentColor}.project__details{border-radius:var(--p-radius);background:var(--bg-surface);grid-column:1/-1;margin-top:56px;padding:40px}.project__details h4{letter-spacing:-.02em;color:var(--p-ink);font-size:1.35rem;font-weight:800}.project__highlights{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px 48px;margin-top:28px;padding:0;list-style:none;display:grid}.project__highlights li{color:var(--p-ink-soft);flex-direction:column;gap:6px;font-size:.975rem;line-height:1.6;display:flex}.project__highlights strong{font-family:var(--font-display);color:var(--p-ink);font-size:1.05rem;font-weight:700}.more{margin-top:200px}.more__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 24px;display:flex}.more__head h3{letter-spacing:-.03em;color:var(--p-ink);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800}.more__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;margin-top:32px;padding:0;list-style:none;display:grid}.more__item{border-radius:var(--p-radius);background:var(--bg-surface);height:100%;color:inherit;flex-direction:column;gap:8px;padding:24px;text-decoration:none;transition:background-color .2s ease-out;display:flex}.more__item:hover{background:var(--bg-surface-elevated)}.more__name{font-family:var(--font-display);color:var(--p-ink);text-transform:capitalize;font-size:1.1rem;font-weight:700}.more__desc{-webkit-line-clamp:2;color:var(--p-ink-soft);-webkit-box-orient:vertical;font-size:.95rem;line-height:1.55;display:-webkit-box;overflow:hidden}.more__lang{color:var(--text-secondary);margin-top:auto;padding-top:4px;font-size:.875rem;font-weight:500}.video-modal{z-index:9999;background:#06080deb;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.video-modal__panel{background:var(--bg-surface);border-radius:16px;width:min(100%,960px);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 24px 60px #0000008c}.video-modal__header{align-items:center;gap:16px;padding:12px 12px 12px 24px;display:flex}.video-modal__title{color:#f1f5f9;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1.05rem;font-weight:700;overflow:hidden}.video-modal__open{min-height:44px;color:var(--accent-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:.925rem;font-weight:600;text-decoration:none;display:inline-flex}.video-modal__open:hover{text-underline-offset:4px;text-decoration:underline}.video-modal__close{background:var(--bg-surface-elevated);color:#f1f5f9;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;transition:background-color .16s ease-out,transform .16s ease-out;display:grid}.video-modal__close:hover{background:var(--bg-surface-hover)}.video-modal__close:active{transform:scale(.95)}.video-modal__stage{background:#080a10;justify-content:center;display:flex}.video-modal__stage[data-type=youtube],.video-modal__stage[data-type=video]{aspect-ratio:16/9}.video-modal__stage[data-type=linkedin]{padding:16px}.video-modal__stage iframe{border:0;width:100%;height:100%}.video-modal__stage[data-type=linkedin] iframe{border-radius:8px;max-width:720px;height:min(520px,62dvh)}.video-modal__stage video{object-fit:contain;width:100%;height:100%}.video-modal__fallback{color:var(--p-ink-soft,#cbd5e1);align-self:center;padding:48px 24px}.video-modal__fallback a,.video-modal__note a{color:var(--accent-secondary)}.video-modal__note{color:#cbd5e1;padding:14px 24px 18px;font-size:.925rem}@media (width<=900px){.projects__intro{margin-bottom:72px}.projects__list{gap:104px}.project,.project[data-flipped]{grid-template-columns:minmax(0,1fr);row-gap:28px}.project__media,.project__body,.project[data-flipped] .project__media,.project[data-flipped] .project__body{grid-area:auto/1}.project__media{position:static}.project__details{margin-top:8px;padding:24px}.project__highlights{gap:24px}.more{margin-top:120px}.video-modal{padding:12px}.video-modal__header{padding-left:16px}}@media (width<=480px){.project__poster-play{width:48px;height:48px;bottom:14px;left:14px}.video-modal__open span,.video-modal__open{font-size:.85rem}}@media (prefers-reduced-motion:reduce){.project__poster img,.project__poster-play,.btn-solid,.more__item{transition:none}}:root{--bg-deep:#12151e;--bg-canvas:#141722;--bg-surface:#161a26;--bg-surface-elevated:#1a1e2c;--bg-surface-hover:#1c2130;--border-subtle:#ffffff0a;--border-highlight:#ffffff14;--border-active:#6366f159;--accent-primary:#6366f1;--accent-secondary:#22d3ee;--accent-tertiary:#a855f7;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--neu-flat:6px 6px 14px #0000008c, -5px -5px 12px #ffffff08;--neu-raised:8px 8px 18px #0009, -6px -6px 16px #ffffff0a;--neu-card:10px 10px 24px #000000a6, -8px -8px 20px #ffffff0b;--neu-hover:14px 14px 30px #000000bf, -10px -10px 24px #ffffff0f;--neu-inset:inset 3px 3px 7px #000000a6, inset -3px -3px 7px #ffffff09;--neu-inset-deep:inset 4px 4px 10px #000000bf, inset -4px -4px 10px #ffffff08;--neu-pressed:inset 4px 4px 8px #000c, inset -3px -3px 6px #ffffff06;--gradient-linear:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));--gradient-linear-reverse:linear-gradient(135deg, var(--accent-secondary), var(--accent-tertiary));--gradient-text:linear-gradient(135deg, #fff 30%, #94a3b8 100%);--gradient-accent-text:linear-gradient(135deg, var(--accent-secondary) 0%, var(--accent-primary) 50%, var(--accent-tertiary) 100%);--gradient-mesh:radial-gradient(circle at 20% 15%, #6366f10a 0%, transparent 40%), radial-gradient(circle at 80% 85%, #22d3ee09 0%, transparent 40%);--font-display:"Plus Jakarta Sans", sans-serif;--font-body:"Inter", sans-serif;font-family:var(--font-body);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-primary);background:var(--bg-deep);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}html:not(.lenis){scroll-behavior:smooth}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}body{background:var(--bg-deep);background-image:var(--gradient-mesh);min-height:100vh;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 2rem}@media (width<=768px){.container{padding:0 1.5rem}}.glass,.neu-card{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--neu-card);border-radius:24px;transition:all .35s cubic-bezier(.16,1,.3,1)}.glass:hover,.neu-card:hover{background:var(--bg-surface-elevated);border-color:var(--border-highlight);box-shadow:var(--neu-hover);transform:translateY(-4px)}.neu-inset{background:var(--bg-deep);box-shadow:var(--neu-inset);border:1px solid #0000004d;border-radius:16px}.logo{font-family:var(--font-display);letter-spacing:-1.5px;font-weight:800}.text-gradient{background:var(--gradient-accent-text);background-image:var(--gradient-accent-text);-webkit-text-fill-color:transparent;color:var(--accent-secondary);-webkit-background-clip:text;background-clip:text;display:inline-block}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;font-weight:700}.interactive{cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1)}.interactive:active{transform:scale(.96)}@media (pointer:fine){*,:before,:after{cursor:none!important}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}@keyframes blink{0%,to{opacity:0}50%{opacity:1}}.animate-blink{animation:.9s step-end infinite blink}@keyframes pulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 10px #ff4b2b}50%{opacity:.7;transform:scale(1.2);box-shadow:0 0 20px #ff4b2b,0 0 30px #ff4b2b}}@keyframes statusPulse{0%{transform:scale(.95);box-shadow:0 0 #22d3eeb3}70%{transform:scale(1);box-shadow:0 0 0 8px #22d3ee00}to{transform:scale(.95);box-shadow:0 0 #22d3ee00}}@keyframes floatGently{0%,to{transform:translate(0,0)}50%{transform:translateY(-8px)}}@keyframes shimmerSlide{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes cardBorderGlow{0%,to{border-color:#6366f159;box-shadow:10px 10px 24px #000000a6,-8px -8px 20px #ffffff0a,0 0 20px #6366f126}50%{border-color:#22d3ee73;box-shadow:12px 12px 28px #000000b3,-9px -9px 22px #ffffff0e,0 0 28px #22d3ee38}}@keyframes ambientPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.06)}}.pulse-status{will-change:transform, box-shadow;animation:2s cubic-bezier(.4,0,.6,1) infinite statusPulse}.float-slow{will-change:transform;animation:5s ease-in-out infinite floatGently}.glow-card{will-change:border-color, box-shadow;animation:4s ease-in-out infinite cardBorderGlow}.shimmer-badge{position:relative;overflow:hidden}.shimmer-badge:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000 0%,#ffffff26 50%,#0000 100%);animation:3s infinite shimmerSlide;position:absolute;inset:0;transform:translate(-100%)}.ambient-glow{will-change:transform, opacity;animation:5s ease-in-out infinite ambientPulse}section{padding:120px 0;position:relative}@media (width<=768px){section{padding:80px 0}}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline:after{content:"";background:#ffffff0d;width:2px;position:absolute;top:0;bottom:0;left:32px}.timeline-item{margin-bottom:48px;padding-left:80px;position:relative}.timeline:after{content:"";background:var(--bg-deep);width:3px;box-shadow:var(--neu-inset);border-radius:4px;position:absolute;top:0;bottom:0;left:32px}.timeline-dot{background:var(--bg-surface);border:2px solid var(--accent-secondary);z-index:2;width:20px;height:20px;box-shadow:4px 4px 10px #00000080, -3px -3px 8px #ffffff0a, 0 0 12px var(--accent-secondary);border-radius:50%;position:absolute;top:8px;left:23px}.btn{--border-color:linear-gradient(-45deg, #ffae00, #7e03aa, #00fffb);--border-width:.125em;--curve-size:.5em;--blur:30px;--bg:#080312;--color:#afffff;color:var(--color);cursor:pointer;isolation:isolate;font-size:15px;font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;clip-path:polygon( 0% var(--curve-size), var(--curve-size) 0,  100% 0, 100% calc(100% - var(--curve-size)),  calc(100% - var(--curve-size)) 100%,  0 100%);border:0;justify-content:center;align-items:center;gap:10px;padding:.75em 1.75em;font-weight:700;text-decoration:none;transition:color .25s;display:inline-flex;position:relative;box-shadow:10px 10px 20px #0009}.btn:after,.btn:before{content:"";position:absolute;inset:0}.btn:before{background:var(--border-color);z-index:-2;background-size:300% 300%;animation:5s infinite move-bg7234}@keyframes move-bg7234{0%{background-position:31% 0}50%{background-position:70% 100%}to{background-position:31% 0}}.btn:after{background:var(--bg);z-index:-1;clip-path:polygon( var(--border-width) calc(var(--curve-size) + var(--border-width) * .5), calc(var(--curve-size) + var(--border-width) * .5) var(--border-width),  calc(100% - var(--border-width)) var(--border-width), calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * .5)),  calc(100% - calc(var(--curve-size) + var(--border-width) * .5)) calc(100% - var(--border-width)),  var(--border-width) calc(100% - var(--border-width)));transition:clip-path .5s}.btn:where(:hover,:focus):after{clip-path:polygon( calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * .5)), calc(100% - var(--border-width)) var(--border-width),  calc(100% - var(--border-width)) var(--border-width), calc(100% - var(--border-width)) calc(100% - calc(var(--curve-size) + var(--border-width) * .5)),  calc(100% - calc(var(--curve-size) + var(--border-width) * .5)) calc(100% - var(--border-width)),  calc(100% - calc(var(--curve-size) + var(--border-width) * .5)) calc(100% - var(--border-width)));transition:all .2s}.btn:where(:hover,:focus){color:#fff}.neu-icon-btn{background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:14px;justify-content:center;align-items:center;text-decoration:none;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:5px 5px 12px #00000080,-4px -4px 10px #ffffff09}.neu-icon-btn:hover{color:var(--accent-secondary);border-color:var(--border-highlight);transform:translateY(-2px);box-shadow:7px 7px 16px #000000a6,-5px -5px 12px #ffffff0d,0 0 14px #22d3ee26}.neu-icon-btn:active{box-shadow:var(--neu-pressed);transform:translateY(1px)}.tab-btn{background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;border-radius:100px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:5px 5px 12px #00000080,-4px -4px 10px #ffffff08}.tab-btn:hover{color:#fff;border-color:var(--border-highlight);box-shadow:7px 7px 16px #0009,-5px -5px 12px #ffffff0b}.tab-btn.active{background:var(--bg-deep);color:var(--accent-secondary);box-shadow:var(--neu-inset), 0 0 16px #22d3ee26;border-color:#22d3ee4d}.tab-btn:active{box-shadow:var(--neu-pressed)}.progress-bar-track{background:var(--bg-deep);width:100%;height:10px;box-shadow:var(--neu-inset);border:1px solid #0006;border-radius:10px;padding:2px;position:relative;overflow:hidden}.progress-bar-fill{background:linear-gradient(to right, var(--accent-primary), var(--accent-secondary));border-radius:8px;height:100%;transition:width 1s ease-out;box-shadow:0 0 10px #22d3ee66}.form-group{margin-bottom:24px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.form-input,.form-textarea{background:var(--bg-deep);width:100%;box-shadow:var(--neu-inset);color:#fff;font-family:var(--font-body);border:1px solid #0006;border-radius:16px;padding:15px 20px;font-size:.95rem;transition:all .3s}.form-input:focus,.form-textarea:focus{box-shadow:var(--neu-inset), 0 0 16px #6366f140;background:#0f121a;border-color:#6366f180;outline:none}.loading-screen{background:var(--bg-deep);z-index:10000;flex-direction:column;justify-content:center;align-items:center;transition:opacity .8s cubic-bezier(.16,1,.3,1),visibility .8s;display:flex;position:fixed;inset:0}.loader{flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.loading-text{color:#fff;margin-left:10px;font-size:14pt;font-weight:600}.dot{margin-left:3px;animation:1.5s infinite blink}.dot:nth-child(2){animation-delay:.3s}.dot:nth-child(3){animation-delay:.6s}.loading-bar-background{--height:12px;box-sizing:border-box;width:220px;height:var(--height);background:var(--bg-deep);box-shadow:var(--neu-inset);border:1px solid #0006;border-radius:100px;align-items:center;padding:2px;display:flex}.loading-bar{--height:6px;width:0%;height:var(--height);background:linear-gradient(90deg, var(--accent-primary) 0%, var(--accent-secondary) 100%);box-shadow:0 0 14px var(--accent-secondary);border-radius:100px;flex-direction:column;justify-content:center;animation:2.5s ease-out infinite loading;display:flex;position:relative;overflow:hidden}.white-bars-container{align-items:center;gap:18px;display:flex;position:absolute}.white-bar{opacity:.3;background:linear-gradient(-45deg,#fff 0%,#fff0 70%);width:10px;height:45px;rotate:45deg}@keyframes loading{0%{width:0}80%{width:100%}to{width:100%}}@keyframes marqueeLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marqueeRight{0%{transform:translate(-50%)}to{transform:translate(0)}}.marquee-container{pointer-events:none;background:#03040b33;border-top:1px solid #ffffff05;border-bottom:1px solid #ffffff05;flex-direction:column;gap:1.25rem;width:100%;padding:40px 0;display:flex;position:relative;overflow:hidden}.marquee-container:before,.marquee-container:after{content:"";z-index:2;pointer-events:none;width:15%;position:absolute;top:0;bottom:0}.marquee-container:before{background:linear-gradient(to right, var(--bg-deep) 0%, transparent 100%);left:0}.marquee-container:after{background:linear-gradient(to left, var(--bg-deep) 0%, transparent 100%);right:0}.marquee-row{gap:1.5rem;width:max-content;display:flex}.marquee-row-left{animation:40s linear infinite marqueeLeft}.marquee-row-right{animation:40s linear infinite marqueeRight}.marquee-pill{background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;border-radius:100px;padding:12px 28px;font-size:.9rem;font-weight:700;transition:all .3s;box-shadow:4px 4px 10px #00000073,-3px -3px 8px #ffffff06}.hero-grid{grid-template-columns:1fr;align-items:center;gap:5rem;width:100%;display:grid}@media (width>=992px){.hero-grid{grid-template-columns:1.2fr .8fr}}
