@import url(https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=JetBrains+Mono:wght@400;500&family=Syne:wght@600;700;800&display=swap);:root{--bg:#050706;--bg-elevated:#0a0f0c;--surface:hsla(0,0%,100%,.035);--surface-strong:hsla(0,0%,100%,.06);--border:rgba(110,231,183,.14);--border-strong:rgba(110,231,183,.32);--accent:#34d399;--accent-soft:#6ee7b7;--accent-deep:#059669;--accent-glow:rgba(52,211,153,.35);--text:#f3f7f4;--text-muted:#93a39a;--text-dim:#6b7a72;--danger:#f87171;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;--nav-h:104px;--max:1180px;--section-y:clamp(1.875rem,4vw,3rem);--section-content-gap:clamp(0.875rem,2vw,1.25rem);--font-display:"Syne",system-ui,sans-serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-soft:cubic-bezier(0.22,1,0.36,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:120px;scroll-padding-top:calc(var(--nav-h) + 16px)}body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#050706;background:var(--bg);color:#f3f7f4;color:var(--text);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);line-height:1.6;min-height:100vh}@supports (overflow:clip){body,html{overflow-x:clip}}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");content:"";inset:0;opacity:0;pointer-events:none;position:fixed;z-index:9998}html[data-motion=full] body:before{opacity:.03}#root{min-height:100vh;overflow-x:clip;position:relative}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}img{display:block;max-width:100%}ol,ul{list-style:none}::selection{background:rgba(52,211,153,.28);color:#fff}:focus-visible{outline:2px solid #34d399;outline:2px solid var(--accent);outline-offset:3px}.skip-link{background:#34d399;background:var(--accent);border-radius:999px;color:#04110a;font-weight:600;left:16px;padding:10px 16px;position:absolute;top:-60px;transition:top .2s cubic-bezier(.16,1,.3,1);transition:top .2s var(--ease-out);z-index:10000}.skip-link:focus{top:16px}.site-shell{isolation:isolate;position:relative}.container{margin-inline:auto;width:min(100% - 2.5rem,1180px);width:min(100% - 2.5rem,var(--max))}.section{padding:clamp(1.875rem,4vw,3rem) 0;padding:var(--section-y) 0;position:relative}.section-label{align-items:center;color:#6ee7b7;color:var(--accent-soft);display:inline-flex;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:.78rem;gap:.65rem;letter-spacing:.16em;margin-bottom:1rem;text-transform:uppercase}.section-label:before{background:#34d399;background:var(--accent);box-shadow:0 0 12px rgba(52,211,153,.35);box-shadow:0 0 12px var(--accent-glow);content:"";height:1px;-webkit-transform-origin:left center;transform-origin:left center;width:22px}.section-label--draw:before{-webkit-animation:labelDraw .9s cubic-bezier(.16,1,.3,1) both;animation:labelDraw .9s cubic-bezier(.16,1,.3,1) both;-webkit-animation:labelDraw .9s var(--ease-out) both;animation:labelDraw .9s var(--ease-out) both}@-webkit-keyframes labelDraw{0%{opacity:0;-webkit-transform:scaleX(0);transform:scaleX(0)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes labelDraw{0%{opacity:0;-webkit-transform:scaleX(0);transform:scaleX(0)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}.section-title{font-family:Syne,system-ui,sans-serif;font-family:var(--font-display);font-size:clamp(2.1rem,4.5vw,3.4rem);font-weight:700;letter-spacing:0;line-height:1.16;margin-bottom:1rem;overflow:visible;padding-bottom:.08em}.section-lead{color:#93a39a;color:var(--text-muted);font-size:clamp(1.02rem,1.5vw,1.15rem);line-height:1.7;max-width:42rem}.eyebrow{color:#6ee7b7;color:var(--accent-soft);font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}.btn{--btn-bg:var(--accent);--btn-color:#04110a;--btn-border:transparent;align-items:center;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;color:var(--btn-color);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.55rem;justify-content:center;letter-spacing:.01em;overflow:hidden;padding:.9rem 1.45rem;position:relative;transition:box-shadow .35s cubic-bezier(.16,1,.3,1),background .35s cubic-bezier(.16,1,.3,1),border-color .35s cubic-bezier(.16,1,.3,1),color .35s cubic-bezier(.16,1,.3,1),-webkit-transform .35s cubic-bezier(.16,1,.3,1);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1),background .35s cubic-bezier(.16,1,.3,1),border-color .35s cubic-bezier(.16,1,.3,1),color .35s cubic-bezier(.16,1,.3,1);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1),background .35s cubic-bezier(.16,1,.3,1),border-color .35s cubic-bezier(.16,1,.3,1),color .35s cubic-bezier(.16,1,.3,1),-webkit-transform .35s cubic-bezier(.16,1,.3,1);transition:box-shadow .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out),color .35s var(--ease-out),-webkit-transform .35s var(--ease-out);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out),color .35s var(--ease-out);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out),color .35s var(--ease-out),-webkit-transform .35s var(--ease-out)}.btn:after{background:linear-gradient(120deg,transparent 20%,hsla(0,0%,100%,.28) 45%,transparent 70%);content:"";inset:0;position:absolute;-webkit-transform:translateX(-120%);transform:translateX(-120%);transition:-webkit-transform .6s cubic-bezier(.16,1,.3,1);transition:transform .6s cubic-bezier(.16,1,.3,1);transition:transform .6s cubic-bezier(.16,1,.3,1),-webkit-transform .6s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .6s var(--ease-out);transition:transform .6s var(--ease-out);transition:transform .6s var(--ease-out),-webkit-transform .6s var(--ease-out)}.btn:hover{box-shadow:0 12px 36px rgba(52,211,153,.35);box-shadow:0 12px 36px var(--accent-glow);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.btn:hover:after{-webkit-transform:translateX(120%);transform:translateX(120%)}.btn:active{-webkit-transform:translateY(0);transform:translateY(0)}.btn-secondary{--btn-bg:transparent;--btn-color:var(--text);--btn-border:var(--border-strong)}.btn-secondary:hover{background:hsla(0,0%,100%,.06);background:var(--surface-strong);border-color:#34d399;border-color:var(--accent);box-shadow:0 10px 28px rgba(0,0,0,.35);color:#6ee7b7;color:var(--accent-soft)}.btn-ghost{--btn-bg:var(--surface);--btn-color:var(--text);--btn-border:var(--border)}.tag{align-items:center;background:rgba(52,211,153,.06);border-radius:999px;color:#6ee7b7;color:var(--accent-soft);display:inline-flex;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.02em;padding:.35rem .7rem}.glass-panel,.tag{border:1px solid rgba(110,231,183,.14);border:1px solid var(--border)}.glass-panel{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:linear-gradient(180deg,hsla(0,0%,100%,.045),hsla(0,0%,100%,.02));border-radius:18px;border-radius:var(--radius-md)}@media (pointer:fine){body.has-custom-cursor,body.has-custom-cursor *{cursor:none!important}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.contact__headline span,.section-label--draw:before{-webkit-animation:none!important;animation:none!important}.contact__headline span{background:linear-gradient(120deg,#fff,#6ee7b7 60%,#34d399);background-size:100% 100%}}html.is-motion-paused *,html.is-motion-paused :after,html.is-motion-paused :before{-webkit-animation-play-state:paused!important;animation-play-state:paused!important}html[data-motion=lite] .hero__ring,html[data-motion=lite] .hero__scan,html[data-motion=off] .hero__orb,html[data-motion=off] .hero__ring,html[data-motion=off] .hero__scan{display:none}@media (max-width:768px){.container{width:min(100% - 1.5rem,1180px);width:min(100% - 1.5rem,var(--max))}.section{padding:4rem 0}}.avatar-model{display:grid;flex-shrink:0;line-height:0;place-items:center;pointer-events:none}.avatar-model--framed{overflow:visible}.avatar-model__stage{display:block;height:100%;width:100%}.avatar-model__stage canvas{display:block;height:100%!important;width:100%!important}.logo{align-items:center;background:none;border:0;color:var(--text);cursor:pointer;display:inline-flex;font-family:var(--font-display);font-size:1.12rem;font-weight:700;gap:.65rem;letter-spacing:-.03em;line-height:1;padding:0;-webkit-user-select:none;user-select:none}.logo--with-avatar{align-items:flex-end;padding-top:calc(80px - .45em);padding-top:calc(var(--logo-avatar-size, 80px) - .45em)}.logo__row{gap:.65rem}.logo__row,.logo__word-stage{align-items:center;display:inline-flex}.logo__word-stage{isolation:isolate;position:relative}.logo__avatar{bottom:.55em;-webkit-filter:drop-shadow(0 12px 20px rgba(0,0,0,.48)) drop-shadow(0 0 18px rgba(52,211,153,.2));filter:drop-shadow(0 12px 20px rgba(0,0,0,.48)) drop-shadow(0 0 18px rgba(52,211,153,.2));left:50%;opacity:.98;pointer-events:none;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:0}.logo__mark{display:grid;flex-shrink:0;height:18px;place-items:center;position:relative;width:18px;z-index:2}.logo__core{background:var(--accent);border-radius:50%;box-shadow:0 0 10px var(--accent-glow),0 0 22px rgba(52,211,153,.35);height:8px;position:relative;transition:box-shadow .4s var(--ease-out),-webkit-transform .4s var(--ease-out);transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out);transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out),-webkit-transform .4s var(--ease-out);width:8px;z-index:2}.logo__ring{border:1.5px solid rgba(110,231,183,.55);border-radius:50%;inset:0;pointer-events:none;position:absolute}.logo__ring--inner{border-color:rgba(110,231,183,.35);inset:2px}.logo__ring--outer{border-color:rgba(52,211,153,.28);inset:-3px}.logo__spark{background:#fff;border-radius:50%;box-shadow:0 0 6px hsla(0,0%,100%,.55);height:3px;opacity:.7;position:absolute;right:2px;top:1px;width:3px;z-index:3}.logo__word{align-items:baseline;display:inline-flex;gap:0;position:relative;text-shadow:0 1px 0 rgba(5,7,6,.95),0 0 10px rgba(5,7,6,.72),0 0 18px rgba(5,7,6,.45);z-index:2}.logo__name{color:var(--text);transition:letter-spacing .35s var(--ease-out)}.logo__tld{color:var(--accent-soft)}@media (hover:hover) and (pointer:fine){html[data-motion=full] .logo:hover .logo__ring--inner{-webkit-animation:logoPulseInner 1.8s ease-in-out infinite;animation:logoPulseInner 1.8s ease-in-out infinite}html[data-motion=full] .logo:hover .logo__ring--outer{-webkit-animation:logoPulseOuter 1.8s ease-in-out infinite;animation:logoPulseOuter 1.8s ease-in-out infinite;border-color:rgba(110,231,183,.55)}html[data-motion=full] .logo:hover .logo__spark{-webkit-animation:logoSpark 2s ease-in-out infinite;animation:logoSpark 2s ease-in-out infinite}html[data-motion=full] .logo:hover .logo__tld{-webkit-animation:logoTldShift 2.4s ease-in-out infinite;animation:logoTldShift 2.4s ease-in-out infinite;background:linear-gradient(120deg,var(--accent-soft) 0,#34d399 40%,#a7f3d0 70%,var(--accent-soft) 100%);-webkit-background-clip:text;background-clip:text;background-size:200% 100%;color:transparent}}.logo:hover .logo__core{box-shadow:0 0 14px var(--accent-glow),0 0 28px rgba(52,211,153,.5);-webkit-transform:scale(1.12);transform:scale(1.12)}.logo:hover .logo__name{letter-spacing:-.01em}.logo:focus-visible{border-radius:8px;outline:2px solid var(--accent);outline-offset:6px}@-webkit-keyframes logoPulseInner{0%,to{opacity:.7;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(1.08);transform:scale(1.08)}}@keyframes logoPulseInner{0%,to{opacity:.7;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(1.08);transform:scale(1.08)}}@-webkit-keyframes logoPulseOuter{0%,to{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:.95;-webkit-transform:scale(1.18);transform:scale(1.18)}}@keyframes logoPulseOuter{0%,to{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:.95;-webkit-transform:scale(1.18);transform:scale(1.18)}}@-webkit-keyframes logoSpark{0%,to{opacity:.35;-webkit-transform:scale(.85);transform:scale(.85)}40%{opacity:1;-webkit-transform:scale(1.15);transform:scale(1.15)}70%{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}}@keyframes logoSpark{0%,to{opacity:.35;-webkit-transform:scale(.85);transform:scale(.85)}40%{opacity:1;-webkit-transform:scale(1.15);transform:scale(1.15)}70%{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes logoTldShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes logoTldShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@media (prefers-reduced-motion:reduce){.logo__ring--inner,.logo__ring--outer,.logo__spark,.logo__tld{-webkit-animation:none!important;animation:none!important}.logo__tld{background:none!important;-webkit-background-clip:unset!important;background-clip:initial!important;color:var(--accent-soft)!important}}.nav{align-items:center;border-bottom:1px solid transparent;display:flex;height:var(--nav-h);inset:0 0 auto;overflow:visible;position:fixed;transition:background .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out),-webkit-backdrop-filter .35s var(--ease-out);transition:background .35s var(--ease-out),backdrop-filter .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out);transition:background .35s var(--ease-out),backdrop-filter .35s var(--ease-out),border-color .35s var(--ease-out),box-shadow .35s var(--ease-out),-webkit-backdrop-filter .35s var(--ease-out);z-index:1100}.nav.is-scrolled{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(5,7,6,.72);border-bottom-color:var(--border);box-shadow:0 10px 40px rgba(0,0,0,.35)}.nav.is-open,.nav.is-open.is-scrolled{backdrop-filter:none;-webkit-backdrop-filter:none;background:#050706;border-bottom-color:var(--border);box-shadow:none;transition:none}.nav.is-open .nav__logo .avatar-model{display:none}.nav__inner{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:min(100% - 2.5rem,var(--max))}.nav__logo{position:relative;z-index:1}.nav__links{align-items:center;display:flex;gap:.35rem}.nav__link{background:none;border:0;border-radius:999px;color:var(--text-muted);cursor:pointer;font-size:.92rem;padding:.55rem .85rem;position:relative;transition:color .25s ease,background .25s ease}.nav__link:before{background:var(--accent);border-radius:999px;bottom:6px;box-shadow:0 0 0 transparent;content:"";height:2px;left:50%;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);transition:width .35s var(--ease-out),box-shadow .35s ease;width:0}.nav__link.is-active,.nav__link:hover{background:var(--surface);color:var(--text)}.nav__link.is-active:before,.nav__link:hover:before{box-shadow:0 0 10px var(--accent-glow);width:14px}.nav__link.is-active:after{display:none}.nav__resume{border:1px solid var(--border-strong);border-radius:999px;color:var(--accent-soft);font-size:.88rem;font-weight:600;margin-left:.4rem;padding:.55rem 1rem;transition:background .25s ease,border-color .25s ease,-webkit-transform .25s ease;transition:background .25s ease,border-color .25s ease,transform .25s ease;transition:background .25s ease,border-color .25s ease,transform .25s ease,-webkit-transform .25s ease}.nav__resume:hover{background:rgba(52,211,153,.1);border-color:var(--accent);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.nav__burger{align-items:center;background:#0c1210;border:1px solid var(--border);border-radius:12px;cursor:pointer;flex-direction:column;gap:5px;justify-content:center;position:relative;z-index:1101}.nav__burger,.nav__burger-spacer{display:none;height:44px;width:44px}.nav__burger span{background:var(--text);display:block;height:2px;width:18px}.nav__mobile{-webkit-overflow-scrolling:touch;background:#050706;inset:0;overflow-x:hidden;overflow-y:auto;padding:max(1.25rem,env(safe-area-inset-top,0px)) 1.5rem 2rem;position:fixed;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1200}.nav__mobile-top{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;min-height:52px}.nav__mobile-brand{background:none;border:0;cursor:pointer;padding-inline:0;padding-bottom:0}.nav__mobile-brand.logo--with-avatar{padding-top:calc(80px - .45em);padding-top:calc(var(--logo-avatar-size, 80px) - .45em)}.nav__close{background:#0c1210;border:1px solid var(--border-strong);border-radius:12px;cursor:pointer;flex-shrink:0;height:44px;position:relative;width:44px}.nav__close span{background:#fff;border-radius:2px;height:2px;left:50%;position:absolute;top:50%;width:18px}.nav__close span:first-child{-webkit-transform:translate(-50%,-50%) rotate(45deg);transform:translate(-50%,-50%) rotate(45deg)}.nav__close span:last-child{-webkit-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.nav__mobile-panel{display:flex;flex-direction:column;gap:.75rem;margin:0 auto;max-width:420px;position:relative;z-index:1}.nav__mobile-link{align-items:baseline;background:#0c1210;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;display:flex;font-family:var(--font-display);font-size:1.5rem;font-weight:600;gap:1rem;letter-spacing:-.03em;padding:1.1rem 1.2rem;text-align:left}.nav__mobile-link span{color:var(--accent-soft);font-family:var(--font-mono);font-size:.8rem}.nav__mobile-link.is-active{border-color:var(--border-strong);box-shadow:inset 0 0 0 1px rgba(52,211,153,.2)}@media (max-width:900px){.nav__links{display:none}.nav__burger,.nav__burger-spacer{display:inline-flex}}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:calc(var(--nav-h) + 2.5rem) 0 4rem;position:relative}.hero__orb{border-radius:50%;-webkit-filter:blur(60px);filter:blur(60px);pointer-events:none;position:absolute;z-index:0}.hero__orb--one{background:rgba(52,211,153,.18);height:420px;left:-8%;top:8%;width:420px}.hero__orb--two{background:rgba(45,212,191,.12);bottom:10%;height:360px;right:-6%;width:360px}.hero__scan{background:linear-gradient(180deg,transparent,rgba(52,211,153,.04) 50%,transparent);background-size:100% 220%;inset:0;opacity:.35}.hero:after,.hero:before,.hero__scan{pointer-events:none;position:absolute;z-index:0}.hero:after,.hero:before{aspect-ratio:1;background:radial-gradient(circle at 50% 50%,transparent 0 34%,rgba(110,231,183,.16) 34.4% 34.8%,transparent 35.2%),radial-gradient(circle at 50% 50%,transparent 0 53%,rgba(52,211,153,.12) 53.4% 53.8%,transparent 54.2%),radial-gradient(circle at 50% 50%,rgba(52,211,153,.08),transparent 58%);border:1px solid rgba(110,231,183,.13);border-radius:50%;bottom:3.4rem;content:"";-webkit-mask-image:radial-gradient(circle,#000 0 72%,transparent 86%);mask-image:radial-gradient(circle,#000 0 72%,transparent 86%);opacity:0;width:min(30vw,360px)}.hero:before{left:max(2rem,calc(50% - 42rem))}.hero:after{bottom:4.8rem;left:max(18rem,calc(50% - 23rem));opacity:0}html[data-motion=full] .hero__orb--one{-webkit-animation:floatOrb 16s ease-in-out infinite;animation:floatOrb 16s ease-in-out infinite}html[data-motion=full] .hero__orb--two{animation:floatOrb 18s ease-in-out infinite reverse}html[data-motion=full] .hero__scan{-webkit-animation:scan 12s linear infinite;animation:scan 12s linear infinite;opacity:.5}html[data-motion=full] .hero:after,html[data-motion=full] .hero:before{-webkit-animation:heroCircleDrift 10s ease-in-out infinite;animation:heroCircleDrift 10s ease-in-out infinite;opacity:.62}html[data-motion=full] .hero:after{-webkit-animation-delay:-3.5s;animation-delay:-3.5s;opacity:.44}.hero__grid{grid-gap:clamp(2rem,5vw,4.5rem);align-items:center;display:grid;gap:clamp(2rem,5vw,4.5rem);grid-template-columns:1.15fr .85fr;position:relative;z-index:1}.hero__copy{container-type:inline-size;min-width:0}.hero__title{margin:1rem 0 .85rem;max-width:100%;overflow:visible;width:100%}.hero__hello{color:var(--text-muted);display:block;font-family:var(--font-body);font-size:clamp(1rem,2vw,1.15rem);font-weight:500;letter-spacing:.02em;margin-bottom:.35rem}.hero__name{display:block;font-family:var(--font-display);font-size:clamp(1.7rem,12cqi,4.2rem);font-weight:800;letter-spacing:0;line-height:1.16;overflow:visible;padding-bottom:.08em;white-space:nowrap;width:100%}.hero__name-part{background:linear-gradient(120deg,#fff 10%,#a7f3d0 35%,#6ee7b7 50%,#34d399 70%,#fff 95%);-webkit-background-clip:text;background-clip:text;background-size:100% 100%;color:transparent;display:inline-block}html[data-motion=full] .hero__name-part{-webkit-animation:heroNameShift 10s ease-in-out infinite;animation:heroNameShift 10s ease-in-out infinite;background-size:220% 100%}.hero__role{font-family:var(--font-mono);font-size:clamp(.95rem,1.8vw,1.15rem);letter-spacing:.02em;margin-bottom:1.1rem;min-height:1.7em;overflow-wrap:anywhere}.hero__role,.hero__typed{color:var(--accent-soft);max-width:100%}.hero__typed{align-items:baseline;display:inline-flex;-webkit-filter:drop-shadow(0 0 14px rgba(52,211,153,.18));filter:drop-shadow(0 0 14px rgba(52,211,153,.18));min-width:0;position:relative}.hero__typed-chars{display:inline-block;overflow:hidden;white-space:nowrap;will-change:width}.hero__typed-char{color:var(--accent-soft);display:inline-block;will-change:transform,opacity}.hero__typed-caret{align-self:center;background:var(--accent-soft);border-radius:1px;box-shadow:none;display:inline-block;flex-shrink:0;height:1em;margin-left:.14rem;opacity:.9;width:1.5px}.hero__tagline{color:var(--text-muted);font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.7;margin-bottom:1.4rem;max-width:34rem}.hero__specialties{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.8rem}.hero__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:1.6rem}.hero__socials{display:flex;gap:.7rem}.hero__social{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:50%;color:var(--text-muted);display:inline-flex;font-size:1.05rem;height:42px;justify-content:center;transition:color .25s ease,border-color .25s ease,box-shadow .25s ease,-webkit-transform .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease,-webkit-transform .25s ease;width:42px}.hero__social:hover{border-color:var(--border-strong);box-shadow:0 10px 24px rgba(52,211,153,.15);color:var(--accent-soft);-webkit-transform:translateY(-3px);transform:translateY(-3px)}.hero__visual{align-items:flex-end;display:flex;flex-direction:column;gap:1rem;margin-left:auto;max-width:420px}.hero__frame,.hero__visual{position:relative;width:100%}.hero__frame{aspect-ratio:4/5;background:var(--bg-elevated);border:2px solid rgba(110,231,183,.85);border-radius:28px;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(52,211,153,.35),0 0 40px rgba(52,211,153,.28),inset 0 0 60px rgba(52,211,153,.05);overflow:hidden}.hero__frame-glow{background:radial-gradient(circle at 30% 20%,rgba(52,211,153,.28),transparent 45%);inset:-20%;position:absolute;z-index:0}.hero__frame-ring{border:1px solid rgba(110,231,183,.18);border-radius:50%;inset:10%;opacity:.45;pointer-events:none;position:absolute;z-index:0}html[data-motion=full] .hero__frame-glow{-webkit-animation:pulseGlow 8s ease-in-out infinite;animation:pulseGlow 8s ease-in-out infinite}html[data-motion=full] .hero__frame-ring{-webkit-animation:heroFrameRing 18s linear infinite;animation:heroFrameRing 18s linear infinite}html[data-motion=full] .hero__badge-dot{-webkit-animation:pulseDot 2.4s ease-in-out infinite;animation:pulseDot 2.4s ease-in-out infinite}html:not([data-motion=off]) .hero__scroll span:after{-webkit-animation:scrollDot 1.8s ease-in-out infinite;animation:scrollDot 1.8s ease-in-out infinite}.hero__frame img{-webkit-filter:saturate(1.05) contrast(1.05);filter:saturate(1.05) contrast(1.05);height:100%;object-fit:cover;object-position:center top;position:relative;width:100%;z-index:1}.hero__badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(5,7,6,.78);border:1px solid var(--border);border-radius:999px;bottom:1rem;color:var(--text);display:inline-flex;font-size:.82rem;gap:.55rem;left:1rem;padding:.65rem .9rem;position:absolute;z-index:2}.hero__badge-dot{background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px rgba(52,211,153,.2);height:8px;width:8px}.hero__code{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(5,12,9,.88);border:1px solid var(--border);border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.45);max-width:100%;padding:.95rem 1.1rem;position:relative;width:100%;z-index:2}.hero__code code{color:var(--accent-soft);font-family:var(--font-mono);font-size:.72rem;line-height:1.55;white-space:pre}.hero__scroll{align-items:center;background:none;border:0;bottom:1.4rem;color:var(--text-dim);cursor:pointer;display:inline-flex;flex-direction:column;font-size:.72rem;gap:.55rem;justify-content:center;left:50%;letter-spacing:.16em;position:absolute;text-transform:uppercase;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:2}.hero__scroll span{border:1px solid var(--border-strong);border-radius:999px;height:28px;position:relative;width:18px}.hero__scroll span:after{background:var(--accent);border-radius:999px;content:"";height:6px;left:50%;position:absolute;top:6px;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:3px}@media (min-width:981px){.hero__grid{align-items:start}.hero:after,.hero:before{opacity:.42}.hero:after{opacity:.28}}@-webkit-keyframes floatOrb{0%,to{-webkit-transform:translateZ(0);transform:translateZ(0)}50%{-webkit-transform:translate3d(24px,-18px,0);transform:translate3d(24px,-18px,0)}}@keyframes floatOrb{0%,to{-webkit-transform:translateZ(0);transform:translateZ(0)}50%{-webkit-transform:translate3d(24px,-18px,0);transform:translate3d(24px,-18px,0)}}@-webkit-keyframes scan{0%{background-position:0 0}to{background-position:0 100%}}@keyframes scan{0%{background-position:0 0}to{background-position:0 100%}}@-webkit-keyframes pulseGlow{0%,to{opacity:.7;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}}@keyframes pulseGlow{0%,to{opacity:.7;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}}@-webkit-keyframes pulseDot{0%,to{box-shadow:0 0 0 4px rgba(52,211,153,.2)}50%{box-shadow:0 0 0 8px rgba(52,211,153,.08)}}@keyframes pulseDot{0%,to{box-shadow:0 0 0 4px rgba(52,211,153,.2)}50%{box-shadow:0 0 0 8px rgba(52,211,153,.08)}}@-webkit-keyframes scrollDot{0%{opacity:1;-webkit-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}to{opacity:0;-webkit-transform:translateX(-50%) translateY(10px);transform:translateX(-50%) translateY(10px)}}@keyframes scrollDot{0%{opacity:1;-webkit-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}to{opacity:0;-webkit-transform:translateX(-50%) translateY(10px);transform:translateX(-50%) translateY(10px)}}@-webkit-keyframes heroCircleDrift{0%,to{-webkit-filter:drop-shadow(0 0 10px rgba(52,211,153,.08));filter:drop-shadow(0 0 10px rgba(52,211,153,.08));-webkit-transform:translateZ(0) scale(1);transform:translateZ(0) scale(1)}50%{-webkit-filter:drop-shadow(0 0 16px rgba(52,211,153,.18));filter:drop-shadow(0 0 16px rgba(52,211,153,.18));-webkit-transform:translate3d(8px,-6px,0) scale(1.03);transform:translate3d(8px,-6px,0) scale(1.03)}}@keyframes heroCircleDrift{0%,to{-webkit-filter:drop-shadow(0 0 10px rgba(52,211,153,.08));filter:drop-shadow(0 0 10px rgba(52,211,153,.08));-webkit-transform:translateZ(0) scale(1);transform:translateZ(0) scale(1)}50%{-webkit-filter:drop-shadow(0 0 16px rgba(52,211,153,.18));filter:drop-shadow(0 0 16px rgba(52,211,153,.18));-webkit-transform:translate3d(8px,-6px,0) scale(1.03);transform:translate3d(8px,-6px,0) scale(1.03)}}@-webkit-keyframes heroFrameRing{0%{opacity:.45;-webkit-transform:scale(1) rotate(0deg);transform:scale(1) rotate(0deg)}50%{opacity:.75;-webkit-transform:scale(1.06) rotate(180deg);transform:scale(1.06) rotate(180deg)}to{opacity:.45;-webkit-transform:scale(1) rotate(1turn);transform:scale(1) rotate(1turn)}}@keyframes heroFrameRing{0%{opacity:.45;-webkit-transform:scale(1) rotate(0deg);transform:scale(1) rotate(0deg)}50%{opacity:.75;-webkit-transform:scale(1.06) rotate(180deg);transform:scale(1.06) rotate(180deg)}to{opacity:.45;-webkit-transform:scale(1) rotate(1turn);transform:scale(1) rotate(1turn)}}@-webkit-keyframes heroNameShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes heroNameShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@media (prefers-reduced-motion:reduce){.hero:after,.hero:before,.hero__badge-dot,.hero__frame-glow,.hero__frame-ring,.hero__name-part,.hero__orb,.hero__scan,.hero__scroll span:after{-webkit-animation:none;animation:none}.hero__name-part{background:linear-gradient(120deg,#fff 20%,#6ee7b7 55%,#34d399);background-size:100% 100%}.hero__typed-caret{display:none}}@media (max-width:980px){.hero{padding:calc(var(--nav-h) + 1.75rem) 0 2.5rem}.hero .container{width:min(100% - 2.5rem,var(--max))}.hero__grid{grid-template-columns:1fr;width:100%}.hero__copy{width:100%}.hero__name{font-size:clamp(1.55rem,6.2vw,2.75rem)}.hero__visual{margin:0 auto;max-width:360px;width:100%}.hero__frame{margin:0;max-width:none}.hero__scroll{align-self:center;bottom:auto;left:auto;margin:1.75rem auto 0;padding:.35rem .5rem;position:relative;-webkit-transform:none;transform:none}}@media (max-width:640px){.hero{min-height:auto;padding-bottom:1.75rem;padding-top:calc(var(--nav-h) + 1.25rem)}.hero .container{width:min(100% - 2rem,var(--max))}.hero__name{font-size:clamp(1.45rem,8.2vw,2.15rem);letter-spacing:0}.hero__specialties{justify-content:flex-start}.hero__typed{white-space:normal}.hero__typed-chars{max-width:100%;overflow:visible;white-space:normal;width:auto!important}.hero__actions{width:100%}.hero__actions .btn{flex:1 1 auto;min-width:min(100%,10.5rem)}.hero__socials{justify-content:center;width:100%}.hero__scroll{margin-bottom:.25rem;margin-top:1.5rem}}@media (max-width:380px){.hero__name{font-size:clamp(1.3rem,7.4vw,1.85rem);letter-spacing:0}}.about__layout{grid-gap:clamp(1.5rem,4vw,3rem);align-items:start;display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:.85fr 1.15fr;margin-top:var(--section-content-gap)}.about__image-wrap{aspect-ratio:4/5;background:var(--bg-elevated);border:1px solid var(--border);border-radius:28px;max-width:380px;overflow:hidden;position:relative}.about__image-wrap img{height:100%;object-fit:cover;transition:-webkit-transform .8s var(--ease-out);transition:transform .8s var(--ease-out);transition:transform .8s var(--ease-out),-webkit-transform .8s var(--ease-out);width:100%}@media (hover:hover) and (pointer:fine){.about__image-wrap:hover img{-webkit-transform:scale(1.04);transform:scale(1.04)}}.about__meta{bottom:1rem;left:1rem;padding:1rem 1.1rem;position:absolute;right:1rem}.about__meta p{color:var(--accent-soft);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;margin-bottom:.25rem;text-transform:uppercase}.about__meta strong{font-family:var(--font-display);font-size:1.1rem;letter-spacing:-.02em}.about__intro{margin-bottom:1.15rem}.about__intro p{color:var(--text-muted);font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.7}.about__intro p+p{margin-top:.85rem}.about__intro p:first-child{color:var(--text);font-size:clamp(1.12rem,2vw,1.3rem)}.about__quote{border-left:2px solid var(--accent);margin-bottom:0;padding:.2rem 0 .2rem 1.15rem;position:relative}.about__quote:before{-webkit-animation:quoteLine 1.2s var(--ease-out) both;animation:quoteLine 1.2s var(--ease-out) both;background:linear-gradient(180deg,var(--accent-soft),var(--accent),transparent);content:"";height:100%;left:-2px;position:absolute;top:0;-webkit-transform-origin:top;transform-origin:top;width:2px}@-webkit-keyframes quoteLine{0%{-webkit-transform:scaleY(0);transform:scaleY(0)}to{-webkit-transform:scaleY(1);transform:scaleY(1)}}@keyframes quoteLine{0%{-webkit-transform:scaleY(0);transform:scaleY(0)}to{-webkit-transform:scaleY(1);transform:scaleY(1)}}.about__quote p{color:var(--text-muted);font-size:1.05rem;font-style:italic;line-height:1.7}.about__quote cite{color:var(--accent-soft);display:block;font-family:var(--font-mono);font-size:.78rem;font-style:normal;letter-spacing:.08em;margin-top:.65rem;text-transform:uppercase}@media (max-width:900px){.about__layout{grid-template-columns:1fr}.about__image-wrap{margin:0 auto}}@media (prefers-reduced-motion:reduce){.about__quote:before{-webkit-animation:none;animation:none}.about__image-wrap img{transition:none}}.skills__orbit-shell{background:radial-gradient(circle at 50% 50%,rgba(110,231,183,.18),transparent 14%),radial-gradient(circle at 50% 50%,rgba(20,184,166,.1),transparent 43%),radial-gradient(circle at 18% 18%,rgba(45,212,191,.1),transparent 24%),radial-gradient(circle at 82% 78%,rgba(52,211,153,.08),transparent 26%),linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012)),rgba(3,7,6,.94);border:1px solid rgba(110,231,183,.14);border-radius:28px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),inset 0 0 110px rgba(52,211,153,.045),0 26px 80px rgba(0,0,0,.34);isolation:isolate;margin-top:var(--section-content-gap);min-height:clamp(620px,70vw,780px);overflow:hidden;position:relative}.skills__orbit-shell:after,.skills__orbit-shell:before{content:"";inset:0;pointer-events:none;position:absolute}.skills__orbit-shell:before{background-image:radial-gradient(circle,rgba(236,253,245,.72) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(110,231,183,.44) 0 1px,transparent 1.5px);background-position:18px 22px,64px 76px;background-size:124px 124px,188px 188px;-webkit-mask-image:radial-gradient(circle at center,#000 14%,transparent 76%);mask-image:radial-gradient(circle at center,#000 14%,transparent 76%);opacity:.22;z-index:0}.skills__orbit-shell:after{background:linear-gradient(hsla(0,0%,100%,.022) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.019) 1px,transparent 0);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at center,#000,transparent 78%);mask-image:radial-gradient(circle at center,#000,transparent 78%);opacity:.3;z-index:1}.skills__starfield{color:rgba(112,245,197,.18);font-family:var(--font-mono);font-size:.68rem;inset:0;letter-spacing:.16em;pointer-events:none;position:absolute;z-index:2}.skills__starfield span{position:absolute}.skills__starfield span:first-child{left:7%;top:12%}.skills__starfield span:nth-child(2){right:7%;top:17%}.skills__starfield span:nth-child(3){bottom:13%;left:9%}.skills__system{--system-size:min(86vw,620px);height:var(--system-size);width:var(--system-size);z-index:3}.skills__ring,.skills__system{left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.skills__ring{--orbit-size:calc(var(--system-size)*0.5);--orbit-duration:150s;border-radius:50%;height:var(--orbit-size);pointer-events:none;width:var(--orbit-size)}.skills__ring--core{--orbit-size:calc(var(--system-size)*0.48);--orbit-duration:112s}.skills__ring--service{--orbit-size:calc(var(--system-size)*0.68);--orbit-duration:138s}.skills__ring--cloud{--orbit-size:calc(var(--system-size)*0.88);--orbit-duration:166s}.skills__ring-line{background:radial-gradient(circle at 50% 0,rgba(236,253,245,.22),transparent 7%),radial-gradient(circle at 100% 50%,rgba(52,211,153,.14),transparent 8%);border:1px solid rgba(110,231,183,.16);box-shadow:0 0 24px rgba(52,211,153,.035),inset 0 0 22px rgba(52,211,153,.025)}.skills__ring-line,.skills__ring-track{border-radius:50%;inset:0;pointer-events:none;position:absolute}.skills__ring-track{will-change:transform}.skills__planet{--boost:1;--lift:0px;--planet-size:clamp(38px,4.8vw,54px);background:radial-gradient(circle at 32% 24%,hsla(0,0%,100%,.24),transparent 31%),radial-gradient(circle at 64% 76%,rgba(52,211,153,.2),transparent 50%),rgba(6,16,12,.94);border:1px solid rgba(110,231,183,.24);border-radius:50%;box-shadow:0 14px 30px rgba(0,0,0,.32),0 0 16px rgba(52,211,153,.08);color:var(--accent-soft);cursor:pointer;display:grid;height:var(--planet-size);left:50%;place-items:center;pointer-events:auto;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1)) translateY(var(--lift)) scale(var(--boost));transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1)) translateY(var(--lift)) scale(var(--boost));transition:border-color .24s ease,color .24s ease,background .24s ease,box-shadow .24s ease,-webkit-transform .28s var(--ease-out);transition:transform .28s var(--ease-out),border-color .24s ease,color .24s ease,background .24s ease,box-shadow .24s ease;transition:transform .28s var(--ease-out),border-color .24s ease,color .24s ease,background .24s ease,box-shadow .24s ease,-webkit-transform .28s var(--ease-out);width:var(--planet-size)}.skills__ring--core .skills__planet{--planet-size:clamp(42px,5.2vw,58px)}.skills__planet-face{border-radius:inherit;display:grid;height:100%;place-items:center;position:relative;width:100%}.skills__planet svg{height:1.36rem;width:1.36rem}.skills__planet-label{background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.02)),rgba(4,10,8,.98);border:1px solid rgba(110,231,183,.28);border-radius:999px;bottom:calc(100% + .66rem);color:var(--text);font-family:var(--font-mono);font-size:.68rem;left:50%;letter-spacing:.04em;line-height:1;max-width:10rem;min-width:-webkit-max-content;min-width:max-content;opacity:0;padding:.4rem .6rem;pointer-events:none;position:absolute;-webkit-transform:translate(-50%,6px);transform:translate(-50%,6px);transition:opacity .18s ease,-webkit-transform .18s ease;transition:opacity .18s ease,transform .18s ease;transition:opacity .18s ease,transform .18s ease,-webkit-transform .18s ease;white-space:nowrap}.skills__planet.is-active,.skills__planet:focus-visible,.skills__planet:hover{--boost:1.14;--lift:-4px;background:radial-gradient(circle at 32% 24%,hsla(0,0%,100%,.32),transparent 31%),radial-gradient(circle at 64% 76%,rgba(110,231,183,.3),transparent 52%),rgba(9,31,22,.98);border-color:rgba(236,253,245,.7);box-shadow:0 20px 38px rgba(0,0,0,.4),0 0 30px rgba(52,211,153,.22);color:#f8fffb;z-index:6}.skills__planet:focus-visible .skills__planet-label,.skills__planet:hover .skills__planet-label{opacity:1;-webkit-transform:translate(-50%);transform:translate(-50%)}.skills__sun{background:radial-gradient(circle at 36% 28%,hsla(0,0%,100%,.28),transparent 26%),radial-gradient(circle,rgba(167,243,208,.32),transparent 48%),radial-gradient(circle,rgba(20,184,166,.18),transparent 68%),rgba(4,12,9,.96);border:1px solid rgba(167,243,208,.36);border-radius:50%;box-shadow:0 0 34px rgba(110,231,183,.2),0 0 92px rgba(52,211,153,.12);color:var(--text);display:grid;height:clamp(132px,18vw,176px);left:50%;padding:1rem;place-items:center;pointer-events:none;position:absolute;text-align:center;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:clamp(132px,18vw,176px)}.skills__sun:after,.skills__sun:before{border-radius:50%;content:"";pointer-events:none;position:absolute}.skills__sun:before{border:1px solid rgba(110,231,183,.1);inset:-22px}.skills__sun:after{background:radial-gradient(circle,rgba(52,211,153,.08),transparent 68%);inset:-48px;z-index:-1}.skills__sun-icon{background:rgba(52,211,153,.1);border:1px solid rgba(236,253,245,.26);border-radius:50%;box-shadow:0 0 26px rgba(52,211,153,.13);color:var(--accent-soft);display:grid;height:clamp(44px,6.4vw,58px);place-items:center;width:clamp(44px,6.4vw,58px)}.skills__sun-icon svg{height:1.72rem;width:1.72rem}.skills__sun strong{font-family:var(--font-display);font-size:clamp(1rem,1.55vw,1.25rem);letter-spacing:0;line-height:1.05}.skills__sun span{color:var(--accent-soft);font-family:var(--font-mono);font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}html:not([data-motion=off]) .skills__ring-line{-webkit-animation:skillsOrbitGlow 14s ease-in-out infinite;animation:skillsOrbitGlow 14s ease-in-out infinite}html:not([data-motion=off]) .skills__ring-track{-webkit-animation:skillsPlanetOrbit var(--orbit-duration) linear infinite;animation:skillsPlanetOrbit var(--orbit-duration) linear infinite}html:not([data-motion=off]) .skills__ring:nth-child(2n) .skills__ring-track{animation-direction:reverse}html:not([data-motion=off]) .skills__planet-face{animation:skillsPlanetFace var(--orbit-duration) linear infinite reverse}html:not([data-motion=off]) .skills__ring:nth-child(2n) .skills__planet-face{-webkit-animation-direction:normal;animation-direction:normal}html:not([data-motion=off]) .skills__ring:nth-child(2) .skills__ring-line{-webkit-animation-delay:-3.5s;animation-delay:-3.5s}html:not([data-motion=off]) .skills__ring:nth-child(3) .skills__ring-line{-webkit-animation-delay:-7s;animation-delay:-7s}html:not([data-motion=off]) .skills__sun{-webkit-animation:skillsSunPulse 6s ease-in-out infinite;animation:skillsSunPulse 6s ease-in-out infinite}html:not([data-motion=off]) .skills__orbit-shell:before{-webkit-animation:skillsStarDrift 28s linear infinite;animation:skillsStarDrift 28s linear infinite}@-webkit-keyframes skillsPlanetOrbit{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes skillsPlanetOrbit{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes skillsPlanetFace{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes skillsPlanetFace{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes skillsOrbitGlow{50%{border-color:rgba(167,243,208,.28);box-shadow:0 0 30px rgba(52,211,153,.06),inset 0 0 26px rgba(52,211,153,.045)}}@keyframes skillsOrbitGlow{50%{border-color:rgba(167,243,208,.28);box-shadow:0 0 30px rgba(52,211,153,.06),inset 0 0 26px rgba(52,211,153,.045)}}@-webkit-keyframes skillsSunPulse{50%{box-shadow:0 0 42px rgba(110,231,183,.26),0 0 108px rgba(52,211,153,.16)}}@keyframes skillsSunPulse{50%{box-shadow:0 0 42px rgba(110,231,183,.26),0 0 108px rgba(52,211,153,.16)}}@-webkit-keyframes skillsStarDrift{to{background-position:142px 146px,252px 264px}}@keyframes skillsStarDrift{to{background-position:142px 146px,252px 264px}}@media (max-width:760px){.skills__orbit-shell{background:radial-gradient(circle at 50% 50%,rgba(110,231,183,.16),transparent 15%),radial-gradient(circle at 50% 14%,rgba(110,231,183,.16),transparent 28%),linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012)),rgba(3,7,6,.94);border-radius:22px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 18px 46px rgba(0,0,0,.28);min-height:clamp(520px,130vw,660px);padding:clamp(1rem,4vw,1.35rem)}.skills__orbit-shell:before{-webkit-mask-image:linear-gradient(180deg,#000,transparent 72%);mask-image:linear-gradient(180deg,#000,transparent 72%);opacity:.12}.skills__orbit-shell:after,.skills__starfield{display:none}.skills__ring-line{background:radial-gradient(circle at 50% 0,rgba(236,253,245,.12),transparent 7%),radial-gradient(circle at 100% 50%,rgba(52,211,153,.08),transparent 8%);box-shadow:inset 0 0 16px rgba(52,211,153,.02);display:block}.skills__system{--system-size:min(88vw,430px);height:var(--system-size);width:var(--system-size)}.skills__ring,.skills__system{display:block;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.skills__ring{height:var(--orbit-size);width:var(--orbit-size)}.skills__ring-track{display:block;inset:0;position:absolute}.skills__planet,.skills__ring--core .skills__planet{--planet-size:clamp(34px,9vw,42px);box-shadow:0 8px 18px rgba(0,0,0,.22);justify-self:auto;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1));transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1));transition:border-color .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease}.skills__planet svg{height:1.2rem;width:1.2rem}.skills__planet span{font-size:.64rem}.skills__planet.is-active,.skills__planet:focus-visible,.skills__planet:hover{--boost:1;--lift:0px;box-shadow:0 10px 20px rgba(0,0,0,.26),0 0 20px rgba(52,211,153,.18);-webkit-transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1));transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc(var(--orbit-size)/2)) rotate(calc(var(--angle)*-1))}.skills__sun{box-shadow:0 0 30px rgba(110,231,183,.18);height:clamp(112px,29vw,126px);left:50%;margin-bottom:0;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:clamp(112px,29vw,126px)}.skills__sun:before{inset:-14px}.skills__sun:after{display:none}html:not([data-motion=off]) .skills__orbit-shell:before,html:not([data-motion=off]) .skills__planet-face,html:not([data-motion=off]) .skills__ring-line,html:not([data-motion=off]) .skills__ring-track{-webkit-animation:none;animation:none}html:not([data-motion=off]) .skills__planet.is-active{-webkit-animation:skillsMobileActive 2.8s ease-in-out infinite;animation:skillsMobileActive 2.8s ease-in-out infinite}}@media (max-width:520px){.skills__orbit-shell{min-height:clamp(500px,142vw,620px);padding-inline:.85rem}.skills__system{--system-size:min(92vw,380px)}.skills__planet,.skills__ring--core .skills__planet{--planet-size:clamp(30px,8.4vw,36px)}.skills__ring--core{--orbit-size:calc(var(--system-size)*0.48)}.skills__ring--service{--orbit-size:calc(var(--system-size)*0.69)}.skills__ring--cloud{--orbit-size:calc(var(--system-size)*0.91)}}@-webkit-keyframes skillsMobileActive{50%{box-shadow:0 10px 20px rgba(0,0,0,.26),0 0 26px rgba(52,211,153,.28)}}@keyframes skillsMobileActive{50%{box-shadow:0 10px 20px rgba(0,0,0,.26),0 0 26px rgba(52,211,153,.28)}}@media (prefers-reduced-motion:reduce){.skills__orbit-shell:before,.skills__planet-face,.skills__ring-line,.skills__ring-track,.skills__sun{-webkit-animation:none;animation:none}}.experience__matrix{background:radial-gradient(circle at 18% 18%,rgba(52,211,153,.1),transparent 32%),radial-gradient(circle at 88% 22%,rgba(45,212,191,.07),transparent 30%),linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012)),rgba(5,8,7,.92);border:1px solid rgba(110,231,183,.12);border-radius:28px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.045),0 28px 80px rgba(0,0,0,.34);margin-top:var(--section-content-gap);overflow:hidden;padding:clamp(1.1rem,3vw,2rem);-webkit-perspective:1200px;perspective:1200px;position:relative}.experience__depth{background-image:linear-gradient(rgba(112,245,197,.1) 1px,transparent 0),linear-gradient(90deg,rgba(112,245,197,.08) 1px,transparent 0);background-size:52px 52px;inset:18% 7% -12%;-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.8),transparent 76%);mask-image:linear-gradient(0deg,rgba(0,0,0,.8),transparent 76%);opacity:.42;pointer-events:none;position:absolute;-webkit-transform:rotateX(68deg) translateZ(-240px);transform:rotateX(68deg) translateZ(-240px);-webkit-transform-origin:center bottom;transform-origin:center bottom}.experience__matrix:after,.experience__matrix:before{content:"";pointer-events:none;position:absolute}.experience__matrix:before{background-image:radial-gradient(circle,rgba(112,245,197,.4) 1px,transparent 1.5px),linear-gradient(90deg,transparent,rgba(112,245,197,.06),transparent);background-position:0 0,0 26%;background-size:72px 72px,100% 1px;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 38%,#000,transparent 82%);mask-image:radial-gradient(circle at 50% 38%,#000,transparent 82%);opacity:.26}.experience__matrix:after{background:linear-gradient(180deg,transparent,rgba(5,8,7,.94));height:34%;inset:auto 0 0}.experience__constellation{color:rgba(112,245,197,.2);font-family:var(--font-mono);font-size:.68rem;inset:0;letter-spacing:.16em;pointer-events:none;position:absolute;text-transform:uppercase;z-index:0}.experience__constellation span{position:absolute}.experience__constellation span:first-child{left:7%;top:13%}.experience__constellation span:nth-child(2){right:9%;top:18%}.experience__constellation span:nth-child(3){bottom:16%;left:13%}.experience__constellation span:nth-child(4){bottom:20%;right:12%}.experience__timeline{display:flex;flex-direction:column;gap:clamp(.85rem,2vw,1.15rem);padding:.45rem 0 .45rem clamp(1.1rem,3vw,2.1rem);position:relative;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;z-index:1}.experience__timeline:before{-webkit-animation:timelineGrow .9s var(--ease-out) both;animation:timelineGrow .9s var(--ease-out) both;background:linear-gradient(180deg,rgba(112,245,197,.9),rgba(52,211,153,.12));border-radius:999px;bottom:1rem;box-shadow:0 0 22px rgba(52,211,153,.22);content:"";left:clamp(.48rem,1.5vw,.78rem);position:absolute;top:1rem;-webkit-transform-origin:top center;transform-origin:top center;width:2px}.experience__item{--card-z:calc(var(--depth-step)*-18px);--card-rotate:calc((var(--depth-step) - 2)*-1.4deg);grid-gap:.85rem;align-items:start;display:grid;gap:.85rem;grid-template-columns:18px 1fr;position:relative;-webkit-transform:translateZ(var(--card-z)) rotateY(var(--card-rotate));transform:translateZ(var(--card-z)) rotateY(var(--card-rotate));-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:-webkit-transform .42s var(--ease-out);transition:transform .42s var(--ease-out);transition:transform .42s var(--ease-out),-webkit-transform .42s var(--ease-out)}.experience__item:nth-child(2n){--card-rotate:calc((var(--depth-step) - 2)*1.25deg)}.experience__item:hover{-webkit-transform:translate3d(0,-4px,54px) rotateY(0deg);transform:translate3d(0,-4px,54px) rotateY(0deg)}.experience__marker{display:flex;justify-content:center;padding-top:1.55rem;position:relative;-webkit-transform:translateZ(80px);transform:translateZ(80px);width:18px;z-index:2}.experience__marker:before{color:rgba(112,245,197,.42);content:var(--node-index);font-family:var(--font-mono);font-size:.66rem;left:-2.2rem;letter-spacing:.12em;position:absolute;top:2.35rem}.experience__marker span{background:#06100c;border:2px solid var(--accent-soft);border-radius:50%;box-shadow:0 0 0 5px rgba(52,211,153,.1),0 0 18px rgba(52,211,153,.25);height:13px;width:13px}.experience__marker span.is-live{background:var(--accent);box-shadow:0 0 0 5px rgba(52,211,153,.15),0 0 28px rgba(52,211,153,.38)}.experience__card{background:linear-gradient(135deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.018) 45%,rgba(52,211,153,.025)),rgba(5,12,9,.9);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.34),inset 0 1px 0 hsla(0,0%,100%,.04);isolation:isolate;overflow:hidden;padding:clamp(1rem,2.6vw,1.45rem);position:relative;-webkit-transform:translateZ(36px);transform:translateZ(36px);transition:border-color .3s ease,box-shadow .3s ease,background .3s ease}.experience__card:before{background-image:linear-gradient(hsla(0,0%,100%,.035) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.03) 1px,transparent 0);background-size:32px 32px;content:"";inset:0;-webkit-mask-image:radial-gradient(circle at 20% 18%,#000,transparent 72%);mask-image:radial-gradient(circle at 20% 18%,#000,transparent 72%);opacity:.7;position:absolute;z-index:-1}.experience__card:after{background:radial-gradient(circle at 20% 20%,rgba(112,245,197,.14),transparent 36%);border-radius:inherit;content:"";inset:-1px;opacity:0;position:absolute;transition:opacity .35s ease;z-index:-1}.experience__item:hover .experience__card{border-color:rgba(112,245,197,.42);box-shadow:0 24px 70px rgba(0,0,0,.42),0 0 36px rgba(52,211,153,.1)}.experience__item:hover .experience__card:after{opacity:1}.experience__scanline{background:linear-gradient(180deg,transparent,rgba(112,245,197,.08),transparent);inset:0;opacity:0;pointer-events:none;position:absolute;-webkit-transform:translateY(-70%);transform:translateY(-70%)}html[data-motion=full] .experience__item:hover .experience__scanline{-webkit-animation:experienceScan .9s var(--ease-out);animation:experienceScan .9s var(--ease-out)}.experience__top{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.85rem}.experience__node{color:var(--accent-soft);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;margin-bottom:.28rem;text-transform:uppercase}.experience__card h3{font-family:var(--font-display);font-size:clamp(1.18rem,2.2vw,1.55rem);letter-spacing:-.035em;line-height:1.08;margin-bottom:.25rem}.experience__company{color:color-mix(in srgb,var(--accent-soft) 82%,#fff);font-weight:600}.experience__date{align-items:center;background:hsla(0,0%,100%,.025);border:1px solid rgba(110,231,183,.18);border-radius:999px;color:var(--text-dim);display:inline-flex;flex-shrink:0;font-family:var(--font-mono);font-size:.74rem;gap:.5rem;padding:.4rem .72rem;white-space:nowrap}.experience__live{background:var(--accent);border-radius:999px;color:#04110a;font-size:.66rem;font-weight:800;letter-spacing:.06em;padding:.1rem .45rem;text-transform:uppercase}.experience__highlights{grid-gap:.45rem;display:grid;gap:.45rem;margin-bottom:1rem}.experience__highlights li{color:var(--text-muted);font-size:.98rem;line-height:1.55;padding-left:1.05rem;position:relative}.experience__highlights li:before{background:var(--accent-soft);border-radius:50%;box-shadow:0 0 12px rgba(112,245,197,.35);content:"";height:5px;left:0;position:absolute;top:.62em;width:5px}.experience__tech{display:flex;flex-wrap:wrap;gap:.45rem}@-webkit-keyframes timelineGrow{0%{opacity:.35;-webkit-transform:scaleY(0);transform:scaleY(0)}to{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}}@keyframes timelineGrow{0%{opacity:.35;-webkit-transform:scaleY(0);transform:scaleY(0)}to{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}}@-webkit-keyframes experienceScan{0%{opacity:0;-webkit-transform:translateY(-70%);transform:translateY(-70%)}35%{opacity:1}to{opacity:0;-webkit-transform:translateY(70%);transform:translateY(70%)}}@keyframes experienceScan{0%{opacity:0;-webkit-transform:translateY(-70%);transform:translateY(-70%)}35%{opacity:1}to{opacity:0;-webkit-transform:translateY(70%);transform:translateY(70%)}}@media (max-width:800px){.experience__matrix{border-radius:22px;padding:1rem;-webkit-perspective:800px;perspective:800px}.experience__constellation{display:none}.experience__timeline{padding-left:1.25rem}.experience__item,.experience__item:hover{-webkit-transform:none;transform:none}.experience__marker:before{display:none}.experience__top{flex-direction:column}.experience__date{white-space:normal}}@media (prefers-reduced-motion:reduce){.experience__scanline,.experience__timeline:before,html[data-motion=full] .experience__item:hover .experience__scanline{-webkit-animation:none!important;animation:none!important}.experience__card,.experience__card:after,.experience__item{transition:none!important}}.project-showcase{background:radial-gradient(circle at 50% 38%,rgba(52,211,153,.08),transparent 35%),linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012)),#050807;border:1px solid rgba(70,230,173,.12);border-radius:28px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 30px 90px rgba(0,0,0,.35);margin-top:var(--section-content-gap);min-height:760px;overflow:hidden;padding:clamp(1rem,2vw,1.5rem);position:relative}.project-showcase__topline{color:rgba(112,245,197,.72);display:flex;font-family:var(--font-mono);font-size:.72rem;gap:1rem;justify-content:space-between;letter-spacing:.16em;padding:.35rem .35rem 0;position:relative;text-transform:uppercase;z-index:4}.project-showcase__topline span{transition:opacity .4s ease,-webkit-transform .4s ease;transition:opacity .4s ease,transform .4s ease;transition:opacity .4s ease,transform .4s ease,-webkit-transform .4s ease}.project-showcase__topline .is-hidden{opacity:0;-webkit-transform:translateY(-6px);transform:translateY(-6px)}.project-scene{min-height:610px;outline:none;-webkit-perspective:1500px;perspective:1500px;-webkit-perspective-origin:50% 45%;perspective-origin:50% 45%;position:relative;touch-action:pan-y;z-index:2}.project-scene:focus-visible{outline:1px solid rgba(112,245,197,.72);outline-offset:8px}.project-scene__depth{background-image:linear-gradient(rgba(112,245,197,.1) 1px,transparent 0),linear-gradient(90deg,rgba(112,245,197,.1) 1px,transparent 0);background-size:56px 56px;inset:12% 5% 3%;-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent 74%);mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent 74%);opacity:.36;position:absolute;-webkit-transform:rotateX(68deg) translateZ(-260px);transform:rotateX(68deg) translateZ(-260px);-webkit-transform-origin:center bottom;transform-origin:center bottom}.project-scene__deck{inset:0;position:absolute;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.project-panel{--tilt-x:0deg;--tilt-y:0deg;--glow-x:50%;--glow-y:50%;left:50%;min-height:470px;opacity:var(--deck-opacity);position:absolute;top:50%;-webkit-transform:translate3d(calc(-50% + var(--deck-x)),calc(-50% + var(--deck-y)),var(--deck-z)) rotateX(calc(var(--deck-rx) + var(--tilt-x))) rotateY(calc(var(--deck-ry) + var(--tilt-y))) scale(var(--deck-scale));transform:translate3d(calc(-50% + var(--deck-x)),calc(-50% + var(--deck-y)),var(--deck-z)) rotateX(calc(var(--deck-rx) + var(--tilt-x))) rotateY(calc(var(--deck-ry) + var(--tilt-y))) scale(var(--deck-scale));-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:opacity .65s ease,-webkit-transform .85s cubic-bezier(.16,1,.3,1);transition:transform .85s cubic-bezier(.16,1,.3,1),opacity .65s ease;transition:transform .85s cubic-bezier(.16,1,.3,1),opacity .65s ease,-webkit-transform .85s cubic-bezier(.16,1,.3,1);width:min(760px,72vw)}.project-panel,.project-panel.is-active{pointer-events:auto}.project-panel:not(.is-active){cursor:pointer}.project-panel__inner{grid-gap:clamp(1.2rem,3vw,2.2rem);background:radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--panel-accent) 13%,transparent),transparent 28%),linear-gradient(135deg,hsla(0,0%,100%,.07),hsla(0,0%,100%,.022) 45%,rgba(52,211,153,.025)),rgba(4,9,7,.88);border:1px solid color-mix(in srgb,var(--panel-accent) 26%,transparent);border-radius:26px;box-shadow:0 0 34px color-mix(in srgb,var(--panel-accent) 9%,transparent),0 28px 70px rgba(0,0,0,.42);display:grid;gap:clamp(1.2rem,3vw,2.2rem);grid-template-columns:minmax(210px,.82fr) 1.18fr;min-height:inherit;overflow:hidden;padding:clamp(1.1rem,3vw,2rem);position:relative;-webkit-transform:translateZ(64px);transform:translateZ(64px)}.project-panel__inner:before{background-image:linear-gradient(hsla(0,0%,100%,.035) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.028) 1px,transparent 0);background-size:34px 34px;content:"";inset:0;-webkit-mask-image:radial-gradient(circle at 40% 45%,#000,transparent 78%);mask-image:radial-gradient(circle at 40% 45%,#000,transparent 78%);opacity:.55;pointer-events:none;position:absolute}.project-panel__inner:after{background:linear-gradient(120deg,transparent 25%,color-mix(in srgb,var(--panel-accent) 18%,transparent),transparent 62%);border-radius:inherit;content:"";inset:-1px;opacity:0;pointer-events:none;position:absolute;-webkit-transform:translateX(-35%);transform:translateX(-35%);transition:opacity .45s ease,-webkit-transform .7s var(--ease-out);transition:opacity .45s ease,transform .7s var(--ease-out);transition:opacity .45s ease,transform .7s var(--ease-out),-webkit-transform .7s var(--ease-out)}.project-panel.is-active:hover .project-panel__inner:after{opacity:1;-webkit-transform:translateX(35%);transform:translateX(35%)}.project-panel__content,.project-panel__meta,.project-panel__visual{position:relative;z-index:1}.project-panel__meta{align-items:center;color:color-mix(in srgb,var(--panel-accent) 82%,#fff);display:flex;font-family:var(--font-mono);font-size:.74rem;gap:1rem;grid-column:1/-1;justify-content:space-between;letter-spacing:.14em;text-transform:uppercase}.project-panel__meta strong{color:rgba(243,247,245,.68);font-weight:500}.project-panel__visual{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--panel-accent) 24%,transparent),transparent 46%),#06100c;border:1px solid color-mix(in srgb,var(--panel-accent) 22%,transparent);border-radius:20px;display:grid;min-height:300px;overflow:hidden;place-items:center;-webkit-transform:translateZ(38px) rotateY(-2deg);transform:translateZ(38px) rotateY(-2deg)}.project-panel__visual-grid{background-image:linear-gradient(rgba(112,245,197,.08) 1px,transparent 0),linear-gradient(90deg,rgba(112,245,197,.08) 1px,transparent 0);background-size:24px 24px;inset:0;-webkit-mask-image:radial-gradient(circle,#000,transparent 78%);mask-image:radial-gradient(circle,#000,transparent 78%);opacity:.75;position:absolute}.project-panel__art{-webkit-filter:drop-shadow(0 18px 22px rgba(0,0,0,.34)) drop-shadow(0 0 24px color-mix(in srgb,var(--panel-accent) 18%,transparent));filter:drop-shadow(0 18px 22px rgba(0,0,0,.34)) drop-shadow(0 0 24px color-mix(in srgb,var(--panel-accent) 18%,transparent));height:auto;overflow:visible;position:relative;-webkit-transform:translateZ(48px);transform:translateZ(48px);width:min(92%,300px)}.project-panel__art .art-card-fill{fill:rgba(7,22,17,.92);stroke:color-mix(in srgb,var(--panel-accent) 44%,#fff);stroke-width:3}.project-panel__art .art-fill{fill:color-mix(in srgb,var(--panel-accent) 52%,#eafff7);stroke:rgba(243,247,245,.9);stroke-width:3}.project-panel__art .art-fill-soft{fill:color-mix(in srgb,var(--panel-accent) 24%,hsla(0,0%,100%,.82));stroke:color-mix(in srgb,var(--panel-accent) 48%,#fff);stroke-width:2.5}.project-panel__art .art-accent-fill{fill:color-mix(in srgb,var(--panel-accent) 82%,#fff);stroke:rgba(243,247,245,.88);stroke-width:2.5}.project-panel__art .art-label,.project-panel__art .art-stroke{fill:none;stroke:rgba(243,247,245,.88);stroke-width:4}.project-panel__art .art-accent{fill:none;stroke:color-mix(in srgb,var(--panel-accent) 82%,#fff);stroke-width:4}.project-panel__art .art-dot{fill:color-mix(in srgb,var(--panel-accent) 74%,#fff)}.project-panel__art .art-shadow{fill:none;stroke:rgba(0,0,0,.34);stroke-width:12;stroke-linecap:round}.project-panel__art .art-delay-1{-webkit-animation-delay:-1.6s;animation-delay:-1.6s}.project-panel__visual small{bottom:.85rem;color:rgba(243,247,245,.5);font-family:var(--font-mono);font-size:.68rem;left:1rem;letter-spacing:.12em;position:absolute}.project-panel__content{align-self:center;-webkit-transform:translateZ(74px);transform:translateZ(74px)}.project-panel.is-active .project-panel__content h3,.project-panel.is-active .project-panel__desc,.project-panel.is-active .project-panel__kicker,.project-panel.is-active .project-panel__links,.project-panel.is-active .project-panel__tech{-webkit-animation:contentRise .68s both;animation:contentRise .68s both}.project-panel.is-active .project-panel__content h3{-webkit-animation-delay:70ms;animation-delay:70ms;-webkit-animation-duration:.36s;animation-duration:.36s;-webkit-animation-name:titleResolve;animation-name:titleResolve}.project-panel.is-active .project-panel__desc{-webkit-animation-delay:.14s;animation-delay:.14s}.project-panel.is-active .project-panel__tech{-webkit-animation-delay:.21s;animation-delay:.21s}.project-panel.is-active .project-panel__links{-webkit-animation-delay:.28s;animation-delay:.28s}.project-panel__kicker{color:color-mix(in srgb,var(--panel-accent) 76%,#fff);font-family:var(--font-mono);font-size:.76rem;letter-spacing:.13em;margin-bottom:.7rem;text-transform:uppercase}.project-panel__content h3{font-family:var(--font-display);font-size:clamp(2rem,4.6vw,4rem);letter-spacing:-.045em;line-height:.98;margin-bottom:.7rem}.project-panel__desc{color:var(--text-muted);line-height:1.72;margin-bottom:1.15rem;max-width:34rem}.project-panel__links,.project-panel__tech{display:flex;flex-wrap:wrap;gap:.55rem}.project-panel__tech{margin-bottom:1.25rem}.project-panel__link{align-items:center;background:var(--panel-accent);border:1px solid transparent;border-radius:999px;color:#04110a;display:inline-flex;font-size:.88rem;font-weight:700;gap:.45rem;justify-content:center;min-height:42px;padding:.68rem 1rem;transition:box-shadow .25s ease,border-color .25s ease,-webkit-transform .25s ease;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,-webkit-transform .25s ease}.project-panel__link:hover{box-shadow:0 12px 30px color-mix(in srgb,var(--panel-accent) 28%,transparent);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.project-panel__link--ghost{background:hsla(0,0%,100%,.025);border-color:color-mix(in srgb,var(--panel-accent) 30%,transparent);color:var(--text)}.project-panel__link--ghost:hover{box-shadow:none;color:color-mix(in srgb,var(--panel-accent) 76%,#fff)}.project-nav{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:-.4rem;position:relative;z-index:5}.project-nav__button{background:hsla(0,0%,100%,.035);border:1px solid var(--border-strong);border-radius:50%;color:var(--accent-soft);cursor:pointer;display:inline-grid;height:44px;place-items:center;transition:border-color .25s ease,background .25s ease,opacity .25s ease,-webkit-transform .25s ease;transition:transform .25s ease,border-color .25s ease,background .25s ease,opacity .25s ease;transition:transform .25s ease,border-color .25s ease,background .25s ease,opacity .25s ease,-webkit-transform .25s ease;width:44px}.project-nav__button:hover:not(:disabled){background:rgba(52,211,153,.12);border-color:var(--accent);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.project-nav__button:disabled{cursor:not-allowed;opacity:.35}.project-nav__progress{color:var(--accent-soft);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.12em;min-width:min(560px,58vw);text-align:center}.project-nav__segments{grid-gap:.32rem;display:grid;gap:.32rem;grid-template-columns:repeat(var(--segments),minmax(10px,1fr));margin-top:.7rem}.project-nav__segments button{background:rgba(112,245,197,.17);border:0;border-radius:999px;cursor:pointer;height:3px;transition:background .25s ease,-webkit-transform .25s ease;transition:background .25s ease,transform .25s ease;transition:background .25s ease,transform .25s ease,-webkit-transform .25s ease}.project-nav__segments button.is-active{background:var(--accent-soft);box-shadow:0 0 18px rgba(112,245,197,.36);-webkit-transform:scaleY(1.7);transform:scaleY(1.7)}.matrix-env{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:0}.matrix-env__halo{background:radial-gradient(circle,rgba(69,230,173,.12),transparent 58%);-webkit-filter:blur(18px);filter:blur(18px);inset:12% 18%;opacity:.8;position:absolute}.matrix-env__grid{background-image:linear-gradient(rgba(112,245,197,.045) 1px,transparent 0),linear-gradient(90deg,rgba(112,245,197,.04) 1px,transparent 0);background-size:70px 70px;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 38%,#000,transparent 80%);mask-image:radial-gradient(circle at 50% 38%,#000,transparent 80%);opacity:.42;position:absolute}.matrix-env__streams span{color:rgba(112,245,197,.2);font-family:var(--font-mono);font-size:.72rem;left:var(--stream-x);letter-spacing:.08em;position:absolute;top:-12%;top:var(--stream-y);-webkit-writing-mode:vertical-rl;writing-mode:vertical-rl}.matrix-env__particles i{background:rgba(112,245,197,.52);border-radius:50%;box-shadow:0 0 14px rgba(112,245,197,.55);height:3px;left:var(--particle-x);position:absolute;top:var(--particle-y);width:3px}@-webkit-keyframes contentRise{0%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes contentRise{0%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes titleResolve{0%{opacity:0;text-shadow:3px 0 rgba(112,245,197,.4),-3px 0 rgba(45,212,191,.28);-webkit-transform:translateY(10px) skewX(-4deg);transform:translateY(10px) skewX(-4deg)}45%{opacity:.92;text-shadow:-2px 0 rgba(112,245,197,.3),2px 0 rgba(243,247,245,.16)}to{opacity:1;text-shadow:none;-webkit-transform:translateY(0) skewX(0);transform:translateY(0) skewX(0)}}@keyframes titleResolve{0%{opacity:0;text-shadow:3px 0 rgba(112,245,197,.4),-3px 0 rgba(45,212,191,.28);-webkit-transform:translateY(10px) skewX(-4deg);transform:translateY(10px) skewX(-4deg)}45%{opacity:.92;text-shadow:-2px 0 rgba(112,245,197,.3),2px 0 rgba(243,247,245,.16)}to{opacity:1;text-shadow:none;-webkit-transform:translateY(0) skewX(0);transform:translateY(0) skewX(0)}}@media (max-width:980px){.project-showcase{min-height:760px}.project-scene{min-height:620px;-webkit-perspective:1050px;perspective:1050px}.project-panel{width:min(640px,82vw)}.project-panel__inner{grid-template-columns:1fr}.project-panel__visual{min-height:210px}}@media (max-width:640px){.project-showcase{background:linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012)),#050807;border-radius:22px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 20px 54px rgba(0,0,0,.3);min-height:auto;padding:.85rem}.project-showcase__topline{font-size:.62rem;letter-spacing:.1em}.project-scene{min-height:0;padding:1rem 0 .5rem;-webkit-perspective:none;perspective:none}.matrix-env__halo,.matrix-env__particles,.matrix-env__streams,.project-scene__depth{display:none}.matrix-env__grid{background-size:52px 52px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 76%);mask-image:linear-gradient(180deg,#000,transparent 76%);opacity:.18}.project-scene__deck{display:grid;min-height:0;position:relative;-webkit-transform-style:flat;transform-style:flat}.project-panel{grid-area:1/1;left:auto;margin:0 auto;min-height:555px;opacity:0!important;pointer-events:none;position:relative;top:auto;-webkit-transform:translateX(18px)!important;transform:translateX(18px)!important;-webkit-transform-style:flat;transform-style:flat;transition:opacity .26s ease,visibility 0s linear .26s,-webkit-transform .26s ease;transition:opacity .26s ease,transform .26s ease,visibility 0s linear .26s;transition:opacity .26s ease,transform .26s ease,visibility 0s linear .26s,-webkit-transform .26s ease;visibility:hidden;width:min(390px,86vw);z-index:0!important}.project-panel[data-mobile-hidden=true]{display:none}.project-panel.is-active{opacity:1!important;pointer-events:auto;-webkit-transform:translateX(0)!important;transform:translateX(0)!important;transition:opacity .26s ease,-webkit-transform .26s ease;transition:opacity .26s ease,transform .26s ease;transition:opacity .26s ease,transform .26s ease,-webkit-transform .26s ease;visibility:visible;z-index:1!important}.project-panel__inner{background:radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--panel-accent) 10%,transparent),transparent 28%),linear-gradient(135deg,hsla(0,0%,100%,.062),hsla(0,0%,100%,.02) 45%,rgba(52,211,153,.02)),rgba(4,9,7,.9);border-radius:20px;box-shadow:0 0 24px color-mix(in srgb,var(--panel-accent) 7%,transparent),0 18px 42px rgba(0,0,0,.34);padding:1rem;-webkit-transform:none;transform:none}.project-panel__inner:after,.project-panel__inner:before{display:none}.project-panel__meta{font-size:.65rem}.project-panel__content h3{font-size:clamp(2rem,13vw,3rem)}.project-panel__visual{min-height:190px;-webkit-transform:none;transform:none}.project-panel__visual-grid{background-size:32px 32px;opacity:.34}.project-panel__art{-webkit-filter:drop-shadow(0 12px 18px rgba(0,0,0,.28));filter:drop-shadow(0 12px 18px rgba(0,0,0,.28))}.project-panel__art,.project-panel__content{-webkit-transform:none;transform:none}.project-panel__desc{font-size:.95rem;line-height:1.62}.project-panel__link{flex:1 1 auto;min-width:132px}.project-nav{gap:.7rem;margin-top:.5rem}.project-nav__progress{min-width:48vw}.project-nav__segments{grid-template-columns:repeat(7,minmax(10px,1fr))}.project-nav__segments button{height:4px}}@media (prefers-reduced-motion:reduce){.matrix-env__particles i,.matrix-env__streams span,.project-panel,.project-panel.is-active,.project-panel.is-active .project-panel__art,.project-panel.is-active .project-panel__content h3,.project-panel.is-active .project-panel__desc,.project-panel.is-active .project-panel__kicker,.project-panel.is-active .project-panel__links,.project-panel.is-active .project-panel__tech{-webkit-animation:none!important;animation:none!important;transition:none!important}.project-panel{-webkit-filter:none;filter:none;opacity:0}.project-panel.is-active{opacity:1;-webkit-transform:translate3d(-50%,-50%,0) scale(1);transform:translate3d(-50%,-50%,0) scale(1)}.matrix-env__particles,.matrix-env__streams,.project-scene__depth{display:none}}.articles__intro{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.articles__layout{grid-gap:1.25rem;align-items:stretch;display:grid;gap:1.25rem;grid-template-columns:1.3fr .7fr;margin-top:var(--section-content-gap)}.articles__carousel{padding:1.1rem}.articles__controls{align-items:center;color:var(--text-dim);display:flex;font-family:var(--font-mono);font-size:.8rem;justify-content:space-between;margin-bottom:.9rem}.articles__arrow{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:50%;color:var(--text);cursor:pointer;display:inline-flex;height:42px;justify-content:center;transition:border-color .25s ease,color .25s ease,-webkit-transform .25s ease;transition:border-color .25s ease,color .25s ease,transform .25s ease;transition:border-color .25s ease,color .25s ease,transform .25s ease,-webkit-transform .25s ease;width:42px}.articles__arrow:hover{border-color:var(--border-strong);color:var(--accent-soft);-webkit-transform:scale(1.05);transform:scale(1.05)}.articles__stage{min-height:360px;position:relative}.articles__card,.articles__stage{border-radius:18px;overflow:hidden}.articles__card{border:1px solid var(--border);display:block;inset:0;position:absolute}.articles__image{height:100%;object-fit:cover;transition:-webkit-transform .7s var(--ease-out);transition:transform .7s var(--ease-out);transition:transform .7s var(--ease-out),-webkit-transform .7s var(--ease-out);width:100%}.articles__card:hover .articles__image{-webkit-transform:scale(1.05);transform:scale(1.05)}.articles__overlay{background:linear-gradient(180deg,transparent,rgba(5,7,6,.92));inset:auto 0 0;padding:1.25rem;position:absolute}.articles__overlay h3{font-family:var(--font-display);font-size:clamp(1.15rem,2.4vw,1.55rem);letter-spacing:-.03em;margin-bottom:.45rem}.articles__overlay p{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--text-muted);display:-webkit-box;font-size:.95rem;line-height:1.55;overflow:hidden}.articles__side{background:var(--bg-elevated);border:1px solid var(--border);border-radius:22px;min-height:100%;overflow:hidden}.articles__side,.articles__side-frame{align-items:center;display:flex;justify-content:center}.articles__side-frame{height:100%;isolation:isolate;position:relative;width:100%}.articles__side-image{-webkit-filter:saturate(1.1);filter:saturate(1.1);height:100%;object-fit:contain;object-position:center;-webkit-transform:scale(1.02);transform:scale(1.02);transition:-webkit-filter .4s var(--ease-out),-webkit-transform .4s var(--ease-out);transition:filter .4s var(--ease-out),transform .4s var(--ease-out);transition:filter .4s var(--ease-out),transform .4s var(--ease-out),-webkit-filter .4s var(--ease-out),-webkit-transform .4s var(--ease-out);width:100%}.articles__matrix{border-radius:inherit;inset:0;opacity:0;overflow:hidden;pointer-events:none;position:absolute;transition:opacity .35s var(--ease-out);z-index:2}.articles__matrix:before{border:1px solid rgba(52,211,153,.55);border-radius:4px;box-shadow:0 0 0 1px rgba(52,211,153,.15),0 0 18px rgba(52,211,153,.35),inset 0 0 24px rgba(52,211,153,.12);content:"";inset:8px;opacity:0;position:absolute;-webkit-transform:scale(.985);transform:scale(.985);transition:opacity .35s var(--ease-out),box-shadow .35s ease,-webkit-transform .45s var(--ease-out);transition:opacity .35s var(--ease-out),transform .45s var(--ease-out),box-shadow .35s ease;transition:opacity .35s var(--ease-out),transform .45s var(--ease-out),box-shadow .35s ease,-webkit-transform .45s var(--ease-out)}.articles__matrix:after{background:linear-gradient(180deg,rgba(52,211,153,.1),transparent 28%,transparent 72%,rgba(52,211,153,.08)),repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(52,211,153,.04) 3px);content:"";inset:0;transition:opacity .35s var(--ease-out)}.articles__matrix-rain,.articles__matrix:after{mix-blend-mode:screen;opacity:0;position:absolute}.articles__matrix-rain{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='240'%3E%3Ctext x='8' y='18' fill='%2334d399' font-family='monospace' font-size='11' opacity='.55'%3E0%3Ctspan x='8' dy='16'%3E1%3C/tspan%3E%3Ctspan x='8' dy='16'%3E0%3C/tspan%3E%3Ctspan x='8' dy='16'%3E1%3C/tspan%3E%3Ctspan x='8' dy='16'%3E7%3C/tspan%3E%3Ctspan x='8' dy='16'%3E0%3C/tspan%3E%3Ctspan x='8' dy='16'%3E1%3C/tspan%3E%3Ctspan x='8' dy='16'%3Eλ%3C/tspan%3E%3Ctspan x='8' dy='16'%3E0%3C/tspan%3E%3Ctspan x='8' dy='16'%3E1%3C/tspan%3E%3C/text%3E%3Ctext x='40' y='10' fill='%236ee7b7' font-family='monospace' font-size='11' opacity='.4'%3E1%3Ctspan x='40' dy='16'%3E0%3C/tspan%3E%3Ctspan x='40' dy='16'%3E1%3C/tspan%3E%3Ctspan x='40' dy='16'%3E0%3C/tspan%3E%3Ctspan x='40' dy='16'%3E1%3C/tspan%3E%3Ctspan x='40' dy='16'%3EΣ%3C/tspan%3E%3Ctspan x='40' dy='16'%3E0%3C/tspan%3E%3Ctspan x='40' dy='16'%3E1%3C/tspan%3E%3Ctspan x='40' dy='16'%3E0%3C/tspan%3E%3Ctspan x='40' dy='16'%3E1%3C/tspan%3E%3C/text%3E%3Ctext x='72' y='22' fill='%2334d399' font-family='monospace' font-size='11' opacity='.5'%3E0%3Ctspan x='72' dy='16'%3E1%3C/tspan%3E%3Ctspan x='72' dy='16'%3E0%3C/tspan%3E%3Ctspan x='72' dy='16'%3E1%3C/tspan%3E%3Ctspan x='72' dy='16'%3E0%3C/tspan%3E%3Ctspan x='72' dy='16'%3E1%3C/tspan%3E%3Ctspan x='72' dy='16'%3E0%3C/tspan%3E%3Ctspan x='72' dy='16'%3Eπ%3C/tspan%3E%3Ctspan x='72' dy='16'%3E1%3C/tspan%3E%3Ctspan x='72' dy='16'%3E0%3C/tspan%3E%3C/text%3E%3Ctext x='104' y='6' fill='%23a7f3d0' font-family='monospace' font-size='11' opacity='.35'%3E1%3Ctspan x='104' dy='16'%3E0%3C/tspan%3E%3Ctspan x='104' dy='16'%3E1%3C/tspan%3E%3Ctspan x='104' dy='16'%3E0%3C/tspan%3E%3Ctspan x='104' dy='16'%3E1%3C/tspan%3E%3Ctspan x='104' dy='16'%3E0%3C/tspan%3E%3Ctspan x='104' dy='16'%3E1%3C/tspan%3E%3Ctspan x='104' dy='16'%3E0%3C/tspan%3E%3Ctspan x='104' dy='16'%3E1%3C/tspan%3E%3Ctspan x='104' dy='16'%3E0%3C/tspan%3E%3C/text%3E%3Ctext x='136' y='14' fill='%2334d399' font-family='monospace' font-size='11' opacity='.45'%3E0%3Ctspan x='136' dy='16'%3E1%3C/tspan%3E%3Ctspan x='136' dy='16'%3E0%3C/tspan%3E%3Ctspan x='136' dy='16'%3E1%3C/tspan%3E%3Ctspan x='136' dy='16'%3E0%3C/tspan%3E%3Ctspan x='136' dy='16'%3E1%3C/tspan%3E%3Ctspan x='136' dy='16'%3E0%3C/tspan%3E%3Ctspan x='136' dy='16'%3E1%3C/tspan%3E%3Ctspan x='136' dy='16'%3E0%3C/tspan%3E%3Ctspan x='136' dy='16'%3E1%3C/tspan%3E%3C/text%3E%3C/svg%3E");background-size:160px 240px;inset:-40% 0 0;mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent)}.articles__matrix-scan{background:linear-gradient(180deg,transparent,rgba(110,231,183,.12),rgba(52,211,153,.22),rgba(110,231,183,.08),transparent);height:28%;left:10px;mix-blend-mode:screen;opacity:0;position:absolute;right:10px;top:-30%}.articles__side:focus-within .articles__matrix,.articles__side:hover .articles__matrix{opacity:1}.articles__side:focus-within .articles__matrix:before,.articles__side:hover .articles__matrix:before{opacity:1;-webkit-transform:scale(1);transform:scale(1)}.articles__side:focus-within .articles__matrix:after,.articles__side:hover .articles__matrix:after{opacity:1}.articles__side:focus-within .articles__matrix-rain,.articles__side:hover .articles__matrix-rain{-webkit-animation:matrixRain 7s linear infinite;animation:matrixRain 7s linear infinite;opacity:.85}.articles__side:focus-within .articles__matrix-scan,.articles__side:hover .articles__matrix-scan{-webkit-animation:matrixScan 2.4s ease-in-out infinite;animation:matrixScan 2.4s ease-in-out infinite;opacity:1}.articles__side:focus-within .articles__side-image,.articles__side:hover .articles__side-image{-webkit-filter:saturate(1.2) brightness(1.05) contrast(1.05);filter:saturate(1.2) brightness(1.05) contrast(1.05);-webkit-transform:scale(1.035);transform:scale(1.035)}.articles__side:hover{border-color:rgba(52,211,153,.45);box-shadow:0 0 0 1px rgba(52,211,153,.12),0 16px 40px rgba(52,211,153,.12)}@-webkit-keyframes matrixRain{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(40%);transform:translateY(40%)}}@keyframes matrixRain{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(40%);transform:translateY(40%)}}@-webkit-keyframes matrixScan{0%{top:-30%}to{top:100%}}@keyframes matrixScan{0%{top:-30%}to{top:100%}}@media (prefers-reduced-motion:reduce){.articles__side:focus-within .articles__matrix-rain,.articles__side:focus-within .articles__matrix-scan,.articles__side:hover .articles__matrix-rain,.articles__side:hover .articles__matrix-scan{-webkit-animation:none;animation:none}}html[data-motion=off] .articles__side:focus-within .articles__matrix-rain,html[data-motion=off] .articles__side:hover .articles__matrix-rain{-webkit-animation:none;animation:none;opacity:.45}html[data-motion=off] .articles__side:focus-within .articles__matrix-scan,html[data-motion=off] .articles__side:hover .articles__matrix-scan{-webkit-animation:none;animation:none;opacity:0}@media (max-width:900px){.articles__layout{grid-template-columns:1fr}.articles__stage{min-height:300px}.articles__side{max-height:none;min-height:0;padding:.75rem;width:100%}.articles__side-frame{border-radius:20px;height:auto;max-width:100%;overflow:hidden;width:min(100%,420px)}.articles__side-image{display:block;height:auto;margin:0 auto;max-height:none;max-width:none;width:100%}}@media (min-width:641px) and (max-width:900px){.articles__side{background:transparent;border-color:transparent}.articles__side:focus-within,.articles__side:hover{border-color:transparent;box-shadow:none}.articles__side:focus-within .articles__matrix,.articles__side:focus-within .articles__matrix:before,.articles__side:hover .articles__matrix,.articles__side:hover .articles__matrix:after,.articles__side:hover .articles__matrix:before{opacity:0}.articles__side:focus-within .articles__matrix:after{opacity:0}.articles__side:focus-within .articles__matrix-rain,.articles__side:hover .articles__matrix-rain,.articles__side:hover .articles__matrix-scan{-webkit-animation:none;animation:none;opacity:0}.articles__side:focus-within .articles__matrix-scan{-webkit-animation:none;animation:none;opacity:0}.articles__side:focus-within .articles__side-image,.articles__side:hover .articles__side-image{-webkit-filter:saturate(1.1);filter:saturate(1.1);-webkit-transform:scale(1.02);transform:scale(1.02)}.articles__side-frame:focus .articles__matrix,.articles__side-frame:hover .articles__matrix{opacity:1}.articles__side-frame:focus .articles__matrix:before,.articles__side-frame:hover .articles__matrix:before{opacity:1;-webkit-transform:scale(1);transform:scale(1)}.articles__side-frame:focus .articles__matrix:after,.articles__side-frame:hover .articles__matrix:after{opacity:1}.articles__side-frame:focus .articles__matrix-rain,.articles__side-frame:hover .articles__matrix-rain{-webkit-animation:matrixRain 7s linear infinite;animation:matrixRain 7s linear infinite;opacity:.85}.articles__side-frame:focus .articles__matrix-scan,.articles__side-frame:hover .articles__matrix-scan{-webkit-animation:matrixScan 2.4s ease-in-out infinite;animation:matrixScan 2.4s ease-in-out infinite;opacity:1}.articles__side-frame:focus .articles__side-image,.articles__side-frame:hover .articles__side-image{-webkit-filter:saturate(1.2) brightness(1.05) contrast(1.05);filter:saturate(1.2) brightness(1.05) contrast(1.05);-webkit-transform:scale(1.035);transform:scale(1.035)}}@media (max-width:640px){.articles__stage{min-height:260px}.articles__side{padding:.5rem}.articles__overlay{padding:1rem}.articles__overlay p{-webkit-line-clamp:2}}.contact__wrap{grid-gap:clamp(1.5rem,4vw,3rem);align-items:start;display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:1.05fr .95fr}.contact__headline{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.6rem);letter-spacing:-.045em;line-height:1.05;margin:.8rem 0 1.1rem}.contact__channels{grid-gap:.75rem;display:grid;gap:.75rem;margin:2rem 0 1.4rem}.contact__channel{align-items:center;display:flex;gap:.9rem;padding:1rem 1.1rem;transition:border-color .3s ease,-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out),border-color .3s ease;transition:transform .3s var(--ease-out),border-color .3s ease,-webkit-transform .3s var(--ease-out)}.contact__channel:hover{border-color:var(--border-strong);-webkit-transform:translateX(4px);transform:translateX(4px)}.contact__channel svg{color:var(--accent-soft);font-size:1.2rem}.contact__channel span{color:var(--text-dim);display:block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.contact__channel strong{font-size:1rem}.contact__socials{display:flex;gap:.7rem}.contact__socials a{align-items:center;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);display:inline-flex;height:42px;justify-content:center;transition:color .25s ease,border-color .25s ease,-webkit-transform .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease,-webkit-transform .25s ease;width:42px}.contact__socials a:hover{border-color:var(--border-strong);color:var(--accent-soft);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.contact__form-card{padding:1.6rem 1.5rem 1.7rem}.contact__form-card h3{font-family:var(--font-display);font-size:1.45rem;letter-spacing:-.03em;margin-bottom:.35rem}.contact__form-card>p{color:var(--text-muted);margin-bottom:1.3rem}.contact__honeypot{height:0;left:-9999px;overflow:hidden;position:absolute}.contact__field{margin-bottom:1rem}.contact__field label{color:var(--text-muted);display:block;font-size:.9rem;margin-bottom:.4rem}.contact__field input,.contact__field textarea{background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:14px;color:var(--text);padding:.9rem 1rem;resize:vertical;transition:border-color .25s ease,box-shadow .25s ease,-webkit-transform .3s var(--ease-out);transition:border-color .25s ease,box-shadow .25s ease,transform .3s var(--ease-out);transition:border-color .25s ease,box-shadow .25s ease,transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out);width:100%}.contact__field input:focus,.contact__field textarea:focus{border-color:var(--border-strong);box-shadow:0 0 0 4px rgba(52,211,153,.12);outline:none;-webkit-transform:translateY(-1px);transform:translateY(-1px)}.contact__headline span{background:linear-gradient(120deg,#fff 10%,#a7f3d0 40%,#6ee7b7 55%,#34d399 75%,#fff);-webkit-background-clip:text;background-clip:text;background-size:100% 100%;color:transparent;display:block}html[data-motion=full] .contact__headline span{-webkit-animation:contactHeadlineShift 12s ease-in-out infinite;animation:contactHeadlineShift 12s ease-in-out infinite;background-size:220% 100%}@-webkit-keyframes contactHeadlineShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes contactHeadlineShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.contact__field input::-webkit-input-placeholder,.contact__field textarea::-webkit-input-placeholder{color:var(--text-dim)}.contact__field input::placeholder,.contact__field textarea::placeholder{color:var(--text-dim)}.contact__status{font-size:.92rem;margin-top:.9rem}.contact__status.is-success{color:var(--accent-soft)}.contact__status.is-error{color:var(--danger)}@media (max-width:900px){.contact__wrap{grid-template-columns:1fr}}.footer{background:rgba(0,0,0,.25);border-top:1px solid var(--border);overflow:hidden;padding:1.35rem 0 2.4rem}.footer__inner{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:1fr auto 1fr}.footer__brand{margin-bottom:.15rem}.footer__brand.logo--with-avatar{padding-top:calc(80px - .35em);padding-top:calc(var(--logo-avatar-size, 80px) - .35em)}.footer__note{color:var(--text-dim);font-size:.88rem;margin-top:.2rem}.footer__links{display:flex;gap:.75rem}.footer__links a{align-items:center;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);display:inline-flex;height:38px;justify-content:center;transition:color .25s ease,border-color .25s ease,-webkit-transform .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease;transition:color .25s ease,border-color .25s ease,transform .25s ease,-webkit-transform .25s ease;width:38px}.footer__links a:hover{border-color:var(--border-strong);color:var(--accent-soft);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.footer__copy{color:var(--text-dim);font-size:.88rem;text-align:right}@media (max-width:720px){.footer__inner{grid-template-columns:1fr;justify-items:center}.footer__copy,.footer__inner{text-align:center}}.cursor-dot,.cursor-ring{left:0;mix-blend-mode:difference;pointer-events:none;position:fixed;top:0;will-change:transform;z-index:10000}.cursor-dot{background:#fff;border-radius:50%;height:8px;width:8px}.cursor-ring{border:1px solid hsla(0,0%,100%,.75);border-radius:50%;height:44px;width:44px}.cursor-ring.is-hover{border-color:#6ee7b7}@media (pointer:coarse){.cursor-dot,.cursor-ring{display:none}}.ambient{background:var(--bg);contain:strict;inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:-2}.ambient__base,.ambient__matrix,.ambient__vignette{inset:0;position:absolute}.ambient__base{background:radial-gradient(ellipse 90% 55% at 10% -12%,rgba(52,211,153,.14),transparent 58%),radial-gradient(ellipse 72% 48% at 92% 4%,rgba(45,212,191,.08),transparent 54%),radial-gradient(ellipse 60% 48% at 50% 112%,rgba(5,150,105,.12),transparent 60%),var(--bg)}.ambient__matrix{-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mix-blend-mode:screen;opacity:.34;overflow:hidden}.ambient__matrix span{-webkit-animation:matrixFall var(--duration) linear infinite;animation:matrixFall var(--duration) linear infinite;-webkit-animation-delay:var(--delay);animation-delay:var(--delay);color:rgba(110,231,183,.7);font-family:var(--font-mono);font-size:clamp(.8rem,1.15vw,1rem);left:calc((var(--i)/28)*100%);letter-spacing:.04em;line-height:1.45;opacity:var(--column-opacity);overflow-wrap:anywhere;position:absolute;text-shadow:0 0 10px rgba(52,211,153,.48);top:-42rem;-webkit-transform:translateY(-100%);transform:translateY(-100%);white-space:normal;width:1ch}.ambient__matrix span:nth-child(3n){color:rgba(236,253,245,.74)}.ambient__matrix span:nth-child(4n){font-size:clamp(.72rem,.95vw,.88rem);opacity:.28}.ambient__matrix span:nth-child(5n){-webkit-filter:blur(.6px);filter:blur(.6px)}.ambient__vignette{background:radial-gradient(ellipse at center,transparent 42%,rgba(0,0,0,.54) 100%),linear-gradient(90deg,rgba(0,0,0,.14),transparent 18%,transparent 82%,rgba(0,0,0,.14))}.ambient--lite .ambient__matrix{opacity:.2}.ambient--off .ambient__matrix{display:none}@-webkit-keyframes matrixFall{to{-webkit-transform:translateY(calc(100vh + 52rem));transform:translateY(calc(100vh + 52rem))}}@keyframes matrixFall{to{-webkit-transform:translateY(calc(100vh + 52rem));transform:translateY(calc(100vh + 52rem))}}@media (prefers-reduced-motion:reduce){.ambient__matrix span{-webkit-animation:none!important;animation:none!important;-webkit-transform:translateY(0);transform:translateY(0)}}.scroll-progress{background:linear-gradient(90deg,var(--accent-deep),var(--accent),var(--accent-soft));box-shadow:0 0 12px var(--accent-glow);height:2px;left:0;pointer-events:none;position:fixed;right:0;top:0;-webkit-transform-origin:0 50%;transform-origin:0 50%;z-index:1300}.section-heading{max-width:46rem}.section-heading--compact .section-title{margin-bottom:0}.section-heading--center{margin-inline:auto;text-align:center}.section-heading--center .section-label{justify-content:center}.section-heading--center .section-lead{margin-inline:auto}
/*# sourceMappingURL=main.4582f523.css.map*/