﻿:root{--bg:#0b0b12;--surface:rgba(24,24,37,.66);--line:rgba(255,255,255,.12);--text:#f5f3ee;--muted:#9c9aa9;--lime:#d8ff62;--pink:#ff78b9;--cyan:#74e7ff;--mono:"DM Mono",monospace;--sans:"Manrope","Noto Sans SC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden}.water-ripple{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}a{text-decoration:none;color:inherit}button{font:inherit;color:inherit}.ambient{position:fixed;width:44vw;height:44vw;border-radius:50%;filter:blur(90px);opacity:.22;pointer-events:none;z-index:-1}.ambient-one{background:var(--pink);top:-20%;left:-12%;animation:drift-one 15s ease-in-out infinite alternate}.ambient-two{background:#735bff;right:-14%;top:22%;animation:drift-two 18s ease-in-out infinite alternate-reverse}.ambient-three{background:var(--cyan);bottom:-30%;left:26%;animation:drift-three 17s ease-in-out infinite alternate}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:0 28px;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;letter-spacing:.18em}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--lime);color:#11111a;font-size:14px}.brand-dot,.heading-accent{color:var(--lime)}.site-nav{display:flex;gap:34px}.nav-link{font-size:13px;color:var(--muted);transition:color .25s}.nav-link:hover,.nav-link.active{color:var(--text)}.header-cta{border:1px solid var(--line);border-radius:100px;padding:11px 17px;font-size:12px}.header-cta span,.button span,.text-link span{margin-left:10px}.menu-toggle{display:none;background:none;border:0}.section-shell{max-width:1180px;margin:auto;padding-left:28px;padding-right:28px}.hero{min-height:calc(100vh - 84px);display:flex;align-items:center;justify-content:space-between;padding-top:45px;padding-bottom:90px}.eyebrow{font:500 10px var(--mono);letter-spacing:.18em;color:var(--muted);margin:0 0 24px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px var(--lime);margin-right:9px}.hero h1{font-size:clamp(62px,8.5vw,116px);line-height:.94;letter-spacing:-.07em;margin:0 0 34px;font-weight:800}.hero h1 em{font-style:normal;color:var(--lime)}.hero-description{color:var(--muted);line-height:1.8;font-size:15px}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{padding:15px 20px;border-radius:4px;font-size:12px;font-weight:700}.button-primary{background:var(--lime);color:#12131b}.button-ghost{border:1px solid var(--line)}.hero-meta{display:flex;align-items:center;gap:15px;color:#666573;font:10px var(--mono);margin-top:70px;letter-spacing:.1em}.meta-line{width:75px;height:1px;background:var(--line)}.hero-visual{position:relative;width:430px;height:470px;display:grid;place-items:center}.avatar-card{width:250px;height:320px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.2);border-radius:145px 145px 18px 18px;overflow:hidden;transform:rotate(5deg);box-shadow:0 25px 70px rgba(0,0,0,.3)}.avatar-glow{position:absolute;width:250px;height:250px;background:radial-gradient(circle,var(--pink),transparent 65%);opacity:.65;top:30px}.avatar-face{display:grid;place-items:center;width:145px;height:145px;border-radius:50%;background:linear-gradient(135deg,#f9c0b6,#c078ba 60%,#5e5bea);font-size:92px;font-weight:900;color:rgba(255,255,255,.75);z-index:1}.avatar-caption{position:absolute;bottom:27px;left:28px;font:10px/1.5 var(--mono);letter-spacing:.13em}.orbit{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%;transform:rotate(-25deg)}.orbit-large{width:395px;height:180px;animation:spin 18s linear infinite}.orbit-small{width:320px;height:400px;transform:rotate(55deg);animation:spin 23s linear infinite reverse}.floating-note{position:absolute;font:10px/1.5 var(--mono);letter-spacing:.1em;color:var(--muted)}.note-top{top:80px;right:2px}.note-bottom{bottom:59px;left:5px}.note-bottom strong{font-size:24px;color:var(--lime);vertical-align:middle}.content-section{padding-top:120px;padding-bottom:110px}.section-heading h2{font-size:clamp(40px,6vw,72px);letter-spacing:-.06em;margin:0;font-weight:800}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;margin-top:55px}.large-copy{font-size:clamp(24px,3vw,38px);line-height:1.35;letter-spacing:-.04em;margin:0 0 26px}.about-intro>p:last-child{max-width:540px;line-height:1.9;color:var(--muted);font-size:14px}.fact-card{border-top:1px solid var(--line)}.fact-item{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);font-size:13px}.fact-item span,.contact-label{font:10px var(--mono);color:var(--muted);letter-spacing:.14em}.fact-item strong{font-weight:500;text-align:right}.heading-row{display:flex;align-items:end;justify-content:space-between}.live-badge{font:10px var(--mono);color:var(--muted);padding-bottom:12px}.project-toolbar{display:flex;justify-content:space-between;align-items:center;margin:45px 0 22px;color:var(--muted);font-size:13px}.project-toolbar p{margin:0}.filter-group{display:flex;gap:8px}.filter-button{border:1px solid var(--line);background:transparent;padding:8px 13px;border-radius:100px;font:10px var(--mono);cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--lime);color:#14151a;border-color:var(--lime)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.project-card{min-height:225px;background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:24px;display:flex;flex-direction:column;transition:transform .3s,border-color .3s,background .3s}.project-card:hover{transform:translateY(-7px);border-color:rgba(216,255,98,.5);background:rgba(35,35,47,.8)}.project-top{display:flex;justify-content:space-between}.project-number{font:10px var(--mono);color:var(--muted)}.project-language{font:10px var(--mono);color:var(--lime)}.project-card h3{font-size:22px;margin:35px 0 10px;letter-spacing:-.04em}.project-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card .project-link{margin-top:auto;padding-top:20px;font:10px var(--mono);color:var(--muted)}.project-card:hover .project-link{color:var(--lime)}.project-state{grid-column:1/-1;min-height:225px;display:grid;place-items:center;align-content:center;gap:14px;border:1px dashed var(--line);color:var(--muted);font-size:13px}.project-state p{margin:0}.loader{width:22px;height:22px;border:2px solid var(--line);border-top-color:var(--lime);border-radius:50%;animation:spin 1s linear infinite}.section-link-wrap{text-align:center;margin-top:36px}.text-link{font:11px var(--mono);color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:8px}.text-link:hover{color:var(--lime);border-color:var(--lime)}.contact-section{padding-bottom:130px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:50px}.contact-card{min-height:210px;padding:25px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:5px;background:var(--surface);transition:transform .3s,border-color .3s;cursor:pointer;text-align:left}.contact-card:hover{transform:translateY(-6px);border-color:rgba(216,255,98,.55)}.card-icon{font-size:27px;color:var(--lime);margin-bottom:auto}.contact-card strong{font-size:18px;margin-top:13px}.contact-card strong span{float:right;margin-left:18px;color:var(--lime)}.contact-card small{color:var(--muted);margin-top:10px}.copy-hint{font:10px var(--mono)!important;color:var(--muted)!important;margin-top:5px}.copy-feedback{transition:color .2s}.qq-card.copied .copy-feedback{color:var(--lime)}.site-footer{border-top:1px solid var(--line);padding-top:24px;padding-bottom:30px;display:flex;justify-content:space-between;color:#666573;font:10px var(--mono);letter-spacing:.08em}.site-footer a:hover{color:var(--lime)}@keyframes drift-one{0%{transform:translate(-2%,0) scale(1)}50%{transform:translate(9%,8%) scale(1.14)}100%{transform:translate(3%,16%) scale(1.04)}}@keyframes drift-two{0%{transform:translate(2%,-3%) scale(1.04)}50%{transform:translate(-10%,10%) scale(1.16)}100%{transform:translate(-4%,-4%) scale(.96)}}@keyframes drift-three{0%{transform:translate(-4%,2%) scale(.96)}50%{transform:translate(8%,-10%) scale(1.15)}100%{transform:translate(12%,4%) scale(1.02)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:750px){.site-header{height:72px}.site-nav{display:none;position:absolute;top:65px;left:20px;right:20px;padding:18px;flex-direction:column;gap:18px;background:#171722;border:1px solid var(--line);border-radius:5px}.site-nav.open{display:flex}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px}.menu-toggle span{display:block;width:22px;height:1px;background:var(--text)}.hero{min-height:auto;display:block;padding-top:75px;padding-bottom:30px}.hero h1{font-size:clamp(58px,18vw,90px)}.hero-visual{width:100%;height:360px;margin-top:45px;transform:scale(.8)}.hero-meta{margin-top:45px}.content-section{padding-top:80px;padding-bottom:70px}.about-grid{display:block;margin-top:35px}.fact-card{margin-top:42px}.heading-row{display:block}.live-badge{display:inline-block;margin-top:25px}.project-toolbar{display:block;margin-top:35px}.filter-group{margin-top:18px}.project-grid,.contact-grid{grid-template-columns:1fr}.project-card{min-height:205px}.contact-card{min-height:180px}.site-footer{display:block;line-height:2}.site-footer a{display:block;margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.scroll-float{transform:translate3d(0,var(--scroll-shift,0px),0);will-change:transform}
@media(prefers-reduced-motion:reduce){.scroll-float{transform:none!important;will-change:auto}}
@media(max-width:750px){.hero-visual.scroll-float{transform:scale(.8) translate3d(0,var(--scroll-shift,0px),0)}}
