:root{--bg: #071822;--panel: #071b22;--accent1: #8a6bff;--accent2: #b29aff;--warm: #ff7a59;--muted: #c9c0f7;--tech-logo-size: 44px}*{box-sizing:border-box}body,html,#root{height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial}html{scroll-behavior:smooth}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #8a6bff4d}50%{box-shadow:0 0 30px #8a6bff80}}.page{min-height:100%;background:radial-gradient(ellipse at 2% 6%,rgba(138,107,255,.2),transparent 30%),radial-gradient(ellipse at 10% 12%,rgba(138,107,255,.12),transparent 22%),radial-gradient(ellipse at 98% 94%,rgba(138,107,255,.18),transparent 32%),radial-gradient(ellipse at 90% 86%,rgba(138,107,255,.1),transparent 24%),radial-gradient(ellipse at 18% 42%,rgba(77,227,195,.08),transparent 22%),radial-gradient(ellipse at 82% 62%,rgba(255,122,89,.06),transparent 26%),var(--bg);color:#d7eef0}.snap-root{scroll-snap-type:y proximity;height:100vh;overflow-y:auto}.snap-child{scroll-snap-align:start;min-height:100vh}.snap-root>.hero,.snap-root>.section{scroll-snap-align:start;min-height:100vh}.nav{display:flex;justify-content:space-between;align-items:center;padding:24px 48px}.brand{font-weight:800;letter-spacing:1px;font-size:18px;color:var(--accent2);padding:6px 10px;border-radius:10px;background:linear-gradient(90deg,#8a6bff0f,#b29aff08);box-shadow:0 6px 18px #8a6bff0f;text-shadow:0 6px 18px rgba(138,107,255,.12);transition:transform .3s ease,box-shadow .3s ease,background .3s ease;animation:fadeInUp .8s ease-out}.brand:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 28px #8a6bff1f;animation:glow 2s ease-in-out infinite}.menu a{margin-left:20px;color:var(--muted);transition:color .3s ease,transform .2s ease;animation:fadeInUp .8s ease-out .2s both}.menu a:hover{color:var(--accent1);transform:translateY(-2px)}.hero{display:flex;align-items:center;gap:120px;padding:32px;max-width:1200px;margin:0 auto}.hero-left{flex:0 1 560px;max-width:640px;animation:slideInFromLeft 1s ease-out}.hero-right{width:630px;display:flex;justify-content:center;align-items:flex-end;background:transparent;box-shadow:none;padding:0;overflow:visible;animation:slideInFromRight 1s ease-out}.hero-right img{max-width:100%;width:auto;height:auto;max-height:900px;object-fit:contain;border-radius:0;box-shadow:none;-webkit-filter:drop-shadow(0 18px 40px rgba(138,107,255,.12));filter:drop-shadow(0 18px 40px rgba(138,107,255,.12));align-self:flex-end;background:transparent;display:block;animation:float 3s ease-in-out infinite;transition:transform .3s ease}.hero-right img:hover{transform:scale(1.05)}.section.projects{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:56px 32px;background:linear-gradient(180deg,rgba(0,0,0,.02),transparent)}.projects-inner{width:100%;max-width:1200px}.section-title{font-size:40px;margin:0 0 24px;color:var(--accent1);animation:fadeInUp .8s ease-out}.cards{display:flex;flex-direction:column;gap:18px}.card{background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.03);padding:18px;cursor:pointer;transition:all .4s ease;overflow:hidden;max-height:84px;animation:fadeInUp .6s ease-out;transform:translateY(20px);opacity:0}.card:nth-child(1){animation-delay:.1s;animation-fill-mode:forwards}.card:nth-child(2){animation-delay:.2s;animation-fill-mode:forwards}.card:nth-child(3){animation-delay:.3s;animation-fill-mode:forwards}.card:nth-child(4){animation-delay:.4s;animation-fill-mode:forwards}.card:hover{transform:translateY(-2px);border-color:#8a6bff33}.card .card-header h3{margin:0 0 6px}.card .summary{margin:0;color:var(--muted)}.card .card-body{opacity:0;height:0;transition:opacity .3s ease,height .3s ease;padding-top:0}.card.is-open{background:linear-gradient(90deg,#8a6bff0f,#b29aff08);box-shadow:0 18px 40px #8a6bff0f;max-height:420px;transform:translateY(-5px) scale(1.02)}.card.is-open .card-body{opacity:1;height:auto;padding-top:12px}.section.work{padding:56px 32px;min-height:100vh;background:linear-gradient(180deg,transparent,rgba(0,0,0,.02))}.section.tech{padding:56px 32px;min-height:100vh;background:linear-gradient(180deg,rgba(0,0,0,.01),transparent)}.tech-inner{max-width:1200px;margin:0 auto}.tech-block{margin-bottom:28px}.tech-grid{display:flex;flex-wrap:wrap;gap:14px}.tech-item{width:110px;height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffff03;border-radius:8px;padding:8px;border:1px solid rgba(255,255,255,.02);transition:all .3s ease;animation:fadeInUp .6s ease-out;transform:translateY(20px);opacity:0}.tech-item:nth-child(1){animation-delay:.1s;animation-fill-mode:forwards}.tech-item:nth-child(2){animation-delay:.15s;animation-fill-mode:forwards}.tech-item:nth-child(3){animation-delay:.2s;animation-fill-mode:forwards}.tech-item:nth-child(4){animation-delay:.25s;animation-fill-mode:forwards}.tech-item:nth-child(5){animation-delay:.3s;animation-fill-mode:forwards}.tech-item:nth-child(6){animation-delay:.35s;animation-fill-mode:forwards}.tech-item:nth-child(7){animation-delay:.4s;animation-fill-mode:forwards}.tech-item:nth-child(8){animation-delay:.45s;animation-fill-mode:forwards}.tech-item:hover{transform:translateY(-5px) scale(1.05);background:#8a6bff14;border-color:#8a6bff33;box-shadow:0 10px 25px #8a6bff26}.tech-item img,.tech-item .text-fallback{order:0}.tech-item .label{order:1}.tech-item img{width:var(--tech-logo-size);height:var(--tech-logo-size);object-fit:contain;margin-bottom:6px;filter:grayscale(.08) contrast(1.05);transition:filter .3s ease,transform .3s ease}.tech-item:hover img{filter:grayscale(0) contrast(1.1);transform:scale(1.1)}.tech-item .text-fallback{display:none;width:var(--tech-logo-size);height:var(--tech-logo-size);align-items:center;justify-content:center;border-radius:8px;background:#8a6bff14;color:var(--accent1);font-weight:600;text-align:center;margin-bottom:6px}.tech-item .text-fallback[style*="display: block"]{display:flex!important}.tech-item .label{font-size:12px;color:var(--muted)}.competencies{columns:2;gap:12px;list-style:disc;padding-left:20px}.work-inner{max-width:1200px;margin:0 auto}.work-list{display:flex;flex-direction:column;gap:18px}.work-entry{display:flex;gap:20px;align-items:flex-start;padding:18px;border-radius:8px;border:1px solid rgba(255,255,255,.02);background:#ffffff03;transition:all .3s ease;animation:fadeInUp .6s ease-out;transform:translateY(20px);opacity:0}.work-entry:nth-child(1){animation-delay:.1s;animation-fill-mode:forwards}.work-entry:nth-child(2){animation-delay:.2s;animation-fill-mode:forwards}.work-entry:nth-child(3){animation-delay:.3s;animation-fill-mode:forwards}.work-entry:hover{transform:translateY(-3px);background:#8a6bff08;border-color:#8a6bff1a;box-shadow:0 8px 25px #8a6bff1a}.logo{width:96px;height:96px;position:relative;flex:0 0 96px;border-radius:8px;overflow:hidden;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo img{width:100%;height:100%;object-fit:contain;display:block;background:transparent}.logo-tint{position:absolute;inset:0;background:linear-gradient(180deg,#8a6bff47,#b29aff1f);mix-blend-mode:overlay;pointer-events:none}.details{flex:1}.company-row{display:flex;justify-content:space-between;align-items:center}.company{margin:0;color:var(--accent1)}.period{color:var(--muted)}.role{font-weight:600;margin-top:6px}.desc{margin-top:8px;color:var(--muted)}.site-footer{margin-top:48px;padding:28px 32px;border-top:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,#ffffff05,#fff0);display:flex;justify-content:center}.footer-inner{width:100%;max-width:1200px;display:flex;justify-content:center}.contact-links{display:flex;gap:14px;align-items:center;color:var(--muted);flex-wrap:wrap}.contact-link{color:var(--accent2);text-decoration:underline}.sep{color:#ffffff38}.headline{font-size:110px;line-height:.9;margin:0;background:linear-gradient(90deg,var(--accent1),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800;animation:fadeInUp 1.2s ease-out .3s both}.sub{color:var(--muted);max-width:520px;animation:fadeInUp 1.2s ease-out .6s both}.link{color:var(--accent2);text-decoration:underline;transition:color .3s ease}.link:hover{color:var(--accent1)}.cta{margin-top:24px;padding:12px 32px;border-radius:999px;border:2px solid rgba(255,255,255,.06);background:linear-gradient(90deg,#8a6bff1a,#b29aff0f);color:#fff;cursor:pointer;position:relative;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .3s ease,box-shadow .3s ease;animation:fadeInUp 1.2s ease-out .9s both}.cta:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 10px 30px #8a6bff4d}.cta:before{content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,var(--accent1),var(--accent2));border-radius:999px;z-index:-1;filter:blur(12px);opacity:.95}.cta.muted{background:transparent;color:var(--muted);border:1px solid rgba(255,255,255,.06);box-shadow:none}.cta.muted:before{display:none}.cta.muted{position:relative;color:var(--accent1)}.cta.muted:after{content:"";position:absolute;inset:-1px;border-radius:999px;background:linear-gradient(90deg,var(--accent1),var(--accent2));z-index:-2;filter:blur(6px);opacity:.22}.cta.muted:before{content:"";position:absolute;inset:0;border-radius:999px;padding:2px;background:linear-gradient(90deg,#ffffff05,#ffffff05);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);z-index:-1}.cta.muted:hover{transform:translateY(-2px);box-shadow:0 8px 22px #8a6bff1a}@media (max-width:900px){.hero{flex-direction:column;text-align:center}.headline{font-size:64px}.hero-right{width:100%}.hero-right img{width:80%;height:auto;aspect-ratio:4/3}}body.device-tablet .headline{font-size:84px}body.device-mobile .headline{font-size:64px}body.device-mobile .hero{flex-direction:column;text-align:center}body.device-tablet .hero{gap:60px;padding:24px}body.device-mobile .hero-right{width:100%}body.device-mobile .hero-right img{width:80%;height:auto;aspect-ratio:4/3}body.device-mobile .tech{}
