:root{--accent:#a77bff;--accent2:#5ec8ff;--accent-rgb:167,123,255;color:#f5f2ff;font-synthesis:none;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;background:#07040f;font-family:DM Sans,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:#07040f;margin:0}html[data-theme=light] body{background:#f7f5fd}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}img{max-width:100%;display:block}::selection{background:var(--accent);color:#fff}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#07040f}::-webkit-scrollbar-thumb{background:linear-gradient(var(--accent),var(--accent2));border:2px solid #07040f;border-radius:10px}kbd{border:1px solid var(--border);background:var(--surface);border-bottom-width:2px;border-radius:5px;padding:2px 6px;font:600 10px JetBrains Mono,monospace}code{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.9em}.site{--bg:#07040f;--surface:#160f28c7;--surface-solid:#140e25;--surface2:rgba(var(--accent-rgb),.1);--text:#f5f2ff;--muted:#b2a8c8;--border:#beaaff24;--glass-hi:#ffffff0f;background:var(--bg);color:var(--text);min-height:100vh;transition:background .4s,color .4s;position:relative;overflow-x:clip}html[data-theme=light] .site{--bg:#f6f4fc;--surface:#ffffffd1;--surface-solid:#fff;--surface2:rgba(var(--accent-rgb),.12);--text:#1b1430;--muted:#5c5272;--border:#50329626;--glass-hi:#ffffffb3}.bg-fx{pointer-events:none;z-index:0;contain:strict;position:fixed;inset:0;overflow:hidden}.blob{opacity:.42;border-radius:50%;position:absolute}.b1{background:radial-gradient(circle,var(--accent) 0%,transparent 68%);width:760px;height:760px;top:-240px;right:-180px}.b2{background:radial-gradient(circle,var(--accent2) 0%,transparent 68%);opacity:.28;width:680px;height:680px;bottom:-260px;left:-200px}.b3{opacity:.12;background:radial-gradient(circle,#ff4fa3 0%,#0000 68%);width:520px;height:520px;top:40%;left:36%}html[data-theme=light] .blob{opacity:.2}.grid-lines{background-image:linear-gradient(rgba(var(--accent-rgb),.05) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--accent-rgb),.05) 1px,transparent 1px);background-size:70px 70px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 20%,#000 10%,#0000 70%);mask-image:radial-gradient(at 50% 20%,#000 10%,#0000 70%)}main,.header,.footer{z-index:2;position:relative}.cursor-dot,.cursor-ring{pointer-events:none;z-index:9999;display:none;position:fixed;top:0;left:0}html.has-cursor .cursor-dot,html.has-cursor .cursor-ring{display:block}html.has-cursor,html.has-cursor a,html.has-cursor button{cursor:none}.cursor-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent);border-radius:50%;margin:-3px 0 0 -3px}.cursor-ring{border:1.5px solid rgba(var(--accent-rgb),.6);border-radius:50%;width:38px;height:38px;margin:-19px 0 0 -19px;transition:width .25s,height .25s,margin .25s,background .25s,border-color .25s}.cursor-ring.active{background:rgba(var(--accent-rgb),.12);border-color:var(--accent);width:64px;height:64px;margin:-32px 0 0 -32px}.cursor-ring.down{width:28px;height:28px;margin:-14px 0 0 -14px}.cursor-ring:after{content:attr(data-label);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);place-items:center;font:700 9px Space Grotesk;display:grid;position:absolute;inset:0}.preloader{z-index:10000;background:#07040f;place-items:center;transition:transform 1s cubic-bezier(.76,0,.24,1);display:grid;position:fixed;inset:0}.preloader.out{transform:translateY(-100%)}.pre-inner{width:min(440px,80vw)}.pre-name{letter-spacing:-.05em;color:#f5f2ff;font:700 clamp(40px,8vw,74px) Space Grotesk;display:flex;overflow:hidden}.pre-name span{animation:.7s cubic-bezier(.2,.8,.2,1) forwards rise;display:inline-block;transform:translateY(110%)}.pre-name span:nth-child(odd){color:var(--accent)}@keyframes rise{to{transform:none}}.pre-bar{background:#ffffff14;border-radius:2px;height:2px;margin:22px 0 12px;overflow:hidden}.pre-bar i{background:linear-gradient(90deg,var(--accent),var(--accent2));height:100%;box-shadow:0 0 14px var(--accent);transition:width .1s;display:block}.pre-meta{letter-spacing:.15em;color:#9a90b2;justify-content:space-between;font:600 11px JetBrains Mono,monospace;display:flex}.scroll-bar{background:linear-gradient(90deg,var(--accent),var(--accent2));transform-origin:0;z-index:100;height:3px;box-shadow:0 0 12px var(--accent);position:fixed;top:0;left:0;right:0}.to-top{z-index:90;background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);opacity:0;pointer-events:none;border-radius:50%;place-items:center;width:52px;height:52px;transition:all .35s;display:grid;position:fixed;bottom:26px;right:26px;transform:translateY(20px)scale(.8)}.to-top.show{opacity:1;pointer-events:auto;transform:none}.to-top svg{position:absolute;inset:0;transform:rotate(-90deg)}.to-top circle{fill:none;stroke:var(--border);stroke-width:2.5px}.to-top .prog{stroke:var(--accent);stroke-linecap:round}.to-top span{color:var(--accent);font-weight:700}.to-top:hover{transform:translateY(-4px)}.header{z-index:50;justify-content:space-between;align-items:center;max-width:1360px;height:84px;margin:auto;padding:0 5%;display:flex;position:sticky;top:0}.header:before{content:"";background:var(--surface);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);border:1px solid var(--border);z-index:-1;border-radius:20px;position:absolute;inset:10px 2%}.brand{letter-spacing:.12em;align-items:center;gap:12px;font:700 14px Space Grotesk,sans-serif;display:flex}.brand-mark{letter-spacing:0;background:linear-gradient(135deg,rgba(var(--accent-rgb),.25),transparent);border:1px solid rgba(var(--accent-rgb),.5);border-radius:12px;place-items:center;width:42px;height:42px;font-size:22px;transition:transform .4s;display:grid;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.brand:hover .brand-mark{transform:rotate(-10deg)scale(1.06)}.brand-mark span,.brand-accent{color:var(--accent)}.nav{gap:6px;display:flex}.nav a{color:var(--muted);border-radius:10px;padding:9px 13px;font-family:Space Grotesk;font-size:13px;transition:color .2s,background .2s;position:relative}.nav a:hover{color:var(--text)}.nav a.active{color:var(--text);background:rgba(var(--accent-rgb),.13)}.nav a.active:after{content:"";background:var(--accent);width:4px;height:4px;box-shadow:0 0 8px var(--accent);border-radius:50%;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.header-actions{align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--border);color:var(--text);background:var(--surface);border-radius:12px;place-items:center;width:40px;height:40px;transition:border-color .2s,transform .2s;display:grid}.icon-button:hover{border-color:var(--accent);transform:translateY(-2px)}.kbd-button{border:1px solid var(--border);background:var(--surface);height:40px;color:var(--muted);border-radius:12px;align-items:center;gap:5px;padding:0 12px;font:600 12px JetBrains Mono;display:flex}.kbd-button:hover{color:var(--text);border-color:var(--accent)}.mobile-menu{display:none}.picker-wrap{position:relative}.picker{background:var(--surface-solid);border:1px solid var(--border);border-radius:14px;gap:8px;padding:10px;animation:.2s pop;display:flex;position:absolute;top:50px;right:0;box-shadow:0 20px 50px #00000059}.picker button{border:2px solid #0000;border-radius:50%;width:26px;height:26px;transition:transform .2s}.picker button:hover{transform:scale(1.15)}.picker button.on{border-color:var(--text)}@keyframes pop{0%{opacity:0;transform:translateY(-6px)scale(.96)}}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:20px;max-width:1360px;min-height:calc(100vh - 84px);margin:auto;padding:30px 5% 110px;display:grid;position:relative}.hero-copy{z-index:3;position:relative}.hero-badges{flex-wrap:wrap;gap:10px;display:flex}.availability,.eyebrow,.small-label{letter-spacing:.2em;color:var(--accent);font-size:11px;font-weight:700}.availability{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:99px;align-items:center;gap:9px;padding:10px 15px;display:inline-flex}.availability.clock{color:var(--muted);letter-spacing:.06em;font-family:JetBrains Mono}.status-dot{background:#4bd9ac;border-radius:50%;width:7px;height:7px;animation:2s infinite pulse;display:inline-block;box-shadow:0 0 #4bd9ac}@keyframes pulse{0%{box-shadow:0 0 #4bd9acb3}70%{box-shadow:0 0 0 9px #4bd9ac00}to{box-shadow:0 0 #4bd9ac00}}.intro{letter-spacing:.3em;color:var(--muted);margin:34px 0 6px;font-size:12px;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,sans-serif}.hero-name{letter-spacing:-.065em;margin:0 0 20px;font-size:clamp(56px,7.6vw,118px);line-height:.95}.hero-name .line{padding-bottom:.06em;display:block;overflow:hidden}.hero-name .line>span{display:inline-block}.gradient-text{background:linear-gradient(100deg,var(--accent),var(--accent2) 60%,var(--accent));color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite shine}@keyframes shine{to{background-position:200%}}.hero-role{color:var(--muted);min-height:1.4em;margin-bottom:20px;font:500 clamp(20px,2.2vw,28px) Space Grotesk}.typewriter{color:var(--text);font-weight:700}.typewriter i{background:var(--accent);vertical-align:-3px;width:3px;height:1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero-description{max-width:560px;color:var(--muted);font-size:16px;line-height:1.8}.hero-description strong{color:var(--text)}.hero-buttons{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.magnetic{transition:transform .3s cubic-bezier(.2,.8,.2,1);display:inline-block}.button{isolation:isolate;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:12px;padding:16px 24px;font-size:13px;font-weight:700;transition:transform .25s,box-shadow .25s,background .25s;display:inline-flex;position:relative;overflow:hidden}.button.primary{color:#fff;box-shadow:0 10px 30px rgba(var(--accent-rgb),.35);background:linear-gradient(120deg,#7c46f5,#3c99e6)}.button.primary:before{content:"";z-index:-1;background:linear-gradient(120deg,#0000 30%,#ffffff73,#0000 70%);transition:transform .7s;position:absolute;inset:0;transform:translate(-120%)}.button.primary:hover:before{transform:translate(120%)}.button.primary:hover{box-shadow:0 14px 40px rgba(var(--accent-rgb),.55)}.button.secondary{border-color:var(--border);background:var(--surface);color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.button.secondary:hover{border-color:var(--accent)}.button.ghost{color:var(--muted);border-color:#0000}.button.ghost:hover{color:var(--text)}.hero-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:34px;font-size:12px;display:flex}.meta-divider{background:var(--border);width:1px;height:14px;margin:0 6px}.link-btn{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.link-btn:hover{color:var(--text)}.hero-art{min-width:0;height:min(640px,78vh);position:relative}.hero-art canvas{touch-action:pan-y}.hero-glow{background:radial-gradient(circle,rgba(var(--accent-rgb),.32) 0%,transparent 68%);pointer-events:none;border-radius:50%;position:absolute;inset:8% 10%}.scene-loading{color:var(--muted);letter-spacing:.2em;align-content:center;place-items:center;gap:14px;font:600 11px JetBrains Mono;display:grid;position:absolute;inset:0}.scene-loading span{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.canvas-fallback-img{object-fit:cover;border-radius:30px;width:70%;height:100%;margin:auto}.chip{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;color:var(--text);border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:700;animation:5s ease-in-out infinite bob;display:flex;position:absolute;box-shadow:0 15px 35px #00000040}.chip svg{color:var(--accent)}.c1{top:14%;left:0}.c2{animation-delay:-1.6s;top:46%;right:-2%}.c3{animation-delay:-3.2s;bottom:16%;left:6%}@keyframes bob{50%{transform:translateY(-14px)}}.hud{border:2px solid rgba(var(--accent-rgb),.55);pointer-events:none;width:26px;height:26px;position:absolute}.hud.tl{border-bottom:0;border-right:0;top:4%;left:8%}.hud.tr{border-bottom:0;border-left:0;top:4%;right:8%}.hud.bl{border-top:0;border-right:0;bottom:9%;left:8%}.hud.br{border-top:0;border-left:0;bottom:9%;right:8%}.art-label{white-space:nowrap;color:var(--muted);letter-spacing:.13em;background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;align-items:center;gap:6px;padding:6px;font-size:10px;display:flex;position:absolute;bottom:2%;left:50%;transform:translate(-50%)}.art-label .mode-pill{letter-spacing:.12em;width:auto;height:28px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:9px;margin:0;padding:0 12px;font:700 10px Space Grotesk;transition:all .2s}.art-label .mode-pill:hover{color:var(--text);transform:none}.art-label .mode-pill.on{background:rgba(var(--accent-rgb),.22);border-color:rgba(var(--accent-rgb),.5);color:var(--text);box-shadow:0 0 14px rgba(var(--accent-rgb),.25)}.art-label button{border:1px solid var(--border);width:28px;height:28px;color:var(--accent);background:var(--surface);border-radius:9px;place-items:center;margin-left:2px;display:grid}.art-label button:not(.mode-pill):hover{transition:all .3s;transform:rotate(-90deg)}.scroll-indicator{letter-spacing:.18em;color:var(--muted);align-items:center;gap:12px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:34px;left:5%}.mouse{border:1.5px solid var(--muted);border-radius:12px;justify-content:center;width:20px;height:32px;padding-top:6px;display:flex}.mouse i{background:var(--accent);border-radius:2px;width:3px;height:7px;animation:1.6s infinite wheel}@keyframes wheel{0%{opacity:0;transform:translateY(-3px)}40%{opacity:1}to{opacity:0;transform:translateY(9px)}}.marquee{z-index:2;border-block:1px solid var(--border);background:rgba(var(--accent-rgb),.05);margin:0 -2%;padding:22px 0;position:relative;overflow:hidden;transform:rotate(-1.2deg)}.marquee-track{width:max-content;animation:32s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-group{display:flex}.marquee span{letter-spacing:-.03em;white-space:nowrap;color:var(--text);align-items:center;gap:28px;padding-right:28px;font:700 clamp(22px,3vw,38px) Space Grotesk;display:flex}.marquee span:nth-child(2n){color:#0000;-webkit-text-stroke:1px var(--muted)}.marquee b{color:var(--accent);font-size:.6em}@keyframes marquee{to{transform:translate(-50%)}}.section{max-width:1360px;margin:0 auto;padding:120px 5%;scroll-margin-top:70px}.section-heading{max-width:780px;margin-bottom:50px}.eyebrow{align-items:center;gap:12px;display:inline-flex}.eyebrow i{background:var(--accent);width:30px;height:1px}.section-heading h2{letter-spacing:-.055em;margin:18px 0;font-size:clamp(38px,4.6vw,66px);line-height:1.06}.section-heading p{color:var(--muted);max-width:640px;font-size:15px;line-height:1.75}.glass{border:1px solid var(--border);background:linear-gradient(160deg,var(--glass-hi),transparent 40%),var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:24px}.muted{color:var(--muted)}.small{font-size:12px}.text-link{color:var(--accent);align-items:center;gap:10px;font-size:13px;font-weight:700;transition:gap .2s;display:inline-flex}.text-link:hover{gap:14px}.tilt{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;will-change:transform;transition:transform .4s cubic-bezier(.2,.8,.2,1),border-color .3s;position:relative}.tilt:hover{transition:transform 80ms linear,border-color .3s}.glare{border-radius:inherit;pointer-events:none;background:radial-gradient(500px circle at var(--mx) var(--my),rgba(var(--accent-rgb),.18),transparent 45%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.tilt:hover .glare{opacity:1}.about-grid{grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:26px;display:grid}.photo-card{background:linear-gradient(160deg,rgba(var(--accent-rgb),.4),#ffffff05 40%,rgba(var(--accent-rgb),.25));border-radius:30px;height:100%;min-height:520px;padding:14px}.photo-frame{border-radius:22px;height:100%;position:relative;overflow:hidden;transform:translateZ(30px)}.photo-frame img{object-fit:cover;object-position:50% 20%;filter:saturate(1.05);width:100%;height:100%;transition:transform 1s,filter .6s}.photo-card:hover .photo-frame img{transform:scale(1.06)}.photo-frame:after{content:"";background:linear-gradient(180deg,transparent 55%,#07040fd9),linear-gradient(120deg,rgba(var(--accent-rgb),.2),transparent 50%);mix-blend-mode:normal;position:absolute;inset:0}.photo-scan{background:linear-gradient(180deg,transparent,rgba(var(--accent-rgb),.25),transparent);z-index:2;mix-blend-mode:screen;height:30%;animation:4s linear infinite scan;position:absolute;left:0;right:0}@keyframes scan{0%{top:-30%}to{top:100%}}.photo-badge{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;z-index:3;background:#0f0a1e99;border:1px solid #ffffff1f;border-radius:16px;align-items:center;gap:12px;padding:14px 16px;display:flex;position:absolute;bottom:32px;left:32px;right:32px;transform:translateZ(60px)}.photo-badge strong{font:700 16px Space Grotesk;display:block}.photo-badge small{color:#c8bfdc;font-size:12px}.photo-orbit{color:#fff;z-index:3;border:1px dashed #ffffff80;border-radius:50%;place-items:center;width:64px;height:64px;animation:12s linear infinite spin;display:grid;position:absolute;top:30px;right:30px;transform:translateZ(80px)}.about-right{flex-direction:column;gap:20px;display:flex}.about-panel{padding:36px}.about-panel p{color:var(--muted);margin-top:16px;line-height:1.85}.about-panel strong{color:var(--text)}.about-panel .muted{font-size:13px}.about-actions{flex-wrap:wrap;gap:26px;margin-top:8px;display:flex}.stat-grid{flex:1;grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.stat-card{flex-direction:column;justify-content:space-between;gap:12px;height:100%;min-height:140px;padding:26px;display:flex}.stat-num{letter-spacing:-.07em;background:linear-gradient(120deg,var(--text),var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;font:700 clamp(44px,4.5vw,64px)/1 Space Grotesk}.stat-card small{letter-spacing:.15em;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700}.skills-layout{grid-template-columns:1fr 1fr;align-items:center;gap:40px;margin-bottom:40px;display:grid}.sphere-col{flex-direction:column;align-items:center;display:flex}.tag-sphere{aspect-ratio:1;width:100%;max-width:500px;position:relative}.sphere-core{background:radial-gradient(circle at 35% 30%,rgba(var(--accent-rgb),.5),rgba(var(--accent-rgb),.05) 60%,transparent 70%);filter:blur(10px);border-radius:50%;animation:4s ease-in-out infinite breathe;position:absolute;inset:25%}.tag{white-space:nowrap;background:var(--surface);border:1px solid var(--border);color:var(--text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);will-change:transform;pointer-events:auto;border-radius:99px;padding:7px 13px;font:600 14px Space Grotesk;transition:background .2s,color .2s;position:absolute;top:50%;left:50%}.tag:hover{background:var(--accent);color:#fff}.sphere-hint{letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-top:6px;font-size:11px}.levels{flex-direction:column;gap:22px;display:flex}.level-head{justify-content:space-between;margin-bottom:10px;font:600 14px Space Grotesk;display:flex}.level-head span:last-child{color:var(--accent);font-family:JetBrains Mono}.level-bar{background:var(--surface2);border:1px solid var(--border);border-radius:99px;height:8px;overflow:hidden}.level-bar i{border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent2));width:0;height:100%;box-shadow:0 0 14px rgba(var(--accent-rgb),.6);transition:width 1.6s cubic-bezier(.2,.8,.2,1) .2s;display:block;position:relative}.reveal.shown .level-bar i{width:var(--w)}.level-bar i:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80,#0000);animation:2.4s infinite sweep;position:absolute;inset:0}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skills-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.skill-card{height:100%;min-height:290px;padding:28px}.skill-card:hover,.service-card:hover{border-color:rgba(var(--accent-rgb),.6)}.skill-icon{background:var(--surface2);width:52px;height:52px;color:var(--accent);border:1px solid rgba(var(--accent-rgb),.25);border-radius:15px;place-items:center;transition:transform .4s;display:grid;transform:translateZ(40px)}.tilt:hover .skill-icon{transform:translateZ(50px)rotate(-8deg)scale(1.08)}.card-index{color:var(--muted);font:600 12px JetBrains Mono;position:absolute;top:34px;right:28px}.skill-card h3{letter-spacing:-.03em;margin:26px 0 18px;font-size:19px;transform:translateZ(25px)}.skill-tags{flex-wrap:wrap;gap:8px;display:flex}.skill-tags span{border:1px solid var(--border);color:var(--muted);background:rgba(var(--accent-rgb),.04);border-radius:8px;padding:7px 10px;font-size:11px}.services-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.service-card{flex-direction:column;height:100%;padding:30px;display:flex;overflow:hidden}.service-card:before{content:"";background:radial-gradient(circle,rgba(var(--accent-rgb),.25),transparent 70%);pointer-events:none;border-radius:50%;width:220px;height:220px;transition:transform .6s;position:absolute;inset:auto -40% -60% auto}.service-card:hover:before{transform:scale(1.6)}.service-top{justify-content:space-between;align-items:flex-start;display:flex}.service-top .card-index{position:static}.service-card h3{letter-spacing:-.03em;margin:26px 0 12px;font-size:21px}.service-card p{color:var(--muted);flex:1;font-size:14px;line-height:1.75}.service-link{color:var(--accent);letter-spacing:.06em;align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:700;display:inline-flex}.project-list{gap:26px;display:grid}.project-card{grid-template-columns:1.1fr 1fr;align-items:center;gap:45px;padding:24px;display:grid}.project-card.flip .project-art{order:2}.project-art{background:radial-gradient(circle at 70% 30%,rgba(var(--accent-rgb),.5),#140c2de6 60%);cursor:pointer;border:1px solid var(--border);border-radius:18px;place-items:center;height:360px;display:grid;overflow:hidden}.project-num{letter-spacing:-.08em;color:#0000;-webkit-text-stroke:1px #ffffff40;pointer-events:none;font:700 90px Space Grotesk;position:absolute;bottom:6px;right:18px;transform:translateZ(40px)}.browser{background:#151129;border:1px solid #ffffff2e;border-radius:12px;width:82%;height:76%;transition:transform .5s;overflow:hidden;transform:translateZ(50px);box-shadow:0 30px 70px #09031599}.project-art:hover .browser{transform:translateZ(70px)scale(1.03)}.browser-top{background:#211a36;align-items:center;gap:6px;height:30px;padding:0 12px;display:flex}.browser-top i{background:#ff5f57;border-radius:50%;width:8px;height:8px}.browser-top i:nth-child(2){background:#febc2e}.browser-top i:nth-child(3){background:#28c840}.browser-top span{color:#baa8df;white-space:nowrap;text-overflow:ellipsis;background:#ffffff0f;border-radius:6px;flex:1;margin-left:12px;padding:3px 10px;font:500 10px JetBrains Mono;overflow:hidden}.browser-body{height:calc(100% - 30px);position:relative;overflow:hidden}.browser-body img{object-fit:cover;object-position:top;z-index:2;width:100%;height:100%;transition:object-position 3s;position:absolute;inset:0}.project-art:hover .browser-body img{object-position:bottom}.browser-fallback{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:10px;display:flex;position:absolute;inset:0}.browser-spark{color:#d7c6ff;font-size:32px}.browser-fallback strong{color:#fff;font:700 clamp(16px,2vw,26px) Space Grotesk}.browser-fallback small{color:#c9b3ef}.project-info{padding:10px 20px}.project-info h3{letter-spacing:-.045em;margin:16px 0;font-size:clamp(30px,3vw,42px)}.project-info p{color:var(--muted);max-width:470px;line-height:1.8}.project-info .skill-tags{margin:20px 0 28px}.project-actions{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.modal-backdrop,.palette-backdrop{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05020ca6;place-items:center;padding:20px;animation:.25s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--surface-solid);border:1px solid var(--border);border-radius:26px;grid-template-columns:1.1fr 1fr;width:min(1000px,100%);max-height:90vh;animation:.3s pop;display:grid;position:relative;overflow:auto}.modal-close{z-index:3;position:absolute;top:16px;right:16px}.modal-art{background:radial-gradient(circle at 60% 30%,rgba(var(--accent-rgb),.5),#120b26 65%);place-items:center;min-height:380px;padding:30px;display:grid}.modal-art .browser{width:100%;height:300px;transform:none}.modal-info{flex-direction:column;gap:14px;padding:40px 34px;display:flex}.modal-info h3{letter-spacing:-.04em;margin:0;font-size:36px}.modal-info p{color:var(--muted);margin:0;line-height:1.75}.modal-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0;display:grid}.modal-grid div{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:12px;display:flex}.modal-grid small{letter-spacing:.15em;color:var(--muted);font-size:9px;font-weight:700}.modal-grid strong{align-items:center;gap:6px;font-size:13px;display:flex}.modal-info .button{align-self:flex-start;margin-top:8px}.timeline{max-width:900px;padding-left:50px;position:relative}.timeline-line{background:var(--border);border-radius:2px;width:2px;position:absolute;top:0;bottom:0;left:12px;overflow:hidden}.timeline-line i{background:linear-gradient(var(--accent),var(--accent2));transform-origin:top;box-shadow:0 0 12px var(--accent);position:absolute;inset:0}.timeline-item{padding-bottom:26px;position:relative}.timeline-dot{background:var(--bg);border:2px solid var(--border);z-index:1;border-radius:50%;width:18px;height:18px;transition:all .4s;position:absolute;top:30px;left:-46px}.timeline-item.lit .timeline-dot{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 6px rgba(var(--accent-rgb),.18),0 0 20px var(--accent)}.timeline-card{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;padding:28px 30px}.timeline-item.lit .timeline-card{border-color:rgba(var(--accent-rgb),.35)}.timeline-card h3{letter-spacing:-.03em;margin:12px 0 10px;font-size:24px}.timeline-card p{color:var(--muted);margin:0;line-height:1.75}.terminal{border:1px solid var(--border);max-width:960px;box-shadow:0 40px 90px #00000073,0 0 0 1px rgba(var(--accent-rgb),.1),0 0 60px rgba(var(--accent-rgb),.12);color:#d9d1ef;cursor:text;background:#0b0716;border-radius:18px;font:14px/1.7 JetBrains Mono,monospace;overflow:hidden}.term-top{background:#16102a;border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;height:40px;padding:0 16px;display:flex}.term-top i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.term-top i:nth-child(2){background:#febc2e}.term-top i:nth-child(3){background:#28c840}.term-top span{color:#8f86a8;margin-left:auto;margin-right:auto;font-size:12px}.term-body{height:380px;padding:18px 20px;overflow-y:auto}.tl{white-space:pre-wrap;word-break:break-word}.tl.sys{color:#8f86a8}.tl.cmd{color:#fff;margin-top:8px}.tl.out{color:#cfc4ee}.prompt{color:var(--accent);font-weight:600}.input-line{align-items:center;margin-top:8px;display:flex}.input-line input{color:#fff;font:inherit;caret-color:var(--accent);background:0 0;border:0;outline:none;flex:1}.term-quick{background:#110b20;border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:8px;padding:12px 16px;display:flex}.term-quick button{color:#cfc4ee;border:1px solid #ffffff1a;border-radius:8px;padding:6px 12px;font:12px JetBrains Mono}.term-quick button:hover{border-color:var(--accent);color:#fff;background:rgba(var(--accent-rgb),.15)}.contact-grid{grid-template-columns:1fr 1.05fr;gap:45px;display:grid}.contact-info{padding:10px 0}.email-link{letter-spacing:-.05em;overflow-wrap:anywhere;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;align-items:center;gap:12px;width:fit-content;margin:20px 0 30px;padding-bottom:4px;font:700 clamp(24px,3vw,40px) Space Grotesk,sans-serif;transition:background-size .4s;display:flex}.email-link:hover{color:var(--accent);background-size:100% 2px}.contact-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.contact-chip{text-align:left;border-radius:16px;align-items:center;gap:14px;padding:18px;transition:border-color .2s,transform .2s;display:flex}.contact-chip:hover{border-color:var(--accent);transform:translateY(-3px)}.contact-chip svg{color:var(--accent);flex:none}.contact-chip small{letter-spacing:.16em;color:var(--muted);margin-bottom:3px;font-size:9px;font-weight:700;display:block}.contact-chip span{font-size:13px;font-weight:600}.form-note{max-width:400px;color:var(--muted);margin-top:30px;font-size:12px;line-height:1.8}.contact-form{flex-direction:column;gap:20px;padding:36px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form label{flex-direction:column;gap:10px;font-size:12px;font-weight:700;display:flex}.contact-form label>span{justify-content:space-between;display:flex}.contact-form label em{color:var(--muted);font-family:JetBrains Mono;font-style:normal;font-weight:500}.contact-form input,.contact-form textarea{border:1px solid var(--border);background:rgba(var(--accent-rgb),.04);color:var(--text);resize:vertical;border-radius:12px;outline:none;padding:15px;transition:border-color .2s,box-shadow .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.15)}.topic-pills{flex-wrap:wrap;gap:8px;display:flex}.topic-pills button{border:1px solid var(--border);color:var(--muted);border-radius:99px;padding:9px 14px;font-size:12px;font-weight:600;transition:all .2s}.topic-pills button.on,.topic-pills button:hover{background:rgba(var(--accent-rgb),.15);border-color:var(--accent);color:var(--text)}.contact-form .magnetic{align-self:flex-start}.footer{border-top:1px solid var(--border);max-width:1360px;margin:auto;padding:50px 5% 36px;overflow:hidden}.footer-big{letter-spacing:-.07em;white-space:nowrap;opacity:.95;margin-bottom:30px;font:700 clamp(50px,11vw,170px)/.9 Space Grotesk}.footer-row{letter-spacing:.14em;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:20px;font-size:10px;font-weight:700;display:flex}.footer-row a:hover{color:var(--accent)}.palette-backdrop{place-items:start center;padding-top:14vh}.palette{background:var(--surface-solid);border:1px solid var(--border);border-radius:18px;width:min(600px,100%);animation:.2s pop;overflow:hidden;box-shadow:0 40px 100px #00000080}.palette-search{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:12px;padding:16px 18px;display:flex}.palette-search input{color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:15px}.palette-list{max-height:380px;padding:8px;overflow:auto}.palette-group{letter-spacing:.16em;color:var(--muted);padding:12px 12px 6px;font-size:10px;font-weight:700}.palette-item{text-align:left;width:100%;color:var(--text);border-radius:10px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;display:flex}.palette-item svg{color:var(--muted)}.palette-item.active{background:rgba(var(--accent-rgb),.15)}.palette-item.active svg{color:var(--accent)}.palette-item .enter{margin-left:auto}.palette-empty{text-align:center;color:var(--muted);padding:30px}.toast{opacity:0;z-index:600;background:var(--surface-solid);border:1px solid rgba(var(--accent-rgb),.5);pointer-events:none;border-radius:12px;padding:13px 20px;font-size:13px;font-weight:600;transition:all .35s;position:fixed;bottom:30px;left:50%;transform:translate(-50%,30px);box-shadow:0 20px 50px #0006}.toast.show{opacity:1;transform:translate(-50%)}.reveal{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1);transform:translateY(30px)}.reveal.shown{opacity:1;transform:none}.brand-logo-img{object-fit:cover;border:1px solid rgba(var(--accent-rgb),.5);width:42px;height:42px;box-shadow:0 4px 16px rgba(var(--accent-rgb),.25);border-radius:12px;transition:transform .35s}.brand:hover .brand-logo-img{transform:rotate(-8deg)scale(1.06)}.hero-socials{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.social-pill{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:99px;align-items:center;gap:8px;padding:9px 14px;font:600 12px Space Grotesk;transition:all .22s;display:inline-flex}.social-pill:hover{color:var(--text);border-color:var(--accent);transform:translateY(-2px)}.social-pill svg{color:var(--accent)}.social-pill.whatsapp-pill svg{color:#25d366}.social-pill.leocer-pill img{object-fit:cover;border-radius:50%;width:18px;height:18px}.hero-photo-Strip{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:5;border-radius:14px;align-items:center;gap:6px;padding:5px;display:flex;position:absolute;top:14px;right:12%}.strip-nav{width:26px;height:34px;color:var(--muted);border-radius:8px;place-items:center;transition:all .2s;display:grid}.strip-nav:hover{color:var(--text);background:rgba(var(--accent-rgb),.18)}.hero-thumb{opacity:.65;border:2px solid #0000;border-radius:9px;width:34px;height:34px;transition:all .2s;overflow:hidden}.hero-thumb img{object-fit:cover;object-position:50% 18%;width:100%;height:100%}.hero-thumb:hover{opacity:1;transform:scale(1.06)}.hero-thumb.on{opacity:1;border-color:var(--accent);box-shadow:0 0 12px rgba(var(--accent-rgb),.5)}.orbit-arrow{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:42px;height:42px;color:var(--text);z-index:6;border-radius:50%;place-items:center;transition:transform .22s,border-color .22s,background .22s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 12px 30px #00000059}.orbit-arrow.left{left:10px}.orbit-arrow.right{right:10px}.orbit-arrow:hover{border-color:var(--accent);background:rgba(var(--accent-rgb),.22);transform:translateY(-50%)scale(1.1)}.orbit3d-stage{--orbit-r:205px;perspective:1300px;-webkit-user-select:none;user-select:none;touch-action:pan-y;place-items:center;display:grid;position:absolute;inset:0;overflow:visible}.orbit3d-ring{border:1px dashed rgba(var(--accent-rgb),.32);pointer-events:none;transform-style:preserve-3d;border-radius:50%;position:absolute}.orbit3d-ring.r1{width:82%;height:44%;animation:26s linear infinite orbitSpin1;transform:rotateX(72deg)rotateY(-8deg)}.orbit3d-ring.r2{border-color:#5ec8ff4d;width:68%;height:37%;animation:19s linear infinite reverse orbitSpin2;transform:rotateX(68deg)rotateY(16deg)}.orbit3d-ring.r3{border:1px solid rgba(var(--accent-rgb),.2);width:54%;height:29%;animation:34s linear infinite orbitSpin1;transform:rotateX(75deg)}@keyframes orbitSpin1{to{transform:rotateX(72deg)rotateY(-8deg)rotate(360deg)}}@keyframes orbitSpin2{to{transform:rotateX(68deg)rotateY(16deg)rotate(360deg)}}.orbit3d-node{background:var(--accent);width:8px;height:8px;box-shadow:0 0 14px var(--accent);pointer-events:none;border-radius:50%;animation:12s linear infinite orbitNode;position:absolute}.orbit3d-node.n1{animation-delay:0s;top:24%;left:20%}.orbit3d-node.n2{background:#3ff0a8;animation-delay:-4s;bottom:26%;right:18%;box-shadow:0 0 14px #3ff0a8}.orbit3d-node.n3{background:var(--accent2);box-shadow:0 0 14px var(--accent2);animation-delay:-8s;top:30%;right:22%}@keyframes orbitNode{0%{transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{transform:scale(1)}}.orbit3d-carousel{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;place-items:center;transition:transform .65s cubic-bezier(.2,.8,.2,1);display:grid;position:relative}.orbit3d-card{aspect-ratio:3/4.15;background:linear-gradient(155deg,rgba(var(--accent-rgb),.65),#120c23f0 55%,#5ec8ff80);cursor:pointer;width:clamp(205px,22vw,270px);transform-style:preserve-3d;border:1px solid #ffffff3d;border-radius:24px;padding:8px;transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .45s,border-color .35s,box-shadow .45s;position:absolute;box-shadow:0 24px 60px #04020ca6}.orbit3d-card.is-front{opacity:1;border-color:var(--accent);box-shadow:0 34px 85px #000000bf,0 0 45px rgba(var(--accent-rgb),.45)}.orbit3d-card.is-side{opacity:.65}.orbit3d-card.is-side:hover{opacity:.95;border-color:rgba(var(--accent-rgb),.75);transform:translateY(-4px)}.orbit3d-card-inner{background:#120b24;border-radius:18px;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.orbit3d-card-inner img{object-fit:cover;object-position:50% 16%;pointer-events:none;width:100%;height:100%;display:block}.orbit3d-corner{border:2px solid var(--accent);pointer-events:none;z-index:3;opacity:.85;width:12px;height:12px;position:absolute}.orbit3d-corner.tl{border-bottom:0;border-right:0;top:8px;left:8px}.orbit3d-corner.tr{border-bottom:0;border-left:0;top:8px;right:8px}.orbit3d-corner.bl{border-top:0;border-right:0;bottom:8px;left:8px}.orbit3d-corner.br{border-top:0;border-left:0;bottom:8px;right:8px}.orbit3d-scan{pointer-events:none;z-index:1;background:linear-gradient(#0000 56%,#080412eb);position:absolute;inset:0}.orbit3d-beam{background:linear-gradient(90deg,transparent,var(--accent2),transparent);height:4px;box-shadow:0 0 10px var(--accent2);pointer-events:none;z-index:2;animation:3.6s ease-in-out infinite scanBeam;position:absolute;left:0;right:0}@keyframes scanBeam{0%{opacity:0;top:0%}20%{opacity:1}80%{opacity:1}to{opacity:0;top:100%}}.orbit3d-caption{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;z-index:3;background:#0c0718d1;border:1px solid #ffffff29;border-radius:12px;justify-content:space-between;align-items:center;padding:8px 12px;font:700 12px Space Grotesk;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.orbit3d-caption-left{align-items:center;gap:7px;min-width:0;display:flex}.orbit3d-num{color:var(--accent);background:rgba(var(--accent-rgb),.2);border-radius:5px;padding:2px 5px;font:700 10px JetBrains Mono}.orbit3d-title{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.orbit3d-status-pill{letter-spacing:.08em;color:#3ff0a8;background:#3ff0a826;border-radius:4px;padding:2px 6px;font:700 9px JetBrains Mono}.orbit3d-pedestal{pointer-events:none;width:64%;height:32px;transform-style:preserve-3d;place-items:center;display:grid;position:absolute;bottom:10%}.pedestal-disc{border-radius:50%;position:absolute}.pedestal-disc.d1{background:radial-gradient(ellipse at center,rgba(var(--accent-rgb),.42) 0%,#5ec8ff29 48%,transparent 72%);width:100%;height:100%}.pedestal-disc.d2{border:1px dashed rgba(var(--accent-rgb),.45);width:68%;height:68%;transform:rotateX(75deg)}.pedestal-emitter{background:var(--accent2);width:14px;height:6px;box-shadow:0 0 20px 4px var(--accent2);border-radius:50%}.photo-badge-text{flex:1;min-width:0}.photo-badge-nav{gap:6px;display:flex}.photo-badge-nav button{color:#fff;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:9px;place-items:center;width:32px;height:32px;transition:all .2s;display:grid}.photo-badge-nav button:hover{background:var(--accent);border-color:var(--accent)}.photo-gallery-col{flex-direction:column;gap:14px;height:100%;display:flex}.photo-gallery-col .photo-card{flex:1;min-height:460px}.photo-thumbs{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.photo-thumb-btn{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:14px;flex-direction:column;gap:6px;padding:6px;transition:all .22s;display:flex}.photo-thumb-btn img{object-fit:cover;object-position:50% 20%;border-radius:9px;width:100%;height:68px}.photo-thumb-btn span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font:600 10px Space Grotesk;overflow:hidden}.photo-thumb-btn:hover{border-color:rgba(var(--accent-rgb),.5);transform:translateY(-2px)}.photo-thumb-btn.active{border-color:var(--accent);background:rgba(var(--accent-rgb),.14);box-shadow:0 10px 25px rgba(var(--accent-rgb),.2)}.photo-thumb-btn.active span{color:var(--text)}.lang-strip{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 12px;padding-top:14px;display:flex}.lang-strip small{letter-spacing:.15em;color:var(--muted);margin-right:4px;font:700 10px JetBrains Mono}.lang-strip span{background:rgba(var(--accent-rgb),.1);border:1px solid var(--border);border-radius:99px;padding:5px 10px;font-size:11px;font-weight:600}.leocer-card{grid-template-columns:76px 1fr auto;align-items:center;gap:20px;padding:24px 28px;display:grid}.leocer-card-logo{object-fit:cover;border:1px solid #f0b42973;border-radius:18px;width:76px;height:76px;box-shadow:0 10px 30px #00000059}.leocer-card-body h3{letter-spacing:-.03em;margin:6px 0;font-size:20px}.leocer-card-body p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.65}.systems-wrap{flex-direction:column;gap:28px;margin-bottom:55px;display:flex}.stack-explorer{grid-template-columns:.92fr 1.08fr;align-items:stretch;gap:24px;display:grid}.stack-visual{flex-direction:column;justify-content:center;gap:12px;display:flex}.stack-header-tag{letter-spacing:.16em;color:var(--muted);align-items:center;gap:8px;margin-bottom:4px;font:700 10px JetBrains Mono;display:inline-flex}.stack-plate{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:18px;justify-content:space-between;align-items:center;padding:18px 22px;transition:transform .28s,border-color .28s,background .28s,box-shadow .28s;display:flex}.stack-plate:hover{border-color:rgba(var(--accent-rgb),.45);transform:translate(6px)}.stack-plate.active{border-color:var(--accent);background:linear-gradient(120deg,rgba(var(--accent-rgb),.18),var(--surface));box-shadow:0 16px 40px rgba(var(--accent-rgb),.2);transform:translate(12px)}.plate-left{align-items:center;gap:14px;display:flex}.plate-icon{background:var(--surface2);width:42px;height:42px;color:var(--accent);border:1px solid rgba(var(--accent-rgb),.3);border-radius:12px;place-items:center;display:grid}.plate-left small{letter-spacing:.14em;color:var(--accent);margin-bottom:3px;font:700 10px JetBrains Mono;display:block}.plate-left strong{color:var(--text);font:700 15px Space Grotesk}.plate-dot{border:2px solid var(--muted);border-radius:50%;width:10px;height:10px;transition:all .25s}.stack-plate.active .plate-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 12px var(--accent)}.stack-detail{flex-direction:column;justify-content:space-between;gap:18px;padding:34px;display:flex}.stack-detail-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.stack-detail h3{letter-spacing:-.04em;margin:0;font-size:clamp(24px,2.5vw,32px)}.stack-detail p{color:var(--muted);margin:0;line-height:1.8}.stack-metrics{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stack-metric{background:rgba(var(--accent-rgb),.06);border:1px solid var(--border);border-radius:14px;padding:14px}.stack-metric small{letter-spacing:.15em;color:var(--muted);text-transform:uppercase;margin-bottom:5px;font:700 9px JetBrains Mono;display:block}.stack-metric strong{color:var(--text);font:700 13px Space Grotesk}.telemetry-board{padding:30px}.telemetry-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.telemetry-head .small-label{align-items:center;gap:7px;display:inline-flex}.telemetry-head h3{letter-spacing:-.03em;margin:6px 0 0;font-size:24px}.diag-btn .spin{animation:1s linear infinite spin}.telemetry-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.telemetry-card{border:1px solid var(--border);background:rgba(var(--accent-rgb),.04);border-radius:18px;flex-direction:column;gap:10px;padding:20px;transition:border-color .25s,box-shadow .25s,transform .25s;display:flex}.telemetry-card.scanning{border-color:var(--accent);box-shadow:0 0 28px rgba(var(--accent-rgb),.35);transform:translateY(-4px)}.tel-top{letter-spacing:.12em;justify-content:space-between;align-items:center;font:700 10px JetBrains Mono;display:flex}.tel-status{color:#4bd9ac;align-items:center;gap:7px;display:inline-flex}.tel-ms{color:var(--accent)}.tel-name{justify-content:space-between;align-items:center;gap:8px;display:flex}.tel-name strong{overflow-wrap:anywhere;font:700 15px Space Grotesk}.tel-name a{color:var(--muted)}.tel-name a:hover{color:var(--accent)}.tel-role{color:var(--muted);font-size:12px}.tel-bar{background:#ffffff12;border-radius:99px;height:5px;margin:4px 0;overflow:hidden}.tel-bar i{background:linear-gradient(90deg,#4bd9ac,var(--accent));height:100%;transition:width .4s;display:block}.tel-foot{color:var(--muted);border-top:1px solid var(--border);justify-content:space-between;gap:8px;padding-top:6px;font-size:11px;display:flex}.tel-foot span{align-items:center;gap:5px;display:inline-flex}.tel-foot svg{color:var(--accent)}.services-subhead{margin:10px 0 22px}.services-subhead h3{letter-spacing:-.035em;margin:8px 0 0;font-size:28px}.project-filters{flex-wrap:wrap;gap:10px;margin-bottom:28px;display:flex}.filter-pill{letter-spacing:.06em;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:99px;padding:10px 18px;font:700 12px Space Grotesk;transition:all .2s}.filter-pill:hover{color:var(--text);border-color:rgba(var(--accent-rgb),.5)}.filter-pill.on{background:linear-gradient(120deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 8px 25px rgba(var(--accent-rgb),.35);border-color:#0000}.proj-mini-list{flex-direction:column;gap:7px;margin:16px 0 0;padding:0;list-style:none;display:flex}.proj-mini-list li{color:var(--text);align-items:center;gap:8px;font-size:13px;display:flex}.proj-mini-list svg{color:var(--accent);flex:none}.browser-logo{object-fit:cover;border:1px solid #ffffff40;border-radius:16px;width:64px;height:64px}.device-toggle{gap:8px;margin-bottom:14px;display:flex}.device-toggle button{color:#d7c6ff;background:#ffffff14;border:1px solid #ffffff24;border-radius:99px;align-items:center;gap:6px;padding:7px 13px;font:600 11px Space Grotesk;display:inline-flex}.device-toggle button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-art .browser.is-mobile{border-width:3px;border-radius:24px;width:230px;height:340px}.deliverables{background:rgba(var(--accent-rgb),.06);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.deliverables ul{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.deliverables li{color:var(--text);align-items:flex-start;gap:8px;font-size:13px;display:flex}.deliverables svg{color:var(--accent);flex:none;margin-top:2px}.timeline-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.current-pill{padding:5px 11px;font-size:9px}.company-at{color:var(--accent);font-weight:600}.timeline-list{color:var(--muted);flex-direction:column;gap:6px;margin:12px 0 0;padding-left:18px;line-height:1.75;display:flex}.cred-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.cert-card{flex-direction:column;gap:10px;padding:26px;display:flex}.cert-top{justify-content:space-between;align-items:center;display:flex}.cert-top .card-index{font-size:10px;position:static}.cert-badge{background:var(--surface2);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.3);border-radius:11px;align-items:center;gap:8px;padding:8px 13px;font:700 13px JetBrains Mono;display:inline-flex}.cert-card h3{letter-spacing:-.03em;margin:8px 0 2px;font-size:19px}.cert-org{color:var(--accent);font:600 12px Space Grotesk}.cert-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.65}.edu-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.edu-card{align-items:center;gap:18px;padding:24px 26px;display:flex}.edu-card h3{letter-spacing:-.02em;margin:5px 0 4px;font-size:18px}.edu-card p{color:var(--muted);margin:0;font-size:13px}.form-submit-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.whatsapp-btn{border-color:#25d36666!important}.whatsapp-btn:hover{background:#25d3661f!important;border-color:#25d366!important}.wa-float{color:#fff;z-index:90;background:linear-gradient(135deg,#25d366,#128c7e);border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .25s;display:grid;position:fixed;bottom:88px;right:26px;box-shadow:0 12px 30px #25d36666}.wa-float:hover{transform:translateY(-4px)scale(1.06)}.resume-modal{background:var(--surface-solid);border:1px solid var(--border);border-radius:24px;width:min(940px,100%);max-height:92vh;animation:.25s pop;overflow:auto;box-shadow:0 40px 100px #0009}.resume-toolbar{z-index:5;background:var(--surface-solid);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex;position:sticky;top:0}.resume-toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.small-btn{border-radius:10px;padding:10px 16px;font-size:12px}.resume-sheet{flex-direction:column;gap:24px;padding:36px 40px;display:flex}.cv-head{border-bottom:1px solid var(--border);grid-template-columns:88px 1fr 72px;align-items:center;gap:22px;padding-bottom:22px;display:grid}.cv-photo{object-fit:cover;object-position:50% 15%;border:2px solid var(--accent);border-radius:14px;width:88px;height:108px}.cv-logo{object-fit:cover;border:1px solid var(--border);border-radius:14px;width:72px;height:72px}.cv-title-block h1{letter-spacing:-.04em;margin:0 0 6px;font-size:32px}.cv-headline{color:var(--accent);margin:0 0 12px;font:600 14px Space Grotesk}.cv-contacts{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.cv-contacts span{align-items:center;gap:6px;display:inline-flex}.cv-section h2{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin:0 0 12px;font-size:15px;display:flex}.cv-section p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.75}.cv-exp-list{flex-direction:column;gap:14px;display:flex}.cv-exp-item{background:rgba(var(--accent-rgb),.04);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.cv-exp-top{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.cv-exp-top strong span{color:var(--accent)}.cv-exp-top small{color:var(--muted);font:600 11px JetBrains Mono}.cv-exp-item ul{color:var(--muted);margin:6px 0 0;padding-left:18px;font-size:13px;line-height:1.65}.cv-skills-grid,.cv-proj-grid,.cv-two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cv-skill-box,.cv-proj-item{border:1px solid var(--border);background:rgba(var(--accent-rgb),.03);border-radius:12px;padding:12px 14px}.cv-skill-box strong,.cv-proj-item strong{margin-bottom:4px;font-size:13.5px;display:block}.cv-proj-item strong small{color:var(--accent);font-weight:600}.cv-compact-list{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.8}.cv-compact-list strong{color:var(--text)}.sandbox{border:1px solid rgba(var(--accent-rgb),.3);margin-bottom:34px;padding:28px}.sandbox-top{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-bottom:18px;display:flex}.sandbox-tabs{flex-wrap:wrap;gap:8px;display:flex}.sandbox-tabs button{background:rgba(var(--accent-rgb),.06);border:1px solid var(--border);color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font:700 12px Space Grotesk;transition:all .22s;display:inline-flex}.sandbox-tabs button:hover{color:var(--text);border-color:rgba(var(--accent-rgb),.45)}.sandbox-tabs button.on{background:linear-gradient(120deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 10px 25px rgba(var(--accent-rgb),.3);border-color:#0000}.sandbox-badge{letter-spacing:.14em;color:var(--accent);background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.3);border-radius:99px;align-items:center;gap:6px;padding:7px 12px;font:700 10px JetBrains Mono;display:inline-flex}.sandbox-body{flex-direction:column;gap:18px;padding-top:22px;display:flex}.sandbox-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sandbox-controls h3{letter-spacing:-.03em;margin:5px 0 0;font:700 22px Space Grotesk}.sandbox-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hall-pills{flex-wrap:wrap;gap:6px;display:flex}.hall-pills button{border:1px solid var(--border);color:var(--muted);background:var(--surface);border-radius:9px;padding:8px 12px;font:600 11px Space Grotesk}.hall-pills button.on{border-color:var(--accent);color:var(--text);background:rgba(var(--accent-rgb),.16)}.sandbox-table{flex-direction:column;gap:10px;display:flex}.sandbox-row{background:rgba(var(--accent-rgb),.04);border:1px solid var(--border);border-radius:14px;grid-template-columns:95px 1.3fr 1fr auto;align-items:center;gap:14px;padding:14px 18px;display:grid}.row-id{color:var(--accent);font:700 12px JetBrains Mono}.row-main strong{font:700 14px Space Grotesk;display:block}.row-main small{color:var(--muted);font-size:12px}.row-date{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.status-pill{color:#4bd9ac;background:#4bd9ac1f;border:1px solid #4bd9ac66;border-radius:99px;align-items:center;gap:6px;padding:6px 12px;font:700 11px Space Grotesk;display:inline-flex}.net-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.net-node{background:rgba(var(--accent-rgb),.04);border:1px solid var(--border);text-align:left;border-radius:16px;flex-direction:column;gap:8px;padding:18px;transition:all .25s;display:flex}.net-node:hover{border-color:rgba(var(--accent-rgb),.5);transform:translateY(-2px)}.net-node.active{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);box-shadow:0 12px 30px rgba(var(--accent-rgb),.25)}.net-node-top{justify-content:space-between;align-items:center;display:flex}.net-node-top small{color:var(--accent);font:600 10px JetBrains Mono}.net-node strong{color:var(--text);font:700 14px Space Grotesk}.net-node span{color:var(--muted);font-size:11.5px}.net-inspector{background:rgba(var(--accent-rgb),.08);border:1px solid rgba(var(--accent-rgb),.3);border-radius:14px;padding:16px 20px}.net-inspector .small-label{align-items:center;gap:6px;display:inline-flex}.net-inspector p{color:var(--muted);margin:6px 0 0;font-size:13px}.net-inspector strong{color:var(--text)}.ai-fab{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;z-index:90;height:46px;box-shadow:0 12px 30px rgba(var(--accent-rgb),.45);border-radius:99px;align-items:center;gap:8px;padding:0 16px;font:700 12px Space Grotesk;transition:transform .25s;display:inline-flex;position:fixed;bottom:150px;right:26px}.ai-fab:hover{transform:translateY(-3px)scale(1.04)}.ai-panel{z-index:200;background:var(--surface-solid);border:1px solid rgba(var(--accent-rgb),.4);flex-direction:column;width:min(380px,92vw);animation:.25s pop;display:flex;position:fixed;bottom:206px;right:26px;overflow:hidden;box-shadow:0 30px 80px #0000008c}.ai-head{border-bottom:1px solid var(--border);background:rgba(var(--accent-rgb),.1);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.ai-head-left{align-items:center;gap:10px;display:flex}.ai-avatar{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.ai-head-left strong{font:700 14px Space Grotesk;display:block}.ai-head-left small{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:flex}.ai-messages{flex-direction:column;gap:10px;max-height:220px;padding:14px;display:flex;overflow-y:auto}.ai-msg{border-radius:13px;padding:10px 13px;font-size:12.5px;line-height:1.6}.ai-msg.ai{background:rgba(var(--accent-rgb),.1);border:1px solid var(--border);color:var(--text);align-self:flex-start}.ai-msg.user{background:var(--accent);color:#fff;align-self:flex-end}.ai-presets{flex-wrap:wrap;gap:6px;padding:0 14px 10px;display:flex}.ai-presets button{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:99px;padding:6px 10px;font:600 11px Space Grotesk}.ai-presets button:hover{border-color:var(--accent);color:var(--text)}.ai-quick-links{gap:8px;padding:0 14px 10px;display:flex}.ai-quick-links button,.ai-quick-links a{background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.3);color:var(--text);border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;font:700 11px Space Grotesk;display:inline-flex}.ai-input{border-top:1px solid var(--border);background:rgba(var(--accent-rgb),.04);gap:8px;padding:10px 14px;display:flex}.ai-input input{color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:13px}.ai-input button{background:var(--accent);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}@media (width<=1100px){.nav a{padding:8px;font-size:12px}.skills-grid,.cred-grid,.telemetry-grid,.net-grid,.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=960px){.mobile-menu{display:grid}.nav{background:var(--surface-solid);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:4px;padding:14px;display:none;position:absolute;top:78px;left:5%;right:5%;box-shadow:0 30px 60px #00000059}.nav.open{animation:.25s pop;display:flex}.nav a{padding:12px 14px;font-size:15px}.kbd-button{display:none}.hero{text-align:left;grid-template-columns:1fr;padding-top:20px}.hero-art{order:2;height:520px}.scroll-indicator{display:none}.about-grid,.skills-layout,.stack-explorer,.contact-grid,.project-card{grid-template-columns:1fr}.project-card.flip .project-art{order:0}.photo-card{max-width:520px;min-height:480px}.modal,.leocer-card{grid-template-columns:1fr}}@media (width<=640px){.header{height:72px}.header:before{inset:8px 2%}.hero-name{font-size:clamp(52px,16vw,80px)}.hero-art{height:430px}.orbit3d-stage{--orbit-r:130px}.orbit3d-card{width:180px}.chip{padding:8px 10px;font-size:10px}.c2{right:0}.section{padding:80px 5%}.skills-grid,.services-grid,.cred-grid,.edu-grid,.telemetry-grid,.stack-metrics,.contact-cards,.form-row,.cv-skills-grid,.cv-proj-grid,.cv-two-col,.net-grid,.sandbox-row{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.photo-thumbs{grid-template-columns:repeat(2,1fr)}.project-art{height:250px}.project-num{font-size:60px}.about-panel,.contact-form,.skill-card,.service-card,.stack-detail,.telemetry-board,.resume-sheet{padding:22px}.cv-head{text-align:center;grid-template-columns:1fr;justify-items:center}.term-body{height:320px;font-size:12px}.terminal{font-size:12px}.modal-grid{grid-template-columns:1fr}.to-top{bottom:16px;right:16px}.wa-float{bottom:78px;right:16px}.footer-row{flex-direction:column}.art-label{max-width:96vw;font-size:8px;overflow-x:auto}.tag{padding:5px 10px;font-size:12px}}@media print{body,.site{color:#111!important;background:#fff!important}.header,main,.footer,.wa-float,.ai-fab,.ai-panel,.to-top,.scroll-bar,.bg-fx,.cursor-dot,.cursor-ring,.no-print{display:none!important}.modal-backdrop{background:#fff!important;padding:0!important;position:static!important}.resume-modal{max-height:none!important;box-shadow:none!important;color:#111!important;background:#fff!important;border:0!important;overflow:visible!important}.resume-sheet{padding:0!important}.cv-section p,.cv-exp-item ul,.cv-compact-list,.cv-contacts{color:#333!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal,.hero-art,.hero-name .line>span{opacity:1;transform:none}}
