@charset "UTF-8";
:root{--bg:#f5f6f8;--paper:#fff;--ink:#182132;--muted:#657083;--line:#dce1e8;--blue:#2457ef;--navy:#111e33;--green:#b8e889;--radius:20px;--max:1200px;font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:105px}
*{box-sizing:border-box}body{margin:0}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #4d7cff;outline-offset:5px}p,h1,h2,h3{margin:0}p{line-height:1.85}svg{display:block;width:100%;height:100%}::selection{background:#cddaff}.section-shell{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700;line-height:1.5}.accent{color:var(--blue)}.skip-link{position:fixed;top:-100px;left:20px;background:var(--blue);color:white;padding:12px;z-index:99}.skip-link:focus{top:10px}.site-header{height:94px;max-width:1440px;margin:auto;display:flex;align-items:center;gap:36px;padding:0 48px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;min-width:220px;font-weight:750;font-size:17px;letter-spacing:.02em}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:.12em;margin-top:4px;font-weight:500}.brand-mark{font-size:40px;line-height:1;letter-spacing:-.15em;font-weight:850;width:48px;padding-right:7px;color:var(--blue)}.brand-mark span{color:var(--ink)}.site-header nav{display:flex;margin-left:auto;gap:32px;font-size:13px}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--blue)}.nav-resume{padding:12px 17px;background:var(--ink);color:white;border-radius:7px;font-size:12px;font-weight:650;white-space:nowrap}.nav-resume span{margin-left:12px}.menu-toggle{display:none}.hero{padding-top:86px;padding-bottom:74px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:50px;min-height:620px}.hero .eyebrow{display:flex;align-items:center;gap:9px;color:#515d6f}.status-dot{height:7px;width:7px;border-radius:50%;background:#3d8e4e;box-shadow:0 0 0 4px #e6ecdf}.hero h1{font-size:clamp(42px,4.1vw,60px);letter-spacing:-.065em;line-height:1.25;font-weight:800;margin:24px 0}.hero-intro{font-size:14px;color:var(--muted);line-height:2}.hero-actions{display:flex;gap:27px;align-items:center;margin:29px 0 28px}.button{padding:15px 20px;border-radius:7px;display:inline-flex;justify-content:center;align-items:center;gap:30px;font-size:13px;font-weight:650;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--blue);color:#fff;box-shadow:0 7px 20px #2457ef1a}.button.primary:hover{background:#1946cb}.text-link{background:none;padding:0;font-size:13px;font-weight:650;display:inline-flex;align-items:center;gap:18px;line-height:1.6}.text-link:hover{color:var(--blue)}.hero-location{font-size:10px;color:#7a8391;display:flex;gap:14px;flex-wrap:wrap}.hero-location span{color:#9299a5}.hero-visual{min-width:0;height:392px;position:relative;background:#e9edf3;border:1px solid #d9e0ea;border-radius:20px;isolation:isolate}.visual-top{display:flex;justify-content:space-between;padding:20px 20px 0;font-family:monospace;font-size:9px;letter-spacing:.08em;color:#7d899b}.visual-top>span:first-child{display:flex;align-items:center;gap:6px}.visual-top i{width:5px;height:5px;border-radius:50%;background:var(--blue)}.battle-map{position:absolute;inset:40px 30px 48px;overflow:hidden}.map-lines{position:absolute;inset:-10px -20px;background-image:linear-gradient(#a7b9cf35 1px,transparent 1px),linear-gradient(90deg,#a7b9cf35 1px,transparent 1px);background-size:32px 32px;transform:perspective(500px) rotateX(36deg) rotateZ(-24deg);mask-image:radial-gradient(ellipse,#000 30%,transparent 70%)}.map-axis{position:absolute;font-family:monospace;font-size:10px;color:#8294ac;transform:rotate(-23deg)}.axis-y{top:30px;left:55px}.axis-x{bottom:55px;right:40px}.team-unit{height:43px;width:43px;background:#2d60ee;box-shadow:-5px 8px 0 #173eac,0 12px 16px #1532a333;border-radius:10px;position:absolute;transform:rotate(-22deg);display:grid;place-items:center;color:#fff;z-index:3;transition:transform .7s}.team-unit span{font-family:monospace;font-size:12px;transform:rotate(22deg)}.unit-a{left:34%;top:33%}.unit-b{left:20%;top:51%}.unit-c{left:44%;top:59%}.enemy-unit{position:absolute;height:24px;width:24px;background:#8295b1;box-shadow:-3px 5px 0 #5a6f8f;border:3px solid #a5b6cd;border-radius:7px;transform:rotate(-22deg);z-index:3}.enemy-a{left:70%;top:31%}.enemy-b{left:80%;top:48%}.enemy-c{left:64%;top:64%}.range-ring{position:absolute;width:155px;height:95px;border:1px dashed #2457ef80;border-radius:50%;top:25%;left:26%;transform:rotate(-22deg);background:#2457ef06}.map-label{position:absolute;font:8px monospace;letter-spacing:.08em;transform:rotate(-22deg);color:#7990b3}.friendly-label{left:15%;bottom:41px}.enemy-label{right:6%;top:54px}.projectile{position:absolute;background:#b8e889;box-shadow:0 0 0 5px #b8e88933;width:9px;height:9px;border-radius:50%;top:40%;left:44%;opacity:0;z-index:5}.is-running .projectile{animation:projectile 1.5s linear infinite}.is-running .team-unit{animation:unit-pulse 2s ease-in-out infinite}.is-running .unit-b{animation-delay:.6s}.is-running .unit-c{animation-delay:1s}.is-running .enemy-unit{animation:target-pulse 1.5s ease-in-out infinite}.system-chip{position:absolute;z-index:6;background:#fff;border:1px solid #e0e6ee;border-radius:11px;display:flex;align-items:center;gap:9px;padding:13px 14px;box-shadow:0 10px 30px #25374d0d;font-size:11px;font-weight:650}.system-chip small{display:block;font:7px monospace;color:#8590a0;margin-top:5px;letter-spacing:.04em}.chip-a{left:-20px;top:73px;transform:rotate(-3deg)}.chip-b{right:-15px;bottom:74px;transform:rotate(3deg)}.chip-icon{display:grid;place-items:center;width:29px;height:29px;background:#e9edf5;color:#5d708f;border-radius:8px;font-size:19px}.chip-icon.blue{background:#e7edff;color:var(--blue)}.visual-bottom{position:absolute;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#7d899b}.visual-bottom>div{display:flex;gap:12px;align-items:center}.demo-status{font:8px monospace;color:#4c6a53;background:#dce8dc;padding:4px 6px;border-radius:4px}.visual-bottom button{background:#fff;border:1px solid #d8e0eb;border-radius:5px;padding:7px 10px;font-size:10px}.visual-bottom button span{margin-left:9px;font-size:8px;color:var(--blue)}.proof-strip{display:grid;grid-template-columns:1.4fr repeat(3,1fr) 1.1fr;gap:25px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0}.proof-strip>p{color:var(--muted);font-size:11px}.proof-strip>p strong{font-size:12px;color:var(--ink);font-weight:600}.proof-strip>div>strong{font-size:36px;font-weight:650;letter-spacing:-.06em;line-height:1}.proof-strip strong span{font-size:11px;color:var(--muted);letter-spacing:0;margin-left:8px;font-weight:400}.proof-strip>div>p{font-size:11px;margin-top:10px;color:var(--muted)}.proof-strip>a{font-size:10px;color:var(--muted);line-height:1.8;max-width:155px;justify-self:end}.proof-strip>a span{display:block;font-size:20px;color:var(--ink);margin-top:8px}.projects-section{padding-top:90px;padding-bottom:92px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-heading .eyebrow{color:var(--blue);margin-bottom:15px}.section-heading h2,.ai-section h2{font-size:33px;line-height:1.4;letter-spacing:-.04em;font-weight:750}.section-heading>p{font-size:12px;color:var(--muted);max-width:350px;margin-bottom:4px}.mobile-break{display:none}.project-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.filter-group{display:flex;gap:6px}.filter{background:transparent;padding:9px 15px;border-radius:5px;font-size:11px;color:var(--muted);transition:background .15s}.filter span{margin-left:5px;opacity:.6;font-size:10px}.filter.active{background:var(--ink);color:#fff}.filter:not(.active):hover{background:#e4e9f1}.project-count{color:#808a99;font-size:10px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 26px}.project-card{background:#fff;border:1px solid #e0e5ec;border-radius:13px;overflow:hidden;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #17263a0a}.project-card[hidden]{display:none}.project-art{height:224px;position:relative;overflow:hidden;border-bottom:1px solid #00000005}.project-art svg{transition:transform .5s}.project-card:hover .project-art svg{transform:scale(1.035)}.project-art .art-code{position:absolute;top:17px;left:20px;font:11px monospace;color:#ffffff9c;letter-spacing:.1em}.project-art .art-label{position:absolute;right:18px;bottom:15px;color:#ffffff70;font:8px monospace;letter-spacing:.08em}.project-meta{padding:22px 23px 24px}.project-badges{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.badge{font-size:9px;font-weight:600;line-height:1;padding:6px 8px;border-radius:4px;background:#f0f2f5;color:#7a8494}.badge.released{background:#e8f2e4;color:#40713d}.badge.publisher{background:#ebefff;color:#4262b6}.project-meta h3{font-size:21px;letter-spacing:-.04em;line-height:1.5;margin-bottom:8px}.project-meta h3 span{color:var(--muted);font-size:15px;font-weight:450;letter-spacing:0;margin-left:10px}.project-meta>p{font-size:12px;line-height:1.8;color:var(--muted);min-height:44px}.project-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:19px;padding-top:17px;border-top:1px solid #edf0f4}.project-footer>span{font-size:9px;letter-spacing:.025em;color:#8993a2}.project-footer button{white-space:nowrap;font-size:11px;background:none;padding:0;font-weight:600}.project-footer button:hover{color:var(--blue)}.project-footer button span{margin-left:12px}.craft-section{padding:82px 0 86px;background:var(--navy);color:#eaf0f9}.craft-section .section-heading{margin-bottom:50px}.craft-section .eyebrow{color:#91a9ec}.craft-section .section-heading>p{color:#94a1b6}.framework-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:60px;padding-bottom:48px}.small-index{display:block;font-size:9px;letter-spacing:.12em;color:#94a4bd;font-weight:600;margin-bottom:16px}.framework-intro h3{font-size:26px;letter-spacing:-.03em;margin-bottom:15px}.framework-intro p{font-size:13px;color:#aab5c8;line-height:1.95}.technology-line{margin-top:26px;font-size:10px;color:#8b9bb5}.architecture{background:#182740;border:1px solid #2c3d58;border-radius:12px;padding:21px}.architecture-label{display:flex;justify-content:space-between;color:#a7b5c9;font-size:10px;margin-bottom:19px}.architecture-label>span:last-child{color:#6f85a5;font-size:9px}.architecture-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.architecture-tabs button{background:#223450;color:#a5b6d1;border:1px solid #324868;padding:12px 4px;font-size:10px;border-radius:5px;transition:background .2s}.architecture-tabs button[aria-selected=true]{background:#315ed9;color:#fff;border-color:#5b7bdd}.architecture-panel{padding:24px 1px 22px;min-height:141px}.architecture-panel h4{font-size:15px;margin:0 0 10px;letter-spacing:.01em}.architecture-panel p{font-size:11px;line-height:1.95;color:#aabbd2}.architecture-base{border-top:1px solid #30435f;padding-top:14px;display:flex;justify-content:space-between;gap:10px;color:#7e93b3;font-size:8px}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.performance-panel,.delivery-panels>article{background:#1a2a43;border:1px solid #2c3e59;border-radius:12px;padding:28px}.panel-title{display:flex;justify-content:space-between;align-items:flex-start}.project-pill{border:1px solid #475973;font:9px monospace;padding:5px 8px;border-radius:4px;color:#afbed5}.practice-grid h3{font-size:21px;line-height:1.6;letter-spacing:-.025em;margin-bottom:10px}.practice-grid p{font-size:12px;line-height:1.95;color:#aab8cd}.benchmark{margin-top:24px;display:grid;gap:15px}.benchmark>div{display:grid;grid-template-columns:45px 1fr 74px;align-items:center;gap:10px;font-size:9px;color:#93a6c2}.benchmark strong{font:11px monospace;text-align:right;font-weight:500;color:#dae4f4}.bar-track{height:13px;border-radius:3px;overflow:hidden;background:#24364f}.bar-track i{display:block;background:#526681;height:100%;border-radius:3px}.bar-track i.after{background:#b8e889}.benchmark-result{display:flex;align-items:center;gap:20px;margin:24px 0 12px}.benchmark-result>strong{font-size:57px;line-height:1.1;letter-spacing:-.08em;color:#c3ee9a;font-weight:550}.benchmark-result>strong>span{font-size:23px;letter-spacing:-.02em;margin-left:4px}.benchmark-result p{font-size:11px;line-height:1.6;color:#b6c5db}.practice-grid .benchmark-note{font-size:9px;color:#7d94b5;line-height:1.9;max-width:420px}.performance-panel .text-link{font-size:10px;color:#d2dff4;margin-top:20px}.delivery-panels{display:grid;gap:22px}.delivery-panels>article{padding:25px 27px}.delivery-panels h3{font-size:20px}.channel-list{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0 12px}.channel-list span{font-size:9px;padding:5px 9px;border:1px solid #415673;color:#bfcee3;border-radius:4px}.delivery-panels .detail-copy{font-size:10px;color:#8296b5}.role-tags{display:flex;gap:17px;flex-wrap:wrap;color:#c7d3e5;font-size:9px;margin-top:16px}.role-tags span:before{content:'↗';margin-right:7px;color:#89a5ec}.ai-section{padding:90px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;border-bottom:1px solid var(--line)}.ai-intro .eyebrow{color:var(--blue);margin-bottom:18px}.ai-intro>p:last-child{font-size:12px;color:var(--muted);line-height:1.95;margin-top:20px;max-width:340px}.ai-timeline{margin:0;padding:0;list-style:none;display:grid;gap:30px}.ai-timeline li{display:grid;grid-template-columns:36px 1fr;gap:21px;position:relative}.ai-timeline li:not(:last-child):before{content:'';position:absolute;left:17px;top:37px;bottom:-29px;width:1px;background:var(--line)}.timeline-node{height:35px;width:35px;display:grid;place-items:center;font:10px monospace;background:#e9eefb;color:var(--blue);border:1px solid #d8e1f7;border-radius:50%;z-index:1}.stage-label{font-size:9px;color:#8d97a6;letter-spacing:.03em;display:block;margin:0 0 9px}.ai-timeline h3{font-size:16px;line-height:1.6;margin-bottom:8px}.ai-timeline p{font-size:11px;color:var(--muted);line-height:1.95}.experience-section{padding:85px 0 80px}.experience-section .section-heading{margin-bottom:34px}.experience-list article{display:grid;grid-template-columns:230px 1fr;gap:30px;padding:26px 0;border-top:1px solid var(--line)}.experience-date{font-size:12px;color:var(--muted);padding-top:4px}.current-label{display:inline-block;font-size:9px;background:#e8f0e4;color:#4d7645;border-radius:4px;margin-left:15px;padding:3px 6px}.experience-list h3{font-size:18px;font-weight:700;line-height:1.5}.experience-role{font-size:11px;color:#7d8999;display:block;margin:7px 0 11px}.experience-list p{font-size:12px;line-height:1.9;color:var(--muted);max-width:760px}.education{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:24px 0 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.education>span:first-child{font-size:9px;letter-spacing:.1em;margin-right:112px}.education>strong{font-size:12px;color:var(--ink)}.education>span:last-child{margin-left:auto;font-size:10px}.contact-section{background:#e7edfd;border-top:1px solid #d9e1f4;border-bottom:1px solid #d9e1f4;padding:60px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.contact-inner .eyebrow{color:var(--blue);margin-bottom:15px}.contact-inner h2{font-size:33px;line-height:1.45;letter-spacing:-.04em}.email-link{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:24px;letter-spacing:-.045em;border-bottom:1px solid #becceb;padding:15px 0 21px;font-weight:500}.email-link>span{font-size:22px;color:var(--blue)}.contact-actions>div{display:flex;align-items:center;gap:28px;margin-top:22px}.button.light{background:#fff;color:var(--blue);font-size:11px;padding:12px 16px}.contact-actions .text-link{font-size:11px}.copy-status{display:block;min-height:16px;font-size:10px;color:#4d658d;margin-top:10px}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0;font-size:9px;letter-spacing:.025em;color:#7d8999}.site-footer>a{color:var(--ink)}dialog{border:0;border-radius:18px;padding:0;width:min(840px,calc(100vw - 48px));max-height:90dvh;color:var(--ink);background:#fff;box-shadow:0 24px 100px #0005;overscroll-behavior:contain}dialog::backdrop{background:#0d1925a6;backdrop-filter:blur(5px)}.dialog-close{position:sticky;top:16px;float:right;z-index:3;margin:16px 17px -50px 0;width:34px;height:34px;border-radius:50%;background:#ffffffed;border:1px solid #e5e8ee;box-shadow:0 2px 10px #0001;font-size:24px;line-height:1;color:#526174}.dialog-close:hover{background:#edf1f8}.dialog-hero{height:200px;overflow:hidden}.dialog-body{padding:32px 40px 40px}.dialog-body h2{font-size:30px;line-height:1.45;letter-spacing:-.04em;margin:13px 0}.dialog-body .dialog-summary{font-size:14px;color:var(--muted);line-height:1.9;margin-bottom:24px}.dialog-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:20px;background:#f4f6fa;border:1px solid #e7ebf1;border-radius:8px;margin:22px 0 28px}.dialog-facts small{display:block;color:#8791a0;font-size:10px;margin-bottom:6px}.dialog-facts strong{font-size:12px;font-weight:600;line-height:1.8}.case-section{margin:26px 0}.case-section h3{font-size:17px;margin-bottom:10px}.case-section p,.case-section li{font-size:13px;color:var(--muted);line-height:1.95}.case-section ul{padding-left:18px;margin:8px 0}.case-section li{padding-left:3px;margin:6px 0}.case-note{padding:16px 18px;background:#f0f5eb;border-left:3px solid #a9ce8b;font-size:12px;line-height:1.9;color:#4e6545;border-radius:4px}.dialog-navigation{padding-top:24px;margin-top:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.dialog-navigation button{background:none;padding:5px 0;font-size:12px;color:var(--blue)}
.phone-link{display:flex;align-items:center;gap:18px;border-bottom:1px solid #becceb;padding:19px 0;font-size:11px;color:#657a9c}.phone-link strong{font-size:23px;font-weight:500;letter-spacing:.02em;color:var(--ink)}.phone-link>span:last-child{margin-left:auto;font-size:21px;color:var(--blue)}.contact-actions>div{flex-wrap:wrap;gap:14px 20px}
.project-card[data-id="p15"] .art-code,.project-card[data-id="p15"] .art-label{color:#52634c}.project-card[data-id="p3"] .art-code,.project-card[data-id="p3"] .art-label{color:#795744}
@keyframes projectile{0%{left:42%;top:42%;opacity:0}15%{opacity:1}75%{left:72%;top:35%;opacity:1}100%{left:72%;top:35%;opacity:0}}@keyframes unit-pulse{0%,100%{transform:rotate(-22deg) translateY(0)}50%{transform:rotate(-22deg) translateY(-4px)}}@keyframes target-pulse{0%,60%,100%{opacity:1}70%{opacity:.35}}
@media(min-width:1500px){.hero{min-height:680px;gap:65px}.hero-visual{height:420px}}
@media(max-width:1100px){.section-shell{width:calc(100% - 64px)}.site-header{padding:0 32px;gap:25px}.brand{min-width:180px}.site-header nav{gap:22px}.hero{gap:30px;padding-top:65px;min-height:570px}.hero h1{font-size:46px}.hero-visual{height:350px}.hero-intro{font-size:12px}.hero-location{font-size:9px}.chip-a{left:-10px;top:63px}.chip-b{right:-8px;bottom:65px}.proof-strip{gap:15px}.proof-strip>a{font-size:9px}.framework-layout{gap:30px}.practice-grid h3{font-size:19px}.ai-section{gap:55px}.experience-list article{grid-template-columns:200px 1fr}.email-link{font-size:21px}.project-art{height:200px}.project-meta h3 span{font-size:13px}.education>span:first-child{margin-right:80px}}
@media(max-width:800px){.site-header{height:77px;gap:18px}.brand{min-width:0;margin-right:auto}.site-header nav{gap:17px}.site-header nav a{font-size:11px}.nav-resume{display:none}.hero{grid-template-columns:1fr 1fr;gap:22px;min-height:530px;padding-top:55px;padding-bottom:55px}.hero h1{font-size:39px}.hero .eyebrow{font-size:9px;letter-spacing:.06em}.hero-intro{font-size:11px}.desktop-break{display:none}.hero-actions{gap:17px;flex-wrap:wrap;margin:22px 0}.button{padding:12px 14px;font-size:11px;gap:15px}.hero-actions .text-link{font-size:10px}.hero-visual{height:310px}.system-chip{padding:10px;font-size:9px}.system-chip small{font-size:6px}.chip-icon{width:24px;height:24px;font-size:16px}.visual-top{font-size:7px;padding-inline:14px}.visual-bottom{left:13px;right:13px;font-size:7px}.visual-bottom>div{gap:5px}.visual-bottom button{font-size:8px}.battle-map{inset:50px 10px 50px}.proof-strip{grid-template-columns:1.2fr repeat(3,1fr)}.proof-strip>a{display:none}.proof-strip>p{font-size:10px}.proof-strip>p strong{font-size:10px}.proof-strip>div>strong{font-size:29px}.proof-strip>div>p{font-size:9px}.section-heading h2,.ai-section h2{font-size:28px}.section-heading>p{font-size:10px;max-width:270px}.project-meta{padding:19px}.project-meta h3{font-size:20px}.project-meta h3 span{display:block;margin-left:0;margin-top:1px}.project-meta>p{font-size:11px}.project-art{height:180px}.project-footer{gap:7px}.project-footer>span{font-size:8px}.project-footer button{font-size:10px}.project-footer button span{margin-left:4px}.framework-layout{grid-template-columns:1fr;gap:28px}.framework-intro{max-width:550px}.framework-intro h3{font-size:23px}.framework-intro p{font-size:12px}.technology-line{margin-top:17px}.practice-grid{grid-template-columns:1fr}.delivery-panels{grid-template-columns:1fr 1fr}.performance-panel{position:relative}.performance-panel>p:not(.benchmark-note){max-width:90%}.performance-panel .benchmark{max-width:68%;margin-top:28px}.benchmark-result{position:absolute;right:28px;bottom:102px;display:block;margin:0}.benchmark-result>strong{font-size:43px}.benchmark-result p{margin-top:9px;font-size:10px}.practice-grid .benchmark-note{max-width:65%;margin-top:24px}.delivery-panels>article{padding:23px}.practice-grid h3{font-size:18px}.ai-section{grid-template-columns:1fr;gap:35px}.ai-intro>p:last-child{max-width:550px;font-size:12px}.ai-timeline{gap:28px}.experience-list article{grid-template-columns:170px 1fr;gap:15px}.experience-date{font-size:10px}.current-label{margin-left:8px}.experience-list h3{font-size:16px}.experience-list p{font-size:11px}.experience-role{font-size:10px}.education{gap:18px}.education>span:first-child{margin-right:25px}.education>span:last-child{margin-left:0}.contact-inner{gap:30px}.contact-inner h2{font-size:28px}.email-link{font-size:17px}.contact-actions>div{gap:16px}.site-footer{font-size:8px}.site-footer>span:nth-child(2){display:none}}
@media(max-width:600px){:root{scroll-padding-top:76px}.section-shell{width:calc(100% - 40px)}.site-header{height:72px;padding:0 20px;position:relative;z-index:9}.brand{font-size:15px;gap:9px}.brand small{font-size:8px}.brand-mark{font-size:35px;width:39px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:38px;height:38px;background:transparent;border:1px solid var(--line);border-radius:7px}.menu-toggle span{display:block;height:1px;width:17px;background:var(--ink);margin-inline:auto}.site-header nav{position:absolute;top:71px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);display:none;flex-direction:column;margin:0;gap:0;padding:10px 20px;box-shadow:0 10px 20px #00000006}.site-header nav.is-open{display:flex}.site-header nav a{font-size:14px;padding:14px 6px}.hero{grid-template-columns:1fr;padding-top:43px;padding-bottom:37px;gap:38px}.hero .eyebrow{font-size:10px;letter-spacing:.08em}.hero h1{font-size:45px;margin:20px 0;line-height:1.25}.hero-intro{font-size:12px;line-height:1.9}.hero-actions{gap:25px;margin:25px 0 23px}.hero-actions .text-link{font-size:11px}.button{padding:14px 17px;font-size:12px;gap:25px}.hero-location{font-size:9px;gap:10px;line-height:1.8}.hero-visual{height:318px;margin:0 8px}.visual-top{font-size:8px;padding:17px 16px 0}.visual-bottom{font-size:8px;left:16px;right:16px}.visual-bottom button{font-size:9px}.system-chip{font-size:10px;padding:11px 12px}.system-chip small{font-size:6px}.chip-a{left:-13px;top:58px}.chip-b{right:-12px;bottom:61px}.battle-map{inset:39px 20px 42px}.unit-a,.unit-b,.unit-c{width:38px;height:38px;border-radius:9px}.proof-strip{grid-template-columns:repeat(3,1fr);gap:19px;padding:23px 0}.proof-strip>p{grid-column:1/-1;display:flex;gap:10px;align-items:center;font-size:9px}.proof-strip>p br{display:none}.proof-strip>p strong{font-size:10px}.proof-strip>div>strong{font-size:32px}.proof-strip>div>p{font-size:10px;margin-top:8px}.projects-section{padding:57px 0 55px}.section-heading{display:block;margin-bottom:25px}.section-heading .eyebrow{font-size:9px;margin-bottom:12px}.section-heading h2,.ai-section h2{font-size:28px;line-height:1.45}.section-heading>p{margin-top:17px;font-size:11px;max-width:100%}.section-heading>.text-link{margin-top:18px;font-size:11px}.mobile-break{display:block}.project-toolbar{gap:10px;margin-bottom:22px;flex-wrap:wrap}.filter-group{gap:4px}.filter{padding:9px 11px;font-size:10px}.filter span{font-size:9px}.project-count{font-size:9px}.project-grid{grid-template-columns:1fr;gap:24px}.project-art{height:205px}.project-meta{padding:20px}.project-meta h3{font-size:23px;line-height:1.4;margin-bottom:11px}.project-meta h3 span{display:inline;font-size:14px;margin-left:9px}.project-meta>p{font-size:12px;min-height:auto;line-height:1.9}.project-footer{margin-top:18px;padding-top:16px}.project-footer>span{font-size:8px}.project-footer button{font-size:11px}.project-footer button span{margin-left:9px}.craft-section{padding:55px 0}.craft-section .section-heading{margin-bottom:35px}.framework-layout{padding-bottom:30px;gap:25px}.small-index{font-size:9px;margin-bottom:12px}.framework-intro h3{font-size:23px;margin-bottom:12px}.framework-intro p{font-size:12px}.architecture{padding:18px 15px}.architecture-tabs{gap:5px}.architecture-tabs button{padding:11px 3px;font-size:9px}.architecture-label{font-size:9px}.architecture-panel{padding:20px 2px;min-height:150px}.architecture-panel p{font-size:10px}.architecture-base{font-size:7px;gap:4px}.practice-grid{gap:20px}.performance-panel{padding:24px 20px}.practice-grid h3{font-size:20px}.practice-grid p{font-size:11px}.performance-panel>p:not(.benchmark-note){max-width:100%}.performance-panel .benchmark{max-width:100%;gap:15px;margin-top:22px}.benchmark{font-size:9px}.benchmark>div{grid-template-columns:42px 1fr 68px;gap:8px}.benchmark-result{position:static;display:flex;gap:22px;margin:21px 0 16px}.benchmark-result>strong{font-size:54px}.benchmark-result p{margin:0;font-size:11px}.practice-grid .benchmark-note{max-width:100%;margin-top:0;font-size:9px}.performance-panel .text-link{font-size:10px}.delivery-panels{grid-template-columns:1fr;gap:20px}.delivery-panels>article{padding:24px 20px}.channel-list{gap:7px}.ai-section{padding:56px 0;gap:34px}.ai-intro .eyebrow{font-size:9px;margin-bottom:15px}.ai-intro>p:last-child{font-size:12px;margin-top:16px}.ai-timeline li{gap:15px;grid-template-columns:32px 1fr}.timeline-node{width:31px;height:31px;font-size:9px}.ai-timeline li:not(:last-child):before{left:15px;top:31px}.ai-timeline h3{font-size:15px}.ai-timeline p{font-size:11px}.ai-timeline .stage-label{font-size:9px}.experience-section{padding:55px 0}.experience-list article{grid-template-columns:1fr;gap:13px;padding:23px 0}.experience-date{font-size:11px}.experience-list h3{font-size:17px}.experience-role{font-size:10px}.experience-list p{font-size:12px}.education{gap:10px 15px;padding-top:20px;font-size:10px}.education>span:first-child{margin-right:0;width:100%;font-size:8px}.education>strong{font-size:11px}.education>span:last-child{font-size:9px}.contact-section{padding:45px 0 35px}.contact-inner{grid-template-columns:1fr;gap:20px}.contact-inner h2{font-size:29px}.contact-inner .eyebrow{font-size:9px}.email-link{font-size:22px;padding:10px 0 17px;letter-spacing:-.04em}.contact-actions>div{margin-top:19px;gap:27px}.contact-actions .text-link{font-size:11px}.copy-status{font-size:10px;margin-top:7px}.site-footer{font-size:8px;padding:22px 0;gap:10px}.site-footer>a{font-size:9px}dialog{width:calc(100vw - 24px);max-height:94dvh;border-radius:13px}.dialog-hero{height:154px}.dialog-body{padding:24px 22px 28px}.dialog-body h2{font-size:25px}.dialog-body .dialog-summary{font-size:12px}.dialog-facts{padding:16px;gap:16px}.dialog-facts small{font-size:9px}.dialog-facts strong{font-size:11px}.case-section{margin:23px 0}.case-section h3{font-size:16px}.case-section p,.case-section li{font-size:12px}.case-note{font-size:11px;padding:14px}.dialog-close{top:12px;margin:12px 12px -46px 0}.dialog-navigation{font-size:10px}.dialog-navigation button{font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}
