:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0e13;--panel:#ffffff0e;--panel-strong:#ffffff1a;--text:#f2f0ea;--muted:#a7abb3;--line:#ffffff1f;--accent:#d9bd7a;--accent-2:#9eb8a8;--accent-3:#8fb3c7;--shadow:0 24px 80px #00000047;--radius:8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;overflow-x:hidden}body:before{content:"";z-index:-3;opacity:1;background:radial-gradient(circle at 18% 10%,#7d8b971f,#0000 36%),radial-gradient(circle at 86% 18%,#856d481f,#0000 34%),linear-gradient(#11161d 0%,#0b0e13 58%,#080a0e 100%);position:fixed;inset:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.loader{z-index:100;background:radial-gradient(circle at 40% 20%,#d9bd7a1f,#0000 30%),linear-gradient(135deg,#0b0e13,#11161d 50%,#080a0e);place-items:center;display:grid;position:fixed;inset:0}.loader-mark{border:1px solid var(--line);color:#fff;letter-spacing:0;background:#ffffff0f;border-radius:50%;place-items:center;width:76px;height:76px;font-size:20px;font-weight:700;display:grid;box-shadow:0 0 42px #d9bd7a29}.ambient{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.aurora{filter:blur(96px);opacity:.11;border-radius:999px;width:46vw;min-width:420px;height:46vw;min-height:420px;animation:18s ease-in-out infinite alternate drift;position:absolute;transform:translate(0,0)}.aurora-a{background:#6f7f8a;top:-16vw;left:-12vw}.aurora-b{background:#9a8058;animation-duration:24s;top:18vh;right:-12vw}.noise{opacity:.035;background-image:radial-gradient(circle at 1px 1px,#ffffff8c 1px,#0000 0);background-size:34px 34px;position:absolute;inset:0}.particles span{background:#ffffff47;border-radius:50%;animation:linear infinite particleFloat;display:block;position:absolute;transform:translate(0,0);box-shadow:0 0 10px #d9bd7a24}.navbar{z-index:30;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;width:min(1080px,100% - 32px);height:60px;margin:0 auto;padding:0 12px 0 18px;transition:background .26s,border-color .26s,box-shadow .26s,-webkit-backdrop-filter .26s,backdrop-filter .26s;display:flex;position:fixed;top:18px;left:0;right:0}.navbar.is-scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d1015b8;border-color:#ffffff1f;box-shadow:0 12px 40px #0000003d}.brand{border:1px solid var(--line);background:#ffffff14;border-radius:50%;place-items:center;width:38px;height:38px;font-size:13px;font-weight:800;display:grid}.navbar nav{gap:4px;display:flex}.navbar nav a{color:var(--muted);border-radius:8px;padding:9px 12px;font-size:14px;transition:color .18s,background .18s}.navbar nav a:hover{color:var(--text);background:#ffffff14}main,.footer-inner{width:min(1120px,100% - 36px);margin:0 auto}.hero{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center;gap:56px;min-height:100vh;padding:132px 0 74px;display:grid}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 16px;font-size:13px;font-weight:700}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;margin-bottom:22px;font-size:clamp(58px,10vw,124px);line-height:.88}h2{letter-spacing:0;max-width:760px;margin-bottom:16px;font-size:clamp(34px,5.4vw,64px);line-height:1.02}h3{letter-spacing:0;margin-bottom:10px;font-size:28px}.hero-text,.section-heading p:not(.eyebrow),.proof-copy p,.project-body p,.timeline-content p{color:var(--muted);font-size:17px;line-height:1.76}.hero-text{max-width:680px;margin-bottom:30px;font-size:20px}.hero-actions,.contact-row,.social-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn{border:1px solid #ffffff26;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 20px;font-weight:700;transition:transform .22s,box-shadow .22s,border-color .22s,background .22s;display:inline-flex;position:relative;overflow:hidden;transform:translate(0,0)}.btn.primary{color:#16140f;background:linear-gradient(135deg,#f5efd9,#d9bd7a);box-shadow:0 14px 34px #d9bd7a24}.btn.ghost{color:var(--text);background:#ffffff12}.btn:hover{border-color:#ffffff47;transform:translateY(-2px);box-shadow:0 18px 46px #d9bd7a24}.btn-label{z-index:1;align-items:center;gap:8px;display:inline-flex;position:relative}.ripple{pointer-events:none;background:#ffffff80;border-radius:50%;width:18px;height:18px;animation:.52s ease-out ripple;position:absolute;transform:translate(-50%,-50%)scale(0)}.hero-visual{border:1px solid var(--line);min-height:260px;box-shadow:var(--shadow);background:radial-gradient(circle at 70% 18%,#d9bd7a1c,#0000 32%),linear-gradient(145deg,#ffffff18,#ffffff09);border-radius:8px;position:relative;overflow:hidden}.hero-visual:before{content:"";z-index:1;background:linear-gradient(#0000 40%,#05070a80);position:absolute;inset:0}.portrait{object-fit:cover;filter:saturate(.92)contrast(1.04);width:100%;height:100%;min-height:260px}.hero-card{z-index:2;border:1px solid var(--line);color:#e8fbff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#05070aa3;border-radius:8px;align-items:center;gap:10px;max-width:330px;padding:14px 16px;display:flex;position:absolute;bottom:18px;right:18px}.section{padding:104px 0}.compact{padding-top:72px}.section-heading{margin-bottom:34px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px 0 56px;display:grid}.stat-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff0f;border-radius:8px;min-height:132px;padding:22px}.stat-card strong{margin-bottom:10px;font-size:clamp(28px,4vw,44px);line-height:1;display:block}.stat-card span{color:var(--muted)}.proof-gallery{padding:0 0 24px}.proof-gallery-inner{grid-template-columns:repeat(2,1fr);gap:18px;max-width:700px;margin:0 auto;display:grid}.proof-gallery-inner img{border:1px solid var(--line);object-fit:contain;background:#ffffff0f;border-radius:8px;width:100%;height:auto;max-height:280px;transition:border-color .25s,box-shadow .25s}.proof-gallery-inner img:hover{border-color:#d9bd7a52;box-shadow:0 18px 70px #00000040}@media (width<=560px){.proof-gallery-inner{grid-template-columns:1fr}}.project-grid{perspective:1200px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-card{transform-style:preserve-3d;background:#ffffff10;border:1px solid #ffffff1a;border-radius:8px;transition:border-color .25s,background .25s,box-shadow .25s;overflow:hidden;box-shadow:0 18px 70px #0000002e}.project-card:hover{background:#ffffff17;border-color:#d9bd7a52;box-shadow:0 28px 90px #00000057}.project-app-head{align-items:center;gap:16px;min-height:118px;padding:24px 24px 18px;display:flex}.project-icon{object-fit:cover;background:#ffffff14;border:1px solid #ffffff29;border-radius:18px;flex:none;width:78px;height:78px;box-shadow:0 16px 38px #0000002e}.project-app-head h3{margin:6px 0 0}.project-images{background:radial-gradient(circle at 35% 10%,#d9bd7a17,#0000 34%),#ffffff08;grid-template-columns:repeat(3,1fr);align-items:stretch;gap:16px;padding:12px;display:grid;position:relative;overflow:hidden}.phone-shot{cursor:pointer;background:#06080b80;border:1px solid #ffffff21;border-radius:8px;place-items:center;min-width:0;margin:0;transition:border-color .25s,box-shadow .25s;display:grid;position:relative;overflow:hidden}.phone-shot:hover{border-color:#d9bd7a52;box-shadow:0 12px 40px #00000040}.phone-shot img{object-fit:contain;object-position:center;filter:saturate(.94);width:100%;height:100%;transition:filter .25s}.phone-shot:hover img{filter:saturate(1.06)}.project-body{padding:24px 28px 28px;position:relative}.project-type{color:var(--accent-2);text-transform:uppercase;font-size:13px;font-weight:800}.project-card:hover h3{color:var(--accent)}.tag-row{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.tag-row span,.skill-tag{border:1px solid var(--line);color:#dce6f3;background:#ffffff12;border-radius:8px}.tag-row span{padding:7px 10px;font-size:13px}.project-link{color:var(--accent);opacity:0;align-items:center;gap:5px;margin-top:22px;font-weight:800;transition:opacity .25s,transform .25s;display:inline-flex;transform:translate(-8px)}.project-card:hover .project-link{opacity:1;transform:translate(0)}.skills-wrap{flex-wrap:wrap;gap:12px;display:flex}.skill-tag{align-items:center;gap:9px;min-height:44px;padding:0 14px;transition:color .22s,border-color .22s,background .22s,box-shadow .22s,transform .22s;display:inline-flex}.skill-tag svg{transition:transform .22s}.skill-tag:hover{color:#fff;background:#d9bd7a14;border-color:#d9bd7a57;transform:translateY(-2px);box-shadow:0 0 28px #d9bd7a14}.skill-tag:hover svg{transform:rotate(8deg)}.proof-section{display:block}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:30px;display:grid}.certificate-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffff0e;border-radius:8px;margin:0;padding:12px;transition:transform .25s,border-color .25s,background .25s}.certificate-card img{object-fit:contain;object-position:center;background:#f8f4ec;border-radius:6px;width:100%;height:430px}.certificate-card figcaption{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.5}.certificate-card:hover{background:#ffffff13;border-color:#d9bd7a52;transform:translateY(-4px)}.logo-wall{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:min(1120px,100% - 36px);margin:0 auto 70px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.logo-track{gap:12px;width:max-content;padding:18px 0;animation:28s linear infinite logoScroll;display:flex}.logo-wall:hover .logo-track{animation-play-state:paused}.logo-track span{border:1px solid var(--line);color:#8d99a8;filter:grayscale();border-radius:8px;justify-content:center;align-items:center;min-width:132px;height:48px;transition:color .22s,background .22s,filter .22s;display:inline-flex}.logo-track span:hover{color:#fff;filter:grayscale(0);background:#d9bd7a14}.footer{background:radial-gradient(circle at 70% 20%,#d9bd7a1a,#0000 34%),linear-gradient(#ffffff05,#ffffff0e);padding:92px 0 48px;position:relative;overflow:hidden}.footer h2{max-width:860px}.contact-row{margin-top:30px}.contact-row a,.contact-row span{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.contact-row a:hover{color:var(--text)}.social-row{margin-top:34px}.social-row a{border:1px solid var(--line);background:#ffffff0f;border-radius:8px;place-items:center;width:44px;height:44px;transition:transform .22s,color .22s,box-shadow .22s,border-color .22s;display:grid}.social-row a:hover{color:var(--accent);border-color:#d9bd7a61;transform:rotate(6deg)scale(1.06);box-shadow:0 0 28px #d9bd7a1f}.lightbox-overlay{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000e0;place-items:center;display:grid;position:fixed;inset:0}.lightbox-content{justify-content:center;align-items:center;width:min(92vw,900px);max-height:88vh;display:flex;position:relative}.lightbox-img{object-fit:contain;border-radius:12px;max-width:100%;max-height:80vh;box-shadow:0 30px 90px #00000080}.lightbox-close{z-index:5;width:40px;height:40px;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;place-items:center;transition:background .18s,border-color .18s;display:grid;position:absolute;top:-44px;right:0}.lightbox-close:hover{background:#ffffff29;border-color:#ffffff4d}.lightbox-arrow{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:44px;height:44px;color:var(--text);cursor:pointer;background:#0d1015b3;border:1px solid #ffffff26;border-radius:50%;place-items:center;transition:background .18s,border-color .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover{background:#ffffff24;border-color:#ffffff4d}.lightbox-arrow-left{left:-56px}.lightbox-arrow-right{right:-56px}.lightbox-dots{gap:8px;display:flex;position:absolute;bottom:-36px;left:50%;transform:translate(-50%)}.lightbox-dot{cursor:pointer;background:#ffffff4d;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.lightbox-dot.is-active{background:var(--accent);transform:scale(1.3)}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(4%,3%)scale(1.06)}}@keyframes particleFloat{0%{opacity:0;transform:translate(0,0)}20%{opacity:.6}to{opacity:0;transform:translateY(-70px)}}@keyframes ripple{to{opacity:0;transform:translate(-50%,-50%)scale(18)}}@keyframes logoScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (width<=860px){body:before{opacity:.16}.particles{display:none}.navbar{width:calc(100% - 20px);height:54px;top:10px}.navbar nav a{padding:8px;font-size:13px}.hero{grid-template-columns:1fr;gap:28px;min-height:auto;padding-top:106px}.hero-visual,.portrait{min-height:260px}.stats-grid,.project-grid,.proof-section,.proof-grid{grid-template-columns:1fr}.phone-shot{height:auto}.certificate-card img{height:auto;max-height:620px}.section{padding:74px 0}}@media (width<=560px){main,.footer-inner,.logo-wall{width:min(100% - 24px,1120px)}h1{font-size:clamp(58px,20vw,84px)}.hero-text{font-size:17px}.brand{width:34px;height:34px}.navbar nav{gap:0}.navbar nav a{padding:7px 6px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{min-height:116px;padding:18px}.project-body,.timeline-content{padding:18px}.project-app-head{min-height:104px;padding:18px}.project-icon{border-radius:14px;width:64px;height:64px}.project-images{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:10px;display:flex;overflow-x:auto}.phone-shot{scroll-snap-align:center;flex:none;width:76%;min-width:236px}.lightbox-arrow-left{left:8px}.lightbox-arrow-right{right:8px}.certificate-card{padding:8px}.certificate-card img{height:auto;max-height:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
