*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--text:#e0e0e0;--muted:#e0e0e061;--muted-strong:#e0e0e080;--line:#ffffff12;--line-strong:#ffffff1c;--surface:#ffffff06;--surface-2:#ffffff0a;--surface-3:#ffffff0e;--surface-solid:#e0e0e0;--surface-solid-hover:#fff;--solid-text:#0a0a0a;--shadow-soft:0 18px 36px #0000002e;--shadow-strong:0 24px 48px #0000003d}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:DM Sans,Segoe UI,Arial,sans-serif;font-weight:300;transition:background .25s,color .25s;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}::selection{color:#fff;background:#ffffff2e}.portfolio-page{min-height:100vh;position:relative}.portfolio-page #canvas{z-index:0;pointer-events:none;position:fixed;inset:0}.portfolio-page:before{content:"";z-index:1;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");position:fixed;inset:0}.spotlight{z-index:0;pointer-events:none;background:radial-gradient(55% 45% at 50% -5%,#ffffff0e 0%,#0000 100%);position:fixed;inset:0}.wrap{z-index:2;max-width:1060px;margin:0 auto;padding:0 32px;position:relative}header{z-index:100;padding:18px 0;transition:padding .3s;position:fixed;top:0;left:0;right:0}header.scrolled{padding:10px 0}.nav{border-radius:999px;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;width:100%;padding:10px 16px;transition:padding .32s,background .32s,border-color .32s,box-shadow .32s;display:grid}header.scrolled .nav{background:color-mix(in srgb, var(--bg) 74%, transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);padding:8px 14px;box-shadow:0 10px 30px #00000038,inset 0 1px #ffffff08}.nav-logo{flex:none;align-items:center;display:flex}.nav-logo-image{width:250px;height:auto;display:block}.nav-pills{background:color-mix(in srgb, var(--surface-2) 55%, transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;justify-self:center;align-items:center;gap:4px;padding:5px 7px;transition:background .3s,border-color .3s;display:inline-flex}.nav-pills a{min-height:32px;color:var(--muted-strong);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 16px;font-size:13.5px;font-weight:400;line-height:1;transition:all .22s;display:inline-flex}.nav-pills a:hover,.nav-pills a.active{color:var(--text);background:color-mix(in srgb, var(--surface-3) 92%, transparent)}.nav-actions{justify-self:end;align-items:center;gap:9px;display:flex}.n-ghost{color:var(--muted-strong);border:1px solid var(--line-strong);border-radius:100px;padding:8px 18px;font-size:13.5px;font-weight:400;transition:all .22s}.n-ghost:hover{color:var(--text);border-color:color-mix(in srgb, var(--line-strong) 160%, transparent);background:var(--surface-2)}.n-solid{color:var(--solid-text);background:var(--surface-solid);border-radius:100px;align-items:center;gap:6px;padding:8px 20px;font-size:13.5px;font-weight:500;transition:all .22s;display:inline-flex}.n-solid svg{width:13px;height:13px}.n-solid:hover{background:var(--surface-solid-hover);transform:translateY(-1px)}#hero{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:120px 24px 100px;display:flex;position:relative}.hero-badge{color:color-mix(in srgb, var(--text) 55%, transparent);border:1px solid var(--line);background:var(--surface-2);opacity:0;border-radius:100px;align-items:center;gap:8px;margin-bottom:34px;padding:7px 18px;font-size:12.5px;font-weight:400;animation:.7s cubic-bezier(.16,1,.3,1) .2s forwards fadeUp;display:inline-flex}.badge-dot{background:var(--text);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.4s ease-in-out infinite blink}.hero-name{letter-spacing:-3.5px;color:var(--text);opacity:0;margin-bottom:28px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:clamp(54px,9vw,118px);font-weight:800;line-height:.93;animation:.8s cubic-bezier(.16,1,.3,1) .35s forwards fadeUp}.hero-name .shimmer{background:linear-gradient(90deg,var(--text) 0%,color-mix(in srgb, var(--text) 70%, #fff) 38%,color-mix(in srgb, var(--text) 35%, transparent) 58%,var(--text) 100%);-webkit-text-fill-color:transparent;background-size:220%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite shimmer;display:inline-block}.hero-sub{color:var(--muted);opacity:0;max-width:480px;margin:0 auto 42px;font-size:clamp(14px,1.7vw,17.5px);font-weight:300;line-height:1.72;animation:.7s cubic-bezier(.16,1,.3,1) .5s forwards fadeUp}.hero-sub strong{color:color-mix(in srgb, var(--text) 76%, transparent);font-weight:500}.hero-cta{opacity:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:11px;animation:.7s cubic-bezier(.16,1,.3,1) .65s forwards fadeUp;display:flex}.btn-fill{background:var(--surface-solid);color:var(--solid-text);border-radius:100px;align-items:center;gap:8px;padding:13px 28px;font-size:14px;font-weight:500;transition:all .25s;display:inline-flex}.btn-fill:hover{background:var(--surface-solid-hover);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.btn-line{color:color-mix(in srgb, var(--text) 68%, transparent);border:1px solid var(--line-strong);background:var(--surface-2);border-radius:100px;align-items:center;gap:8px;padding:13px 28px;font-size:14px;font-weight:400;transition:all .25s;display:inline-flex}.btn-line:hover{color:var(--text);border-color:color-mix(in srgb, var(--line-strong) 160%, transparent);background:var(--surface-3);transform:translateY(-2px)}.scroll-hint{opacity:0;flex-direction:column;align-items:center;gap:10px;animation:.7s cubic-bezier(.16,1,.3,1) 1.1s forwards fadeUp;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.scroll-car{border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface-2) 72%, transparent);width:52px;height:52px;color:color-mix(in srgb, var(--text) 74%, transparent);border-radius:18px;justify-content:center;align-items:center;animation:2.2s ease-in-out infinite carFloat;display:flex;box-shadow:inset 0 1px #ffffff08}.scroll-car svg{width:22px;height:22px}.scroll-car .mouse-wheel{transform-box:fill-box;transform-origin:50%;transition:transform .18s,opacity .18s}.scroll-hint:active .mouse-wheel{opacity:.35;transform:translateY(3px)}.scroll-line{background:linear-gradient(to bottom,color-mix(in srgb, var(--text) 8%, transparent),color-mix(in srgb, var(--text) 28%, transparent));width:1px;height:34px;animation:2s ease-in-out infinite grow}section{z-index:2;padding:96px 0;position:relative}.divider{background:linear-gradient(90deg,transparent,var(--line),transparent);width:100%;height:1px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 28%, transparent);margin-bottom:12px;font-size:11.5px;font-weight:500}.sec-title{letter-spacing:-1.3px;color:var(--text);font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:clamp(28px,3.5vw,46px);font-weight:800;line-height:1.04}.sec-desc{color:var(--muted);max-width:460px;margin-top:9px;font-size:14.5px;line-height:1.75}.reveal{opacity:1;transform:translateY(0)}.projects-marquee{margin-top:36px;padding:12px 0 16px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 9% 91%,#0000);mask-image:linear-gradient(90deg,#0000,#000 9% 91%,#0000)}.projects-slider{padding-top:4px;overflow:hidden visible}.projects-track{will-change:transform;gap:18px;width:max-content;padding-top:2px;animation:34s linear infinite projects-marquee;display:flex}.projects-slider:hover .projects-track{animation-play-state:paused}.proj{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:18px;flex:0 0 256px;align-items:flex-start;gap:13px;padding:17px 19px;transition:all .28s cubic-bezier(.16,1,.3,1);display:flex}.proj:hover{border-color:var(--line-strong);background:var(--surface-2);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.proj-thumb{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.proj-thumb svg{width:19px;height:19px;color:color-mix(in srgb, var(--text) 72%, transparent)}.proj-thumb img{object-fit:contain;width:32px;height:32px;display:block}.proj-thumb .project-logo-image{width:38px;height:auto;max-height:24px}.proj-body{flex:1;min-width:0}.proj-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:14px;font-weight:700;overflow:hidden}.proj-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.58;display:-webkit-box;overflow:hidden}.services-intro{max-width:680px}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;margin-top:44px;display:grid}.tech-pills{flex-wrap:wrap;gap:6px;margin-top:22px;margin-bottom:0;display:flex}.tpill{color:var(--muted-strong);border:1px solid var(--line);background:var(--surface-2);border-radius:100px;align-items:center;gap:6px;padding:5px 13px;font-size:11.5px;font-weight:400;display:inline-flex}.tpill svg{opacity:.7;width:11px;height:11px}.srv{border:1px solid var(--line-strong);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-2) 82%, transparent), color-mix(in srgb, var(--surface) 92%, transparent));border-radius:22px;min-height:100%;padding:22px 24px;transition:border-color .28s,background .28s,transform .28s,box-shadow .28s}.srv:hover{box-shadow:var(--shadow-strong);transform:translateY(-3px)}.srv--violet:hover{background:linear-gradient(#1d142ef7,#140f22ed);border-color:#9170c647;box-shadow:0 18px 40px #140d2447,inset 0 1px #cebdf00a}.srv--violet:hover .srv-ico{background:#64509129;border-color:#886cba3d}.srv--violet:hover .srv-tag{color:#e4dcf6c2;background:#ffffff08;border-color:#846ab438}.srv--violet:hover .srv-txt{color:#dad2ec9e}.srv--violet:hover .srv-ttl{color:#f1ecfb}.srv--emerald:hover{background:linear-gradient(#05221cf5,#041a15eb);border-color:#52a0854d;box-shadow:0 18px 40px #03181347,inset 0 1px #81d5b40a}.srv--emerald:hover .srv-ico{background:#3a806a29;border-color:#57a6893d}.srv--emerald:hover .srv-tag{color:#c9efdfc2;background:#ffffff08;border-color:#53998038}.srv--emerald:hover .srv-txt{color:#cae1d69e}.srv--emerald:hover .srv-ttl{color:#eefaf3}.srv--cobalt:hover{background:linear-gradient(#12192cf5,#0c1221eb);border-color:#6076ab4d;box-shadow:0 18px 40px #0b122347,inset 0 1px #adc2f108}.srv--cobalt:hover .srv-ico{background:#4d609124;border-color:#6076ab38}.srv--cobalt:hover .srv-tag{color:#d6def4bf;background:#ffffff08;border-color:#57679138}.srv--cobalt:hover .srv-txt{color:#d0d7ea99}.srv--cobalt:hover .srv-ttl{color:#eef3ff}.srv-head{align-items:center;gap:11px;margin-bottom:10px;display:flex}.srv-ico{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.srv-ico svg{width:15px;height:15px;color:color-mix(in srgb, var(--text) 65%, transparent)}.srv-ttl{color:var(--text);font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:14.5px;font-weight:700}.srv-txt{color:var(--muted);margin-bottom:13px;font-size:13px;line-height:1.7}.srv-tags{flex-wrap:wrap;gap:5px;display:flex}.srv-tag{color:color-mix(in srgb, var(--text) 46%, transparent);border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 72%, transparent);border-radius:100px;padding:3px 10px;font-size:11px}.skills-grid{grid-template-columns:repeat(4,1fr);gap:11px;margin-top:38px;display:grid}.sk{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 76%, transparent);border-radius:17px;padding:19px 19px 17px;transition:all .28s}.sk:hover{border-color:var(--line-strong);background:var(--surface-3);box-shadow:var(--shadow-soft);transform:translateY(-3px)}.sk-ico{background:color-mix(in srgb, var(--surface-3) 78%, transparent);border:1px solid var(--line-strong);border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:13px;display:flex}.sk-ico svg{color:#e0e0e099;width:17px;height:17px}.sk-name{color:var(--text);margin-bottom:4px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:13px;font-weight:700}.sk-desc{color:color-mix(in srgb, var(--text) 30%, transparent);font-size:11.5px;line-height:1.6}.about-layout{grid-template-columns:1.05fr 1fr;align-items:start;gap:52px;display:grid}.about-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:32px}.about-av{background:var(--surface-2);border:1px solid var(--line-strong);width:60px;height:60px;color:var(--text);border-radius:16px;justify-content:center;align-items:center;margin-bottom:18px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:20px;font-weight:800;display:flex}.about-txt{color:color-mix(in srgb, var(--text) 46%, transparent);margin-bottom:22px;font-size:14px;line-height:1.82}.about-stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.astat{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:13px;padding:13px}.astat-v{color:var(--text);font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:21px;font-weight:800}.astat-l{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--text) 25%, transparent);margin-top:2px;font-size:10.5px}.vals{flex-direction:column;gap:10px;display:flex}.val{border:1px solid var(--line);background:var(--surface);border-radius:15px;align-items:flex-start;gap:12px;padding:17px 19px;transition:all .25s;display:flex}.val:hover{border-color:var(--line-strong);transform:translate(5px)}.val-i{background:var(--surface-2);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.val-i svg{width:13px;height:13px;color:color-mix(in srgb, var(--text) 55%, transparent)}.val-t{color:var(--text);margin-bottom:2px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:13px;font-weight:700}.val-d{color:color-mix(in srgb, var(--text) 32%, transparent);font-size:12px;line-height:1.6}.contact-section{padding-bottom:120px}.contact-center{text-align:center;flex-direction:column;align-items:center;max-width:580px;margin:0 auto;display:flex}.contact-desc{margin:9px auto 0}.ccard{border:1px solid var(--line-strong);background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:26px;width:100%;margin-top:36px;padding:42px;position:relative;overflow:hidden}.ccard:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff09,#0000 70%);border-radius:50%;width:280px;height:280px;position:absolute;top:-70px;left:50%;transform:translate(-50%)}.c-email{letter-spacing:-.4px;color:var(--text);margin-bottom:26px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:clamp(17px,2.4vw,27px);font-weight:800}.socials{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.soc{color:var(--muted-strong);border:1px solid var(--line);background:var(--surface-2);border-radius:100px;align-items:center;gap:7px;padding:9px 19px;font-size:13px;font-weight:400;transition:all .25s;display:inline-flex}.soc svg{width:13px;height:13px}.soc:hover{color:var(--text);border-color:var(--line-strong);background:var(--surface-3);transform:translateY(-2px)}footer{z-index:2;border-top:1px solid var(--line);padding:30px 0 42px;position:relative}.foot-inner{text-align:center;justify-content:center;align-items:center;padding:10px 0 0;display:flex}.foot-copy{color:color-mix(in srgb, var(--text) 22%, transparent);font-size:12px}.project-page{background:var(--bg);min-height:100vh;color:var(--text);position:relative;overflow:hidden}.project-page:before{content:"";z-index:0;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");position:fixed;inset:0}.project-shell{z-index:1;padding:44px 0 96px;position:relative}.project-wrap{max-width:980px;margin:0 auto;padding:0 32px}.project-topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:42px;display:flex}.project-back,.project-visit{border:1px solid var(--line);background:var(--surface);color:color-mix(in srgb, var(--text) 72%, transparent);border-radius:999px;align-items:center;gap:8px;padding:11px 16px;font-size:13px;transition:all .24s;display:inline-flex}.project-back svg,.project-visit svg{width:14px;height:14px}.project-back:hover,.project-visit:hover{color:var(--text);border-color:var(--line-strong);background:var(--surface-2)}.project-hero-card{border:1px solid var(--line-strong);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-2) 86%, transparent), color-mix(in srgb, var(--surface) 94%, transparent));border-radius:28px;grid-template-columns:88px 1fr;gap:24px;padding:34px;display:grid;box-shadow:inset 0 1px #ffffff05}.project-hero-icon{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:24px;justify-content:center;align-items:center;width:88px;height:88px;display:flex}.project-hero-icon svg{width:34px;height:34px;color:color-mix(in srgb, var(--text) 80%, transparent)}.project-hero-icon img{object-fit:contain;width:68px;height:68px;display:block}.project-hero-icon .project-logo-image{width:78px;height:auto;max-height:46px}.project-kicker{letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 30%, transparent);margin-bottom:14px;font-size:12px}.project-title{letter-spacing:-2px;margin-bottom:16px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:clamp(34px,5vw,62px);line-height:.95}.project-intro{max-width:700px;color:color-mix(in srgb, var(--text) 54%, transparent);font-size:17px;line-height:1.7}.project-meta{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.project-meta-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-width:220px;padding:14px 16px}.project-meta-label{text-transform:uppercase;letter-spacing:.12em;color:color-mix(in srgb, var(--text) 28%, transparent);margin-bottom:6px;font-size:11px;display:block}.project-meta-value{color:color-mix(in srgb, var(--text) 78%, transparent);font-size:14px;line-height:1.6}.project-detail-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;display:grid}.project-shot{border:1px solid var(--line-strong);background:var(--surface);border-radius:26px;margin-top:18px;transition:transform .28s,border-color .28s,background .28s,box-shadow .28s;display:block;overflow:hidden}.project-shot:hover{border-color:var(--line-strong);background:var(--surface-2);box-shadow:var(--shadow-soft);transform:translateY(-4px)}.project-shot--static{cursor:default;pointer-events:none}.project-shot img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.project-panel{border:1px solid var(--line-strong);background:var(--surface);border-radius:24px;padding:28px}.project-panel-title{margin-bottom:14px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:18px}.project-panel-text{color:color-mix(in srgb, var(--text) 50%, transparent);font-size:15px;line-height:1.8}.project-list{flex-direction:column;gap:10px;display:flex}.project-list li{color:color-mix(in srgb, var(--text) 52%, transparent);margin-left:18px;line-height:1.75}.project-stack-panel{margin-top:18px}.project-stack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.project-stack-card{border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 90%, transparent);border-radius:20px;padding:20px;transition:border-color .28s,background .28s,transform .28s,box-shadow .28s}.project-stack-card-title{margin-bottom:12px;font-family:Syne,Arial Black,Segoe UI,sans-serif;font-size:15px}.project-stack-card:hover{transform:translateY(-3px)}.project-stack-card--violet:hover{background:linear-gradient(#1d142ef5,#140f22eb);border-color:#9170c64d;box-shadow:0 18px 40px #140d243d,inset 0 1px #cebdf00a}.project-stack-card--violet:hover .project-chip{color:#e4dcf6c7;background:#ffffff08;border-color:#846ab438}.project-stack-card--emerald:hover{background:linear-gradient(#05221cf5,#041a15eb);border-color:#52a0854d;box-shadow:0 18px 40px #0318133d,inset 0 1px #81d5b40a}.project-stack-card--emerald:hover .project-chip{color:#c9efdfc7;background:#ffffff08;border-color:#53998038}.project-stack-card--cobalt:hover{background:linear-gradient(#12192cf5,#0c1221eb);border-color:#6076ab4d;box-shadow:0 18px 40px #0b12233d,inset 0 1px #adc2f108}.project-stack-card--cobalt:hover .project-chip{color:#d6def4c7;background:#ffffff08;border-color:#57679138}.project-stack-card--amber:hover{background:linear-gradient(#3a1c0af5,#281408eb);border-color:#b66b3057;box-shadow:0 18px 40px #2b15083d,inset 0 1px #ffcc910a}.project-stack-card--amber:hover .project-chip{color:#f4e1cdcc;background:#ffffff08;border-color:#ac6e3d3d}.project-stack-card--neutral:hover{background:linear-gradient(#181f2df5,#111722eb);border-color:#808ea457;box-shadow:0 18px 40px #0e141f3d,inset 0 1px #c6d4ec0a}.project-stack-card--neutral:hover .project-chip{color:#dee7f4cc;background:#ffffff08;border-color:#74849c3d}.project-stack{flex-wrap:wrap;gap:8px;display:flex}.project-chip{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 74%, transparent);color:color-mix(in srgb, var(--text) 66%, transparent);border-radius:999px;align-items:center;padding:8px 12px;font-size:12px;display:inline-flex}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes shimmer{0%{background-position:220%}to{background-position:-220%}}@keyframes grow{0%,to{opacity:.5;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.35)}}@keyframes carFloat{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes projects-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 9px))}}@media (max-width:860px){.nav{grid-template-columns:auto 1fr}.services-grid{grid-template-columns:1fr;gap:14px;margin-top:30px}.skills-grid{grid-template-columns:repeat(2,1fr)}.about-layout{grid-template-columns:1fr;gap:24px}.project-wrap{padding:0 20px}.project-topbar{flex-direction:column;align-items:flex-start}.project-hero-card{grid-template-columns:1fr;padding:26px}.project-hero-icon{border-radius:20px;width:72px;height:72px}.project-detail-grid,.project-stack-grid{grid-template-columns:1fr}.nav-pills{display:none}.foot-inner{text-align:center;flex-direction:column;gap:6px}}@media (max-width:520px){.wrap{padding:0 18px}.hero-cta{flex-direction:column}.services-intro{max-width:100%}.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
