:root{--bg:#05070d;--bg2:#02040a;--panel:rgba(12,18,32,.82);--panel2:rgba(7,11,22,.96);--text:#eef6ff;--muted:#9cafc6;--line:rgba(139,168,214,.20);--a:#52f2ff;--b:#8b5cf6;--c:#f6c86b;--ok:#25f6a2;--danger:#ff5f57;--warn:#febc2e;--r:28px;--header:74px;--w:min(1180px,calc(100% - 32px))}
*{box-sizing:border-box;min-width:0}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 18% -8%,#142653 0,#060914 33%,#020309 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;overflow-x:hidden;line-height:1.35}a{color:inherit}main{overflow:clip}.noise{position:fixed;inset:0;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");z-index:50}.ambient{position:fixed;width:44vw;height:44vw;border-radius:50%;filter:blur(66px);opacity:.20;pointer-events:none;z-index:-1}.ambient-a{background:#18e8ff;top:-16vw;right:-12vw}.ambient-b{background:#8b5cf6;bottom:-22vw;left:-10vw}
.topbar{position:fixed;top:16px;left:50%;transform:translateX(-50%);width:min(1160px,calc(100% - 28px));height:58px;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:1px solid var(--line);background:rgba(5,7,13,.76);backdrop-filter:blur(18px);border-radius:999px;box-shadow:0 20px 80px rgba(0,0,0,.28)}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;min-width:0}.brand-mark{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,rgba(82,242,255,.28),rgba(139,92,246,.28));border:1px solid rgba(82,242,255,.25);box-shadow:0 0 28px rgba(82,242,255,.15)}.brand-mark img{width:100%;height:100%;object-fit:cover;object-position:center top;transform:scale(1.18) translateY(3px)}.brand-copy{display:grid;line-height:1.12}.brand-copy b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{display:flex;gap:4px}.nav a{text-decoration:none;color:#c7d4e8;padding:10px 13px;border-radius:999px;font-size:14px;white-space:nowrap}.nav a:hover{background:rgba(255,255,255,.08);color:#fff}
h1,h2,h3,p{overflow-wrap:break-word}h1{font-size:clamp(42px,6.5vw,84px);line-height:.92;margin:0 0 22px;letter-spacing:-.065em}h2{font-size:clamp(31px,4.2vw,60px);line-height:1;letter-spacing:-.052em;margin:0 0 16px}h3{margin:0}.lead,.section-head p,.stage-copy p,.skills-copy p,.project-intro p,.contact-core p{font-size:clamp(16px,1.55vw,19px);line-height:1.58;color:#b8c7da;margin:0}.lead strong{color:#fff}.eyebrow{letter-spacing:.13em;text-transform:uppercase;color:#a7f7ff;font-size:12px;font-weight:850;margin:0 0 12px;display:flex;align-items:center;gap:8px;line-height:1.2}.eyebrow span{display:inline-grid;place-items:center;min-width:34px;height:30px;border-radius:10px;background:rgba(82,242,255,.12);border:1px solid rgba(82,242,255,.24);color:#dffcff;line-height:1;white-space:nowrap;flex:0 0 auto}.glass-frame{border:1px solid rgba(139,168,214,.18);border-radius:38px;background:linear-gradient(140deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 28px 130px rgba(0,0,0,.35)}
.section{position:relative;width:100%}.sticky-frame{position:sticky;top:0;width:var(--w);height:100svh;margin-inline:auto;padding:calc(var(--header) + 24px) clamp(18px,2.6vw,34px) 24px;display:grid;align-items:center;overflow:hidden}.hero{height:340svh}.hero-sticky{padding-left:0;padding-right:0}.hero-shell{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:30px;align-items:center;width:100%;height:calc(100svh - var(--header) - 92px);padding:clamp(22px,3vw,36px);overflow:hidden}.hero-copy,.code-stage{min-width:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;align-items:center;justify-content:flex-start}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border-radius:999px;padding:0 20px;text-decoration:none;font-weight:900;border:1px solid var(--line);color:#eaf7ff;white-space:nowrap}.btn.primary{background:linear-gradient(135deg,var(--a),var(--b));color:#031018;box-shadow:0 18px 80px rgba(82,242,255,.25)}.btn.ghost{background:rgba(255,255,255,.06)}.social-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.social-strip a{display:inline-flex;align-items:center;gap:6px;color:#dbe7f6;text-decoration:none;border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:999px;padding:9px 12px;font-size:14px;white-space:nowrap}.social-strip span{color:var(--a);font-weight:950}
.code-stage,.window{border:1px solid var(--line);background:linear-gradient(180deg,rgba(13,21,40,.84),rgba(4,7,15,.94));box-shadow:0 30px 120px rgba(0,0,0,.4);border-radius:var(--r);overflow:hidden}.hero-code{height:100%;min-height:410px;display:grid;grid-template-rows:48px minmax(0,1fr) auto}.window-top{height:48px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.045);color:#98a8bd;min-width:0}.window-top i{flex:0 0 auto;width:11px;height:11px;border-radius:99px;background:var(--danger);display:inline-block;box-shadow:inset 0 -1px rgba(0,0,0,.25)}.window-top i:nth-child(2){background:var(--warn)}.window-top i:nth-child(3){background:#28c840}.window-top span{color:#9eb2ca;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.code{margin:0;padding:22px;font:500 14px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#e8f9ff;white-space:pre-wrap;overflow:auto}.caret{display:inline-block;width:9px;height:1.2em;background:var(--a);vertical-align:-2px;animation:blink .7s steps(1) infinite}.caret.small{width:7px}.compile-card{margin:0 18px 18px;padding:15px;border:1px solid rgba(82,242,255,.22);border-radius:20px;background:rgba(82,242,255,.08)}.compile-card p{margin:6px 0 0;color:#aabbd0;font-size:14px;line-height:1.45}.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--ok);display:inline-block;margin-right:8px;box-shadow:0 0 0 0 rgba(37,246,162,.5);animation:pulse 1.4s infinite}.scroll-hint{position:absolute;left:0;right:0;bottom:20px;margin:auto;display:flex;align-items:center;justify-content:center;gap:10px;color:#bfd2e8;font-size:13px;letter-spacing:.04em;animation:floatHint 1.8s ease-in-out infinite;text-align:center;width:max-content;max-width:90%}.scroll-hint span{display:inline-block;width:42px;height:1px;background:linear-gradient(90deg,transparent,var(--a),var(--b),transparent)}
.token-comment{color:#6b8298}.token-key{color:#c792ea}.token-prop{color:#82aaff}.token-str{color:#c3e88d}.token-name{color:#f6c86b}.token-fn{color:#52f2ff}.token-num{color:#f78c6c}
.scroll-system{height:560svh}.system-sticky{grid-template-columns:minmax(190px,.7fr) minmax(300px,1fr) minmax(360px,1.05fr);gap:22px}.mobile-rail{display:none}.stage-visual{position:relative;min-height:360px;border-radius:32px;background:radial-gradient(circle,rgba(82,242,255,.16),rgba(255,255,255,.03) 46%,transparent 70%);border:1px solid var(--line);overflow:hidden}.orbit{position:absolute;inset:16%;border:1px solid rgba(82,242,255,.32);border-radius:50%;animation:spin 12s linear infinite}.orbit-two{inset:27%;border-color:rgba(139,92,246,.32);animation-duration:8s;animation-direction:reverse}.pulse-core{position:absolute;inset:35%;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--a),var(--b));color:#031018;font-size:clamp(38px,5vw,58px);font-weight:950;box-shadow:0 0 80px rgba(82,242,255,.4)}.grid-plane{position:absolute;inset:auto -20% 0;height:44%;background:linear-gradient(rgba(82,242,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(82,242,255,.08) 1px,transparent 1px);background-size:32px 32px;transform:perspective(400px) rotateX(62deg);opacity:.55}.stage-copy h2{font-size:clamp(30px,4vw,56px)}.scene-progress{height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;margin:22px 0}.scene-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--a),var(--b),var(--c))}.scene-tags{display:flex;flex-wrap:wrap;gap:8px}.scene-tags span{padding:9px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.05);color:#dce9f9;font-size:13px}.code-window{display:grid;grid-template-rows:48px minmax(0,1fr) auto;max-height:calc(100svh - var(--header) - 88px)}.code-window pre,.project-code pre{margin:0;padding:20px;font:500 13px/1.62 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#dff8ff;white-space:pre-wrap;overflow:auto;min-height:0}.terminal-line{display:flex;gap:12px;padding:14px 16px;border-top:1px solid var(--line);color:#b6c7dc;align-items:flex-start}.terminal-line span{color:var(--a);text-transform:uppercase;font-size:11px;letter-spacing:.14em;flex:0 0 auto}.terminal-line b{font-size:13px;line-height:1.4}
.capability-section{height:410svh}.cap-sticky{grid-template-rows:auto minmax(0,1fr);align-content:center;gap:20px}.section-head{max-width:880px}.cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-self:stretch;align-items:stretch}.cap-card,.project-feature,.project-code,.contact-card,.skill-group{border:1px solid var(--line);background:linear-gradient(180deg,rgba(13,21,40,.76),rgba(8,12,24,.9));border-radius:28px;padding:20px;position:relative;overflow:hidden;min-height:0}.cap-card{display:flex;flex-direction:column;opacity:.34;transform:translateY(18px) scale(.985);transition:opacity .45s ease,transform .45s ease,border-color .45s ease}.cap-card.scroll-live{opacity:.88;transform:translateY(0) scale(1)}.cap-card.scroll-active{opacity:1;border-color:rgba(82,242,255,.55);box-shadow:0 20px 80px rgba(82,242,255,.08)}.cap-icon{width:46px;height:46px;border-radius:18px;display:grid;place-items:center;font-size:24px;background:linear-gradient(135deg,rgba(82,242,255,.16),rgba(139,92,246,.18));border:1px solid rgba(82,242,255,.22);margin-bottom:14px}.cap-card h3{font-size:21px;margin-bottom:9px}.cap-card p{color:#afc0d4;font-size:14.5px;line-height:1.52;margin:0 0 14px}.cap-card strong{margin-top:auto;color:#fff;font-size:17px}.cap-card strong span{color:var(--a)}
.curve-section{height:430svh}.curve-sticky{grid-template-rows:auto minmax(0,1fr);gap:18px}.curve-head .eyebrow{white-space:normal}.curve-wrap{position:relative;align-self:stretch;border:1px solid var(--line);border-radius:34px;background:linear-gradient(180deg,rgba(13,21,40,.58),rgba(5,8,17,.82));overflow:hidden;min-height:0}.curve-wrap svg{position:absolute;inset:8% 4%;width:92%;height:84%;overflow:visible}.curve-wrap path{fill:none;stroke:url(#curveGradient);stroke-width:7;stroke-linecap:round;stroke-dasharray:1600;stroke-dashoffset:1600;filter:drop-shadow(0 0 18px rgba(82,242,255,.4))}.curve-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%) scale(.85);min-width:98px;padding:12px 14px;border-radius:18px;border:1px solid rgba(82,242,255,.22);background:rgba(5,9,18,.78);backdrop-filter:blur(10px);opacity:.16;transition:.3s ease;text-align:center}.curve-node b{display:block}.curve-node span{color:#9fb1c8;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.project-scroll{height:1120svh}.project-sticky{grid-template-rows:auto minmax(0,1fr);gap:18px}.project-intro{max-width:900px}.project-showcase{display:grid;grid-template-columns:58px minmax(0,1fr) minmax(330px,.86fr);gap:16px;align-self:stretch;min-height:0}.project-rail{display:flex;flex-direction:column;align-items:center;gap:10px}.rail-line{width:8px;flex:1;min-height:0;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.rail-line i{display:block;width:100%;height:0;background:linear-gradient(var(--a),var(--b),var(--c));border-radius:999px}.project-rail b{font-size:22px;color:#dffcff}.project-feature{display:flex;flex-direction:column}.project-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;color:#9fb2ca;font-size:13px}.project-top b{color:#dffcff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-feature h3{font-size:clamp(25px,3vw,42px);line-height:1.03;letter-spacing:-.035em;margin-bottom:14px}.project-feature p{color:#b5c5d8;line-height:1.58;margin:0 0 16px;font-size:16px}.project-metrics{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto}.project-metrics strong{border:1px solid rgba(82,242,255,.22);background:rgba(82,242,255,.08);border-radius:16px;padding:11px 13px;color:#fff}.project-metrics span{color:var(--a)}.project-feature em{display:block;color:#9fb0c6;margin-top:14px;font-style:normal;line-height:1.45}.project-code{display:grid;grid-template-rows:48px minmax(0,1fr)}
.skills-scroll{height:480svh}.skills-sticky{grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr);gap:28px}.cpu-bg{position:absolute;inset:calc(var(--header) + 40px) 24px 34px auto;width:64%;border:1px solid rgba(82,242,255,.15);border-radius:36px;opacity:.7;background:linear-gradient(90deg,rgba(82,242,255,.11) 1px,transparent 1px),linear-gradient(rgba(82,242,255,.11) 1px,transparent 1px);background-size:48px 48px;mask:linear-gradient(90deg,transparent,black 15%,black 85%,transparent);pointer-events:none}.cpu-bg:before,.cpu-bg:after{content:"";position:absolute;inset:12%;border:1px solid rgba(139,92,246,.18);border-radius:22px;box-shadow:0 0 0 1px rgba(82,242,255,.05),0 0 60px rgba(82,242,255,.08)}.cpu-bg:after{inset:26%;border-color:rgba(246,200,107,.18)}.cpu-bg i,.cpu-bg span{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,rgba(82,242,255,.25) 50%,transparent 51%),linear-gradient(transparent 49%,rgba(139,92,246,.20) 50%,transparent 51%);background-size:96px 96px;opacity:.7}.skills-copy{position:relative;z-index:1}.skill-matrix{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-self:center}.skill-group{opacity:.24;transform:translateY(18px);transition:.4s ease}.skill-group.on{opacity:1;transform:none;border-color:rgba(82,242,255,.34)}.skill-group b{display:block;color:#fff;margin-bottom:12px}.skill-group span{display:inline-flex;margin:4px 4px 4px 0;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);color:#cddbee;font-size:12.5px;white-space:nowrap}
.contact{height:360svh}.contact-sticky{grid-template-rows:auto auto;justify-content:center;align-content:center;text-align:center;gap:28px}.contact-core{max-width:840px;margin:auto}.contact-core .eyebrow{justify-content:center}.contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:100%}.contact-card{display:grid;gap:8px;text-decoration:none;place-items:center;text-align:center;min-height:170px;opacity:.18;transform:translateY(24px) scale(.96);transition:.45s ease}.contact-card.on{opacity:1;transform:none}.contact-card span{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(82,242,255,.18),rgba(139,92,246,.20));border:1px solid rgba(82,242,255,.25);color:#a7f7ff;font-weight:950}.contact-card b{font-size:19px}.contact-card small{color:#9fb1c8;overflow-wrap:anywhere}
.cap-card:before,.project-feature:before,.project-code:before,.contact-card:before,.skill-group:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,10%),rgba(82,242,255,.16),transparent 38%);opacity:.75;pointer-events:none}@keyframes blink{50%{opacity:0}}@keyframes pulse{to{box-shadow:0 0 0 13px rgba(37,246,162,0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes floatHint{50%{transform:translateY(-5px);opacity:.68}}
@media (max-width: 1020px){.system-sticky{grid-template-columns:minmax(0,.95fr) minmax(340px,1fr)}.stage-visual{display:none}.project-showcase{grid-template-columns:46px minmax(0,1fr) minmax(300px,.8fr)}.cap-grid{gap:12px}.cap-card{padding:16px}.skills-sticky{grid-template-columns:1fr 1.15fr}}
@media (max-width: 920px){:root{--header:62px;--w:min(100% - 18px,680px)}.topbar{top:10px;height:52px;width:calc(100% - 18px);padding:6px 8px}.brand-mark{width:40px;height:40px;flex-basis:40px}.brand-copy b{font-size:13px}.brand-copy small{font-size:11px}.nav{display:none}.sticky-frame{padding:calc(var(--header) + 10px) 12px 14px;border-radius:28px}.hero{height:360svh}.hero-sticky{padding-left:0;padding-right:0}.hero-shell{display:block;position:relative;width:100%;height:calc(100svh - var(--header) - 26px);padding:0;border-radius:28px}.hero-code{position:absolute;inset:0;height:100%;min-height:0;border:0;border-radius:28px;grid-template-rows:44px minmax(0,1fr) auto}.hero-code .code{padding:14px;font-size:11.4px;line-height:1.46}.compile-card{margin:0 10px 10px;padding:11px}.compile-card p{font-size:12px}.hero-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:18px 14px;background:linear-gradient(180deg,rgba(5,7,13,.76),rgba(5,7,13,.96));backdrop-filter:blur(10px);opacity:0;transform:translateY(22px);text-align:center;pointer-events:none}.hero-copy .eyebrow{justify-content:center}.hero-copy h1{font-size:clamp(31px,9.6vw,50px);line-height:.96;letter-spacing:-.055em;margin-bottom:14px}.lead{font-size:14.2px;line-height:1.48}.hero-actions,.social-strip{justify-content:center}.btn{min-height:44px;width:min(100%,260px)}.social-strip{gap:7px}.social-strip a{font-size:12px;padding:7px 9px}.scroll-hint{bottom:6px;font-size:11.5px}.scroll-hint span{width:24px}.mobile-rail{display:block;position:absolute;left:7px;top:calc(var(--header) + 16px);bottom:18px;width:5px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;z-index:3}.mobile-rail i{display:block;width:100%;height:0;background:linear-gradient(var(--a),var(--b),var(--c))}.system-sticky{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:10px;padding-left:18px}.stage-copy h2{font-size:clamp(27px,7.6vw,40px);margin-bottom:9px}.stage-copy p{font-size:14.3px;line-height:1.43}.scene-progress{margin:12px 0}.scene-tags{gap:6px}.scene-tags span{font-size:11.5px;padding:6px 8px}.code-window{height:auto;max-height:none;align-self:stretch;display:grid;grid-template-rows:44px minmax(0,1fr) auto}.code-window pre{font-size:11.4px;line-height:1.45;padding:13px}.terminal-line{padding:10px 12px}.terminal-line b{font-size:11.8px}.capability-section{height:520svh}.cap-sticky{grid-template-rows:auto minmax(0,1fr);gap:12px}.cap-head h2{font-size:clamp(27px,7.9vw,42px);margin-bottom:9px}.cap-head p{font-size:13.8px;line-height:1.4}.cap-grid{grid-template-columns:1fr;gap:8px;align-self:stretch;overflow:hidden}.cap-card{min-height:0;padding:13px 14px;border-radius:20px}.cap-icon{width:34px;height:34px;font-size:18px;border-radius:13px;margin-bottom:7px}.cap-card h3{font-size:16px;margin-bottom:4px}.cap-card p{font-size:12.4px;line-height:1.34;margin-bottom:7px}.cap-card strong{font-size:14px}.curve-section{height:460svh}.curve-sticky{grid-template-rows:auto minmax(0,1fr);gap:12px}.curve-head h2{font-size:clamp(26px,7.7vw,40px);margin-bottom:0}.curve-wrap{min-height:0}.curve-wrap svg{inset:12% 4%;width:92%;height:72%}.curve-node{min-width:74px;padding:7px 8px;border-radius:14px}.curve-node b{font-size:12px}.curve-node span{font-size:9.5px}.project-scroll{height:1180svh}.project-sticky{gap:10px;padding-left:18px}.project-intro h2{font-size:clamp(25px,7.5vw,38px);margin-bottom:7px}.project-intro p{font-size:13px;line-height:1.35}.project-showcase{grid-template-columns:1fr;grid-template-rows:minmax(0,.9fr) minmax(145px,.7fr);height:auto;align-self:stretch;gap:9px}.project-rail{display:none}.project-mobile-rail{display:block}.project-feature{padding:14px;border-radius:22px}.project-top{margin-bottom:7px;font-size:11.5px}.project-feature h3{font-size:20px;line-height:1.07;margin-bottom:7px}.project-feature p{font-size:12.5px;line-height:1.34;margin-bottom:8px}.project-metrics{gap:7px}.project-metrics strong{font-size:11.6px;padding:7px 8px}.project-feature em{font-size:11.6px;margin-top:7px;line-height:1.3}.project-code{border-radius:22px;min-height:0;display:grid;grid-template-rows:44px minmax(0,1fr)}.project-code pre{font-size:10.8px;line-height:1.38;padding:11px}.skills-scroll{height:520svh}.skills-sticky{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:10px}.cpu-bg{inset:calc(var(--header) + 116px) 12px 14px;width:auto;opacity:.45;background-size:34px 34px}.skills-copy h2{font-size:clamp(26px,7.6vw,40px);margin-bottom:8px}.skills-copy p{font-size:13.5px;line-height:1.38}.skill-matrix{grid-template-columns:1fr;gap:8px;align-self:stretch;overflow:hidden}.skill-group{padding:11px 12px;border-radius:18px}.skill-group b{margin-bottom:6px;font-size:13.5px}.skill-group span{font-size:10.8px;padding:5px 7px;margin:3px 3px 3px 0}.contact{height:380svh}.contact-sticky{gap:14px}.contact-core h2{font-size:clamp(28px,8vw,42px);margin-bottom:8px}.contact-core p{font-size:13.8px;line-height:1.42}.contact-grid{grid-template-columns:1fr 1fr;gap:9px}.contact-card{min-height:118px;padding:12px;border-radius:20px}.contact-card span{width:38px;height:38px;border-radius:14px}.contact-card b{font-size:15px}.contact-card small{font-size:10.8px}}
@media (max-width: 430px){:root{--w:calc(100% - 14px)}.topbar{width:calc(100% - 12px)}.brand-copy small{display:none}.sticky-frame{padding-left:10px;padding-right:10px}.hero-shell{height:calc(100svh - var(--header) - 20px)}.window-top{height:42px;padding:0 11px}.window-top i{width:10px;height:10px}.window-top span{font-size:11px}.hero-code .code{font-size:10.7px;line-height:1.42}.hero-copy h1{font-size:30px}.lead{font-size:13.2px}.cap-card p{font-size:11.8px}.project-showcase{grid-template-rows:minmax(0,.98fr) minmax(125px,.62fr)}.project-feature h3{font-size:18.3px}.project-feature p{font-size:11.7px}.project-code pre{font-size:10px}.contact-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
/* V20 stability pass: keep visible content inside the sticky frame */
.hero-copy{max-height:100%;overflow:hidden}.hero-copy h1{font-size:clamp(38px,5.4vw,72px);line-height:.94}.hero-copy .lead{font-size:clamp(15px,1.28vw,18px)}
@media (max-width:920px){.hero-copy{overflow:hidden}.hero-copy h1{font-size:clamp(28px,8.8vw,44px)}.hero-copy .lead{font-size:13.5px}.hero-actions{margin-top:16px}.social-strip{margin-top:14px}.hero-copy{padding-bottom:24px}.hero-copy .eyebrow{font-size:10.5px}.hero-copy .eyebrow span{height:26px;min-width:30px}}
@media (max-width:920px){.hero-copy{inset:0 0 8px 0}}

/* V21 final minimal polish: keep V20 design, fix only requested items */
html{scroll-padding-top:calc(var(--header) + 24px)}
.section + .section{margin-top:clamp(18px,2.8vw,34px)}
.brand-mark{background:radial-gradient(circle at 50% 35%,rgba(82,242,255,.20),rgba(139,92,246,.14) 55%,rgba(2,4,10,.9));}
.brand-mark img{width:92%;height:92%;object-fit:contain;object-position:center;transform:none;filter:drop-shadow(0 0 12px rgba(82,242,255,.16))}
.mobile-menu-btn{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.055);color:#fff;place-items:center;padding:0;cursor:pointer;flex:0 0 auto}
.mobile-menu-btn span{display:block;width:17px;height:2px;margin:3px auto;background:#dff7ff;border-radius:99px;transition:.22s ease}.topbar.menu-open .mobile-menu-btn span:nth-child(1){transform:translateY(5px) rotate(45deg)}.topbar.menu-open .mobile-menu-btn span:nth-child(2){opacity:0}.topbar.menu-open .mobile-menu-btn span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
@media (min-width:921px){
  .nav{gap:2px}.nav a{font-size:12.5px;padding:9px 10px}
  .hero-shell{height:calc(100svh - var(--header) - 56px);gap:24px;padding:clamp(20px,2.5vw,30px);overflow:hidden}
  .hero-copy{display:flex;flex-direction:column;justify-content:center;align-self:stretch;max-height:100%}
  .hero-copy h1{font-size:clamp(34px,4.55vw,60px);line-height:.96;margin-bottom:16px;letter-spacing:-.055em}
  .hero-copy .lead{font-size:clamp(14.5px,1.12vw,16.5px);line-height:1.5}
  .hero-actions{margin-top:18px;justify-content:center}.social-strip{margin-top:14px;justify-content:center}.btn{min-height:46px;padding-inline:18px}.social-strip a{font-size:13px;padding:8px 10px}
  .hero-code{min-height:0}.hero-code .code{font-size:13px;line-height:1.55;padding:18px}.compile-card{margin:0 16px 16px;padding:13px}.scroll-hint{bottom:12px;left:50%;right:auto;transform:translateX(-50%)}
}
@media (max-width:920px){
  .mobile-menu-btn{display:block}.topbar{overflow:visible}.nav{display:none}.topbar.menu-open .nav{position:absolute;top:calc(100% + 10px);right:0;left:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;border:1px solid var(--line);border-radius:24px;background:rgba(5,7,13,.96);box-shadow:0 30px 90px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.topbar.menu-open .nav a{display:flex;justify-content:center;padding:12px 10px;background:rgba(255,255,255,.055);font-size:12px;border:1px solid rgba(255,255,255,.06)}
  .brand-mark img{width:94%;height:94%;object-fit:contain;object-position:center;transform:none}.brand-copy b{max-width:160px}.section + .section{margin-top:22px}
  .hero-actions{justify-content:center;align-items:center}.social-strip{justify-content:center}.hero-actions .btn{margin-inline:auto}.hero-shell{height:calc(100svh - var(--header) - 12px)}
  .skill-group{white-space:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.skill-group::-webkit-scrollbar{display:none}.skill-group b{display:block;white-space:normal}.skill-group span{white-space:nowrap;flex:0 0 auto}
}


/* V25 upgrade: keep V21 visual DNA, fix requested home + projects polish */
.nav a{font-weight:750}.scroll-hint{left:50%!important;right:auto!important;transform:translateX(-50%)!important;justify-content:center;animation:scrollHintPulse 1.8s ease-in-out infinite}.scroll-hint b{text-align:center;white-space:nowrap}@keyframes scrollHintPulse{0%,100%{opacity:.55;filter:drop-shadow(0 0 0 rgba(82,242,255,0))}50%{opacity:1;filter:drop-shadow(0 0 18px rgba(82,242,255,.34))}}.scroll-hint span{animation:hintLine 1.8s ease-in-out infinite}@keyframes hintLine{50%{width:58px;background:linear-gradient(90deg,var(--a),var(--b),var(--c))}}
.hero-code .code{overflow:hidden}.hero{height:390svh}.hero-actions,.social-strip{justify-content:center}.code .token-key,.window .token-key{color:#ff7ab6}.code .token-str,.window .token-str{color:#f6c86b}.code .token-fn,.window .token-fn{color:#52f2ff}.code .token-prop,.window .token-prop{color:#b9f27d}.code .token-num,.window .token-num{color:#a78bfa}.code .token-comment,.window .token-comment{color:#7f8ea3;font-style:italic}
.skills-scroll{height:620svh}.skills-sticky{grid-template-columns:minmax(270px,.42fr) minmax(0,1fr);gap:24px}.skill-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:center;overflow:visible}.skill-group{position:relative;overflow:hidden;min-height:118px;padding:18px;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(139,168,214,.18);opacity:.25;transform:translateY(18px) scale(.96);transition:opacity .35s ease,transform .35s ease}.skill-group.on{opacity:1;transform:translateY(0) scale(1)}.skill-group b{display:block;color:#fff;margin-bottom:12px;font-size:15px}.skill-track{display:flex;flex-wrap:wrap;gap:7px;max-width:100%}.skill-track span{display:inline-flex;margin:0;font-size:12px;line-height:1;border:1px solid rgba(82,242,255,.16);background:rgba(82,242,255,.075);color:#dcecff;border-radius:999px;padding:8px 10px;white-space:nowrap}.cpu-bg{background-image:linear-gradient(rgba(82,242,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(82,242,255,.07) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(82,242,255,.12),transparent 45%);background-size:42px 42px,42px 42px,100% 100%}.cpu-bg:before,.cpu-bg:after,.cpu-bg em{content:"";position:absolute;inset:8%;border:1px solid rgba(82,242,255,.16);clip-path:polygon(0 40%,12% 40%,12% 32%,28% 32%,28% 18%,45% 18%,45% 8%,55% 8%,55% 18%,72% 18%,72% 32%,88% 32%,88% 40%,100% 40%,100% 60%,88% 60%,88% 68%,72% 68%,72% 82%,55% 82%,55% 92%,45% 92%,45% 82%,28% 82%,28% 68%,12% 68%,12% 60%,0 60%);opacity:.55;animation:cpuPulse 3.6s ease-in-out infinite}.cpu-bg:after{inset:18%;animation-delay:.8s;opacity:.35}.cpu-bg em{inset:30%;animation-delay:1.5s;opacity:.4}@keyframes cpuPulse{50%{filter:drop-shadow(0 0 16px rgba(82,242,255,.35));opacity:.85}}
.contact-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.brand-svg{font-weight:950;font-size:15px;letter-spacing:-.03em}.telegram-icon{background:linear-gradient(135deg,#2AABEE,#1976d2)!important}.whatsapp-icon{background:linear-gradient(135deg,#25D366,#128C7E)!important}.github-icon{background:linear-gradient(135deg,#fff,#8b949e)!important;color:#05070d!important;font-size:12px!important}.linkedin-icon{background:#0A66C2!important}.email-icon{background:linear-gradient(135deg,var(--c),var(--a))!important;color:#06101c!important}
@media (min-width:921px){.hero-shell{height:calc(100svh - var(--header) - 44px)}.hero-code .code{font-size:12.2px;line-height:1.47}.hero-copy h1{font-size:clamp(34px,4.1vw,56px)}.hero-copy .lead{font-size:15.2px}.skills-sticky{padding-top:calc(var(--header) + 22px);padding-bottom:22px}.contact-grid{gap:10px}.contact-card small{font-size:10.5px}}
@media (max-width:920px){.hero{height:430svh}.hero-shell{height:calc(100svh - var(--header) - 10px)}.hero-code .code{font-size:10.15px;line-height:1.38;padding:12px}.scroll-hint{bottom:4px}.skills-scroll{height:720svh}.skills-sticky{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:11px}.skill-matrix{grid-template-columns:1fr;gap:8px;align-content:stretch;overflow:hidden}.skill-group{min-height:82px;padding:11px 12px;border-radius:18px}.skill-group b{font-size:13px;margin-bottom:8px}.skill-track{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}.skill-track::-webkit-scrollbar{display:none}.skill-track span{font-size:10.5px;padding:6px 8px;flex:0 0 auto}.cpu-bg{inset:calc(var(--header) + 116px) 8px 12px;opacity:.42}.contact-grid{grid-template-columns:1fr 1fr}.contact-card{min-height:112px}.topbar.menu-open .nav{grid-template-columns:1fr 1fr}.topbar.menu-open .nav a{font-size:11.5px}}
@media (max-width:430px){.contact-grid{grid-template-columns:1fr}.hero-code .code{font-size:9.75px;line-height:1.34}.skill-group{min-height:78px}}


/* Projects page V25 */
.projects-hero{height:760svh}.projects-page-sticky{grid-template-rows:auto minmax(0,1fr);gap:18px}.project-page-head{max-width:980px;margin:auto auto 0;text-align:center}.project-page-head h1{font-size:clamp(40px,5.8vw,76px)}.project-filters{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:24px}.project-filters button{border:1px solid var(--line);background:rgba(255,255,255,.055);color:#dcecff;border-radius:999px;padding:10px 14px;font-weight:850;cursor:pointer}.project-filters button.active{background:linear-gradient(135deg,var(--a),var(--b));color:#031018}.project-category-board{height:100%;min-height:0;overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:center}.project-category{border:1px solid rgba(139,168,214,.16);background:rgba(255,255,255,.035);border-radius:26px;padding:16px;opacity:.35;transform:translateY(16px);transition:.35s ease}.project-category.live{opacity:1;transform:translateY(0)}.project-category.hidden-cat{display:none}.project-category h2{font-size:21px;margin:0 0 12px;letter-spacing:-.03em}.project-list{display:grid;gap:8px}.project-list article{border:1px solid rgba(82,242,255,.12);background:rgba(4,8,18,.58);border-radius:18px;padding:12px}.project-list article.hidden{display:none}.project-list b{display:block;margin-bottom:4px}.project-list p{margin:0;color:#aebdd2;font-size:12.8px;line-height:1.35}.python-lab{height:420svh}.python-sticky{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:24px}.python-mark{position:absolute;inset:12%;opacity:.18;pointer-events:none}.python-mark i{position:absolute;width:42%;height:38%;border-radius:34% 34% 20% 34%;background:linear-gradient(135deg,var(--a),var(--b));filter:blur(.1px) drop-shadow(0 0 22px rgba(82,242,255,.32));transform:translateX(var(--px,0)) translateY(var(--py,0)) rotate(var(--pr,0deg));transition:.25s ease}.python-mark i:nth-child(1){left:20%;top:18%;--px:-40px;--py:-20px;--pr:-9deg}.python-mark i:nth-child(2){right:20%;bottom:18%;--px:40px;--py:20px;--pr:9deg;background:linear-gradient(135deg,var(--c),var(--a));border-radius:20% 34% 34% 34%}.python-lab.on .python-mark i{--px:0;--py:0;--pr:0deg}.python-copy{position:relative;z-index:2}.python-modules{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.python-modules article{border:1px solid rgba(139,168,214,.18);background:rgba(255,255,255,.05);border-radius:24px;padding:18px;font-weight:950;opacity:.25;transform:translateY(16px);transition:.35s ease}.python-modules article.on{opacity:1;transform:translateY(0)}.python-modules span{display:block;color:var(--muted);font-size:13px;margin-top:6px}.platforms-section{height:420svh}.platforms-sticky{grid-template-rows:auto minmax(0,1fr);gap:18px}.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.platform-grid a{text-decoration:none;border:1px solid rgba(139,168,214,.16);background:rgba(255,255,255,.045);border-radius:24px;padding:18px;min-height:130px;display:flex;flex-direction:column;justify-content:space-between}.platform-grid b{font-size:18px}.platform-grid span{color:var(--muted);font-size:13px;line-height:1.35}
@media (max-width:920px){.projects-hero{height:980svh}.projects-page-sticky{padding-left:12px;padding-right:12px}.project-page-head h1{font-size:clamp(30px,9vw,48px)}.project-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative}.project-filters button{font-size:11.5px;padding:10px 8px}.project-category-board{grid-template-columns:1fr;gap:10px;align-content:start;overflow:hidden}.project-category{padding:12px;border-radius:20px}.project-category h2{font-size:17px}.project-list article{padding:10px}.project-list p{font-size:11.7px}.python-sticky{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px}.python-mark{inset:22% 4% 10%}.python-modules{grid-template-columns:1fr;gap:8px}.python-modules article{padding:13px;border-radius:18px}.platform-grid{grid-template-columns:1fr;gap:9px}.platform-grid a{min-height:90px;padding:13px;border-radius:18px}}

/* V26 — CPU skill background + full Projects page redesign */
.skills-sticky{position:sticky}.skills-sticky .cpu-bg{position:absolute;inset:calc(var(--header) + 42px) 24px 24px;border-radius:32px;overflow:hidden;opacity:.54;pointer-events:none;background:radial-gradient(circle at 50% 45%,rgba(82,242,255,.16),transparent 30%),linear-gradient(rgba(82,242,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(82,242,255,.07) 1px,transparent 1px);background-size:100% 100%,44px 44px,44px 44px;transform:translateY(calc(var(--skillp,0)*-18px)) scale(calc(1 + var(--skillp,0)*.018));}
.skills-sticky .cpu-bg:before{content:"";position:absolute;inset:9%;border:1px solid rgba(82,242,255,.22);border-radius:26px;box-shadow:0 0 0 1px rgba(139,92,246,.08),inset 0 0 44px rgba(82,242,255,.05);background:linear-gradient(90deg,transparent 0 7%,rgba(82,242,255,.20) 7% 7.5%,transparent 7.5% 14%,rgba(139,92,246,.20) 14% 14.5%,transparent 14.5% 100%),linear-gradient(0deg,transparent 0 10%,rgba(246,200,107,.14) 10% 10.5%,transparent 10.5% 20%,rgba(82,242,255,.16) 20% 20.5%,transparent 20.5% 100%);background-size:120px 120px;filter:drop-shadow(0 0 18px rgba(82,242,255,.22));animation:cpuDrift 5.8s linear infinite;opacity:calc(.45 + var(--skillp,0)*.45)}
.skills-sticky .cpu-bg:after{content:"";position:absolute;left:50%;top:50%;width:min(270px,44vw);height:min(270px,44vw);transform:translate(-50%,-50%) rotate(calc(var(--skillp,0)*16deg));border-radius:34px;border:1px solid rgba(82,242,255,.32);background:radial-gradient(circle,rgba(82,242,255,.15),rgba(139,92,246,.08) 45%,rgba(5,7,13,.12));box-shadow:0 0 60px rgba(82,242,255,.12),inset 0 0 42px rgba(82,242,255,.08)}
.skills-sticky .cpu-bg span,.skills-sticky .cpu-bg i,.skills-sticky .cpu-bg em{position:absolute;display:block;background:linear-gradient(90deg,transparent,var(--a),var(--b),transparent);height:1px;opacity:.45;animation:traceFlow 2.6s linear infinite}.skills-sticky .cpu-bg span{left:8%;right:8%;top:24%}.skills-sticky .cpu-bg i{left:8%;right:8%;bottom:25%;animation-delay:.8s}.skills-sticky .cpu-bg em{width:1px;height:auto;top:10%;bottom:10%;left:28%;background:linear-gradient(0deg,transparent,var(--c),var(--a),transparent);animation-delay:1.4s}@keyframes cpuDrift{to{background-position:120px 120px}}@keyframes traceFlow{0%{filter:brightness(.6);transform:translateX(-18px)}50%{filter:brightness(1.8);opacity:.88}100%{filter:brightness(.6);transform:translateX(18px)}}
.skills-copy,.skill-matrix{position:relative;z-index:2}.skill-group:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(82,242,255,.12),transparent 36%);opacity:.8;pointer-events:none}.skill-group b,.skill-track{position:relative;z-index:1}

.projects-v2 main{overflow:clip}.projects-v2 .section{margin-top:26px}.project-landing-v2{height:310svh}.project-landing-sticky{grid-template-columns:minmax(0,1fr) minmax(310px,.72fr);gap:26px;align-items:center}.project-orbital{position:absolute;inset:8%;pointer-events:none;opacity:.38}.project-orbital i{position:absolute;border:1px solid rgba(82,242,255,.16);border-radius:50%;animation:spin 18s linear infinite}.project-orbital i:nth-child(1){inset:2% 18%}.project-orbital i:nth-child(2){inset:18% 6%;border-color:rgba(139,92,246,.18);animation-duration:12s;animation-direction:reverse}.project-orbital i:nth-child(3){inset:30% 28%;border-color:rgba(246,200,107,.18);animation-duration:9s}.project-hero-copy,.project-command-card{position:relative;z-index:2}.project-hero-copy h1{font-size:clamp(40px,6.3vw,82px)}.project-filters-v2{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px;justify-content:flex-start}.project-filters-v2 button{border:1px solid rgba(139,168,214,.20);background:rgba(255,255,255,.055);color:#dcecff;border-radius:999px;padding:11px 14px;font-weight:850;cursor:pointer;transition:.25s ease}.project-filters-v2 button:hover{border-color:rgba(82,242,255,.38);transform:translateY(-1px)}.project-filters-v2 button.active{background:linear-gradient(135deg,var(--a),var(--b));color:#031018;box-shadow:0 18px 60px rgba(82,242,255,.18)}.project-command-card{border:1px solid var(--line);border-radius:28px;overflow:hidden;background:linear-gradient(180deg,rgba(13,21,40,.86),rgba(4,7,15,.94));box-shadow:0 30px 120px rgba(0,0,0,.36)}.project-command-card pre{margin:0;padding:22px;font:500 13px/1.7 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#dff8ff;white-space:pre-wrap}
.project-stage-v2{height:430svh}.project-stage-sticky{grid-template-columns:minmax(150px,.22fr) minmax(260px,.48fr) minmax(0,1fr);gap:22px;align-items:center}.stage-label{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(82,242,255,.15);border-radius:28px;background:rgba(255,255,255,.035);padding:20px;color:#dcecff}.stage-label span{font-size:clamp(42px,5vw,72px);font-weight:950;line-height:.9;letter-spacing:-.08em;color:rgba(82,242,255,.86)}.stage-label b{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:#a9bdd4}.stage-copy-v2 h2{font-size:clamp(31px,4.2vw,60px);line-height:1;letter-spacing:-.055em}.stage-copy-v2 p{color:#b8c7da;line-height:1.58;font-size:clamp(15px,1.45vw,18px)}.project-card-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-card-grid-v2 article{position:relative;overflow:hidden;min-height:190px;border:1px solid rgba(139,168,214,.18);border-radius:26px;background:linear-gradient(150deg,rgba(255,255,255,.065),rgba(255,255,255,.022));padding:18px;opacity:.28;transform:translateY(18px) scale(.98);transition:opacity .38s ease,transform .38s ease,border-color .38s ease}.project-card-grid-v2 article:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 12%,rgba(82,242,255,.13),transparent 42%);opacity:.8}.project-card-grid-v2 article span,.project-card-grid-v2 article h3,.project-card-grid-v2 article p,.project-card-grid-v2 article b{position:relative;z-index:1}.project-card-grid-v2 article span{display:inline-flex;border:1px solid rgba(82,242,255,.16);border-radius:999px;padding:7px 10px;color:#bff9ff;background:rgba(82,242,255,.06);font-size:12px;font-weight:850}.project-card-grid-v2 article h3{font-size:20px;margin:14px 0 8px}.project-card-grid-v2 article p{margin:0;color:#aebed3;font-size:13px;line-height:1.45}.project-card-grid-v2 article b{display:block;color:#fff;margin-top:14px;font-size:13px}.project-stage-v2.live .project-card-grid-v2 article{opacity:1;transform:translateY(0) scale(1)}.project-stage-v2.live .project-card-grid-v2 article:nth-child(2){transition-delay:.06s}.project-stage-v2.live .project-card-grid-v2 article:nth-child(3){transition-delay:.12s}.project-stage-v2.live .project-card-grid-v2 article:nth-child(4){transition-delay:.18s}.project-stage-v2.filtered-out{display:none!important}
.python-lab-v2{height:460svh}.python-sticky-v2{grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);gap:24px;align-items:center}.python-logo-build{position:absolute;inset:8%;pointer-events:none;opacity:.22}.python-logo-build i{position:absolute;width:36%;height:34%;border-radius:34% 34% 18% 34%;filter:drop-shadow(0 0 22px rgba(82,242,255,.28));transition:.35s ease;opacity:.5}.python-logo-build i:nth-child(1){left:20%;top:20%;background:linear-gradient(135deg,var(--a),var(--b));transform:translate(calc((1 - var(--pyprog,0))*-90px),calc((1 - var(--pyprog,0))*-48px)) rotate(-12deg)}.python-logo-build i:nth-child(2){right:20%;bottom:20%;background:linear-gradient(135deg,var(--c),var(--a));border-radius:18% 34% 34% 34%;transform:translate(calc((1 - var(--pyprog,0))*90px),calc((1 - var(--pyprog,0))*48px)) rotate(12deg)}.python-logo-build span{position:absolute;display:block;border:1px solid rgba(82,242,255,.13);border-radius:40px;inset:20%;transform:scale(calc(.75 + var(--pyprog,0)*.25));opacity:calc(.15 + var(--pyprog,0)*.5)}.python-logo-build span:nth-child(4){inset:30%;border-color:rgba(246,200,107,.16)}.python-copy-v2{position:relative;z-index:2}.python-projects-v2{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.python-projects-v2 article{border:1px solid rgba(139,168,214,.18);background:rgba(255,255,255,.05);border-radius:24px;padding:18px;opacity:.28;transform:translateY(18px);transition:.35s ease}.python-lab-v2.live .python-projects-v2 article{opacity:1;transform:translateY(0)}.python-lab-v2.live .python-projects-v2 article:nth-child(2){transition-delay:.05s}.python-lab-v2.live .python-projects-v2 article:nth-child(3){transition-delay:.1s}.python-lab-v2.live .python-projects-v2 article:nth-child(4){transition-delay:.15s}.python-lab-v2.live .python-projects-v2 article:nth-child(5){transition-delay:.2s}.python-projects-v2 b{display:block;color:#fff}.python-projects-v2 span{display:block;color:var(--muted);font-size:13px;line-height:1.42;margin-top:6px}.platforms-section-v2{height:460svh}.platforms-sticky-v2{grid-template-rows:auto minmax(0,1fr);gap:20px}.platform-grid-v2{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-content:center}.platform-grid-v2 a{text-decoration:none;border:1px solid rgba(139,168,214,.16);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.022));border-radius:24px;padding:18px;min-height:130px;display:flex;flex-direction:column;justify-content:space-between;opacity:.32;transform:translateY(16px);transition:.35s ease}.platforms-section-v2.live .platform-grid-v2 a{opacity:1;transform:translateY(0)}.platform-grid-v2 b{font-size:17px}.platform-grid-v2 span{color:var(--muted);font-size:12.7px;line-height:1.35}.platform-grid-v2 a:hover{border-color:rgba(82,242,255,.36);transform:translateY(-2px)}
@media (max-width:920px){.skills-sticky .cpu-bg{inset:calc(var(--header) + 132px) 10px 12px;border-radius:24px;opacity:.38}.projects-v2 .section{margin-top:18px}.project-landing-v2{height:360svh}.project-landing-sticky{grid-template-columns:1fr;grid-template-rows:auto auto;gap:14px;padding-left:12px;padding-right:12px}.project-hero-copy h1{font-size:clamp(32px,10vw,50px)}.project-filters-v2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.project-filters-v2 button{font-size:11.5px;padding:10px 8px}.project-command-card pre{font-size:11px;line-height:1.55;padding:14px}.project-stage-v2{height:520svh}.project-stage-sticky{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);gap:12px;padding-left:12px;padding-right:12px}.stage-label{height:56px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-radius:18px;padding:10px 14px}.stage-label span{font-size:34px}.stage-label b{writing-mode:horizontal-tb;transform:none;font-size:10.5px}.stage-copy-v2 h2{font-size:clamp(28px,8vw,42px)}.stage-copy-v2 p{font-size:14px;line-height:1.48}.project-card-grid-v2{grid-template-columns:1fr;gap:9px;align-content:start}.project-card-grid-v2 article{min-height:auto;padding:13px;border-radius:18px}.project-card-grid-v2 article h3{font-size:16px;margin:9px 0 5px}.project-card-grid-v2 article p{font-size:12px}.python-lab-v2{height:520svh}.python-sticky-v2{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px;padding-left:12px;padding-right:12px}.python-logo-build{inset:22% 2% 8%;opacity:.18}.python-projects-v2{grid-template-columns:1fr;gap:8px}.python-projects-v2 article{padding:13px;border-radius:18px}.platforms-section-v2{height:520svh}.platform-grid-v2{grid-template-columns:1fr 1fr;gap:9px}.platform-grid-v2 a{min-height:100px;padding:13px;border-radius:18px}.platform-grid-v2 b{font-size:14px}.platform-grid-v2 span{font-size:11.2px}}
@media (max-width:430px){.project-filters-v2{grid-template-columns:1fr}.platform-grid-v2{grid-template-columns:1fr}.project-stage-v2{height:560svh}.python-lab-v2,.platforms-section-v2{height:560svh}}

/* V27 targeted fixes: projects filter, stage animation, Python logo build, section numbering */
.projects-v2 .topbar{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.projects-v2 .section{scroll-margin-top:calc(var(--header) + 18px)}
.projects-v2 .sticky-frame{overflow:hidden;isolation:isolate}
.projects-v2 .glass-frame{background:linear-gradient(180deg,rgba(8,13,26,.86),rgba(5,8,16,.94));}
.projects-v2 .filtered-out{display:none!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
.projects-v2 .stage-label.project-number-label{position:relative;z-index:4;align-self:stretch;min-width:148px}
.projects-v2 .project-stage-v2 .stage-label span,
.projects-v2 .python-lab-v2 .stage-label span,
.projects-v2 .platforms-section-v2 .stage-label span{white-space:nowrap;letter-spacing:-.075em}
.projects-v2 [data-project-stage]:not(.filtered-out) .sticky-frame:after{content:"";position:absolute;inset:auto 8% 7% 8%;height:1px;background:linear-gradient(90deg,transparent,rgba(82,242,255,.34),rgba(139,92,246,.26),transparent);opacity:calc(.12 + var(--stagep,0) * .75);transform:scaleX(calc(.2 + var(--stagep,0) * .8));transform-origin:left;z-index:1;pointer-events:none}
.projects-v2 [data-project-stage] .stage-copy-v2,
.projects-v2 [data-project-stage] .section-head,
.projects-v2 [data-project-stage] .project-card-grid-v2,
.projects-v2 [data-project-stage] .python-projects-v2,
.projects-v2 [data-project-stage] .platform-grid-v2,
.projects-v2 [data-project-stage] .project-command-card{opacity:calc(.58 + var(--stagep,0) * .42);transform:translateY(calc((1 - var(--stagep,0)) * 16px));transition:opacity .2s linear,transform .2s linear}
.projects-v2 .project-card-grid-v2 article,
.projects-v2 .python-projects-v2 article,
.projects-v2 .platform-grid-v2 a{opacity:calc(.22 + var(--stagep,0) * .78);transform:translateY(calc((1 - var(--stagep,0)) * 24px)) scale(calc(.975 + var(--stagep,0) * .025));}
.projects-v2 .project-card-grid-v2 article:nth-child(2),.projects-v2 .python-projects-v2 article:nth-child(2),.projects-v2 .platform-grid-v2 a:nth-child(2){transition-delay:.04s}
.projects-v2 .project-card-grid-v2 article:nth-child(3),.projects-v2 .python-projects-v2 article:nth-child(3),.projects-v2 .platform-grid-v2 a:nth-child(3){transition-delay:.08s}
.projects-v2 .project-card-grid-v2 article:nth-child(4),.projects-v2 .python-projects-v2 article:nth-child(4),.projects-v2 .platform-grid-v2 a:nth-child(4){transition-delay:.12s}
.projects-v2 .project-card-grid-v2 article:nth-child(n+5),.projects-v2 .python-projects-v2 article:nth-child(n+5),.projects-v2 .platform-grid-v2 a:nth-child(n+5){transition-delay:.16s}

.python-lab-v2{position:relative;background:radial-gradient(circle at 25% 18%,rgba(82,242,255,.07),transparent 42%),radial-gradient(circle at 75% 78%,rgba(246,200,107,.06),transparent 48%)}
.python-sticky-v2{grid-template-columns:minmax(150px,.20fr) minmax(260px,.43fr) minmax(0,1fr);gap:22px;align-items:center}
.python-logo-build{inset:0;opacity:.42;z-index:0;overflow:hidden}
.python-logo-build:before{content:"";position:absolute;inset:12% 6%;border-radius:40px;background:linear-gradient(90deg,transparent 49.6%,rgba(82,242,255,.09) 50%,transparent 50.4%),linear-gradient(0deg,transparent 49.6%,rgba(139,92,246,.07) 50%,transparent 50.4%);background-size:56px 56px;opacity:calc(.12 + var(--pyprog,0)*.34);filter:drop-shadow(0 0 18px rgba(82,242,255,.14));transform:perspective(900px) rotateX(55deg) translateY(calc((1 - var(--pyprog,0))*28px)) scale(calc(.96 + var(--pyprog,0)*.06))}
.python-logo-build i{width:34%;height:32%;opacity:calc(.24 + var(--pyprog,0) * .54);border-radius:32% 32% 17% 32%;box-shadow:inset 0 0 30px rgba(255,255,255,.08),0 0 42px rgba(82,242,255,.18);}
.python-logo-build i:nth-child(1){left:15%;top:23%;background:linear-gradient(135deg,rgba(82,242,255,.95),rgba(139,92,246,.86));transform:translateX(calc((1 - var(--pyprog,0))*-45vw)) translateY(calc((1 - var(--pyprog,0))*-20px)) rotate(calc(-18deg + var(--pyprog,0)*18deg));}
.python-logo-build i:nth-child(2){right:15%;bottom:22%;background:linear-gradient(135deg,rgba(246,200,107,.92),rgba(82,242,255,.72));border-radius:17% 32% 32% 32%;transform:translateX(calc((1 - var(--pyprog,0))*45vw)) translateY(calc((1 - var(--pyprog,0))*20px)) rotate(calc(18deg - var(--pyprog,0)*18deg));}
.python-logo-build span{inset:20% 22%;border-radius:999px;opacity:calc(.08 + var(--pyprog,0)*.32);transform:rotate(calc(var(--pyprog,0)*24deg)) scale(calc(.72 + var(--pyprog,0)*.28));border-color:rgba(82,242,255,.16)}
.python-logo-build span:nth-child(4){inset:28% 31%;border-color:rgba(246,200,107,.18);transform:rotate(calc(var(--pyprog,0)*-30deg)) scale(calc(.7 + var(--pyprog,0)*.35))}
.python-copy-v2,.python-projects-v2,.platforms-sticky-v2 .section-head,.platform-grid-v2{position:relative;z-index:2}

.platforms-sticky-v2{grid-template-columns:minmax(150px,.20fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:20px;align-items:stretch}
.platforms-sticky-v2 .stage-label{grid-row:1 / span 2}.platforms-sticky-v2 .section-head{align-self:end}.platforms-sticky-v2 .platform-grid-v2{align-self:start}
.platform-grid-v2 a{min-height:128px;opacity:calc(.24 + var(--stagep,0)*.76)}

/* Projects page filtering should feel instant and clean */
.projects-v2.filtering [data-project-stage]:not(.project-landing-v2){transition:opacity .18s ease, transform .18s ease}
.project-filters-v2 button{white-space:nowrap}.project-filters-v2{position:relative;z-index:10}

@media (max-width:920px){
  .projects-v2 .stage-label.project-number-label{min-width:0;height:58px;flex-direction:row;align-items:center;justify-content:space-between}
  .python-sticky-v2{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);gap:12px;padding-left:12px;padding-right:12px}
  .python-logo-build{inset:9% 0 4%;opacity:.28}.python-logo-build i{width:52%;height:26%}.python-logo-build i:nth-child(1){left:5%;top:31%;}.python-logo-build i:nth-child(2){right:5%;bottom:18%;}
  .platforms-sticky-v2{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);gap:12px;padding-left:12px;padding-right:12px}
  .platforms-sticky-v2 .stage-label{grid-row:auto}.platform-grid-v2{grid-template-columns:1fr 1fr;align-content:start}.platform-grid-v2 a{min-height:104px}
  .projects-v2 [data-project-stage] .stage-copy-v2,.projects-v2 [data-project-stage] .section-head{transform:none;opacity:1}
}
@media (max-width:430px){.platform-grid-v2{grid-template-columns:1fr}.python-logo-build i{width:60%;height:24%}}


/* V28 targeted fixes: keep V21/V27 design, repair skills, contact icons and projects reveal/filter */
.section-head.cap-head h2::first-letter{text-transform:uppercase}
.project-code.window{border-radius:28px;overflow:hidden}.project-code.window .window-top{border-top-left-radius:28px;border-top-right-radius:28px;overflow:hidden}
/* Original brand icons in contact cards */
.contact-card .brand-svg{display:grid;place-items:center}.contact-card .brand-svg svg{width:27px;height:27px;display:block;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.contact-card .github-icon svg,.contact-card .linkedin-icon svg{fill:currentColor;stroke:none}.contact-card .telegram-icon{color:#7eefff}.contact-card .whatsapp-icon{color:#25f6a2}.contact-card .github-icon{color:#fff}.contact-card .linkedin-icon{color:#7eb6ff}.contact-card .email-icon{color:#f6c86b}
/* Section 06 CPU architecture background */
.skills-sticky{position:sticky}.skills-sticky .cpu-bg{right:20px;width:68%;background:radial-gradient(circle at calc(20% + var(--skillp,0)*55%) 38%,rgba(82,242,255,.20),transparent 22%),linear-gradient(90deg,rgba(82,242,255,.11) 1px,transparent 1px),linear-gradient(rgba(139,92,246,.105) 1px,transparent 1px);background-size:auto,42px 42px,42px 42px;filter:drop-shadow(0 0 28px rgba(82,242,255,.10));opacity:.82}.skills-sticky .cpu-bg:before{content:"";position:absolute;inset:10%;border-radius:26px;background:linear-gradient(90deg,transparent 0 12%,rgba(82,242,255,.35) 12% 12.5%,transparent 12.5% 28%,rgba(139,92,246,.28) 28% 28.5%,transparent 28.5% 100%),linear-gradient(0deg,transparent 0 18%,rgba(246,200,107,.24) 18% 18.5%,transparent 18.5% 46%,rgba(82,242,255,.28) 46% 46.5%,transparent 46.5% 100%);background-size:calc(90px + var(--skillp,0)*90px) calc(80px + var(--skillp,0)*70px);opacity:calc(.32 + var(--skillp,0)*.45);transform:translateX(calc((var(--skillp,0) - .5)*18px));box-shadow:inset 0 0 0 1px rgba(82,242,255,.14),0 0 70px rgba(82,242,255,.08)}.skills-sticky .cpu-bg:after{content:"";position:absolute;inset:28%;border-radius:20px;border:1px solid rgba(246,200,107,.23);background:radial-gradient(circle,rgba(246,200,107,.13),rgba(82,242,255,.04) 52%,transparent);transform:scale(calc(.92 + var(--skillp,0)*.08));box-shadow:0 0 90px rgba(246,200,107,.09),inset 0 0 0 1px rgba(255,255,255,.04)}.skills-sticky .cpu-bg em{position:absolute;display:block;inset:0;background:linear-gradient(90deg,transparent 47%,rgba(37,246,162,.32) 50%,transparent 53%);background-size:170px 100%;opacity:.5;transform:translateX(calc(var(--skillp,0)*72px));}
/* Skills containment */
.skill-matrix{align-content:center}.skill-group{min-height:0}.skill-track{display:flex;flex-wrap:wrap;gap:6px;overflow:hidden}.skill-track span{margin:0!important}
/* Projects page: stronger visible reveal and no permanent matte */
.projects-v2 [data-project-stage]{opacity:1;visibility:visible}.projects-v2 [data-project-stage].filtered-out{display:none!important}.projects-v2 [data-project-stage]:not(.project-landing-v2) .sticky-frame{--stagep:var(--stagep,0)}.projects-v2 [data-project-stage] .stage-copy-v2,.projects-v2 [data-project-stage] .section-head,.projects-v2 [data-project-stage] .project-command-card{opacity:calc(.12 + var(--stagep,0)*.88)!important;transform:translateY(calc((1 - var(--stagep,0))*28px)) scale(calc(.985 + var(--stagep,0)*.015))!important}.projects-v2 [data-project-stage] .project-card-grid-v2 article,.projects-v2 [data-project-stage] .python-projects-v2 article,.projects-v2 [data-project-stage] .platform-grid-v2 a{opacity:calc(.08 + var(--stagep,0)*.92)!important;transform:translateY(calc((1 - var(--stagep,0))*34px)) scale(calc(.965 + var(--stagep,0)*.035))!important;filter:blur(calc((1 - var(--stagep,0))*4px));transition:opacity .22s linear,transform .22s linear,filter .22s linear}.projects-v2 [data-project-stage].stage-visible .project-card-grid-v2 article,.projects-v2 [data-project-stage].stage-visible .python-projects-v2 article,.projects-v2 [data-project-stage].stage-visible .platform-grid-v2 a{filter:blur(0)}.project-filters-v2 button{cursor:pointer}.project-filters-v2 button.active{border-color:rgba(82,242,255,.7);color:#031018;background:linear-gradient(135deg,var(--a),var(--b));box-shadow:0 14px 54px rgba(82,242,255,.18)}
@media (max-width:920px){.skills-scroll{height:520svh}.skills-sticky{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;gap:14px!important;align-content:center}.skills-sticky .cpu-bg{inset:calc(var(--header) + 118px) 8px 12px!important;width:auto!important;opacity:.42!important}.skill-matrix{display:flex!important;overflow:hidden!important;gap:12px!important;align-items:stretch!important;align-content:unset!important;height:min(50svh,430px);padding:2px 2px 10px;scroll-behavior:smooth}.skill-group{flex:0 0 min(82vw,370px);padding:16px!important;border-radius:22px!important;display:flex;flex-direction:column}.skill-group b{font-size:16px}.skill-track{flex:1;align-content:flex-start;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;scrollbar-width:none;padding-bottom:4px}.skill-track::-webkit-scrollbar{display:none}.skill-track span{flex:0 0 auto}.contact-grid{grid-template-columns:1fr!important}.contact-card .brand-svg svg{width:25px;height:25px}.projects-v2 [data-project-stage] .stage-copy-v2,.projects-v2 [data-project-stage] .section-head{opacity:1!important;transform:none!important}.projects-v2 [data-project-stage] .project-card-grid-v2 article,.projects-v2 [data-project-stage] .python-projects-v2 article,.projects-v2 [data-project-stage] .platform-grid-v2 a{filter:none!important}.project-filters-v2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.project-filters-v2 button{min-height:42px;border-radius:16px!important}}
@media (max-width:430px){.project-filters-v2{grid-template-columns:1fr!important}.skill-matrix{height:min(52svh,410px)}.skill-group{flex-basis:86vw}}

/* V29 stability patch: Section 06 full CPU background + Projects reveal/filter cleanup */
.skills-sticky{isolation:isolate;position:sticky!important;overflow:hidden!important;}
.skills-sticky .cpu-bg{position:absolute!important;inset:0!important;width:auto!important;height:auto!important;border-radius:38px!important;mask:none!important;-webkit-mask:none!important;z-index:0!important;opacity:.72!important;overflow:hidden!important;border:1px solid rgba(82,242,255,.10)!important;background:
  radial-gradient(circle at calc(18% + var(--skillp,0)*62%) calc(22% + var(--skillp,0)*18%), rgba(82,242,255,.24), transparent 20%),
  radial-gradient(circle at calc(80% - var(--skillp,0)*38%) calc(70% - var(--skillp,0)*16%), rgba(139,92,246,.20), transparent 24%),
  linear-gradient(90deg, rgba(82,242,255,.13) 1px, transparent 1px),
  linear-gradient(rgba(139,92,246,.105) 1px, transparent 1px),
  linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.008))!important;
background-size:auto,auto,44px 44px,44px 44px,auto!important;
background-position:0 0,0 0,calc(var(--skillp,0)*160px) calc(var(--skillp,0)*-80px),calc(var(--skillp,0)*-120px) calc(var(--skillp,0)*90px),0 0!important;
filter:drop-shadow(0 0 34px rgba(82,242,255,.10))!important;}
.skills-sticky .cpu-bg:before{content:""!important;position:absolute!important;inset:9%!important;border-radius:30px!important;background:
  linear-gradient(90deg,transparent 0 10%,rgba(82,242,255,.34) 10% 10.45%,transparent 10.45% 26%,rgba(37,246,162,.24) 26% 26.45%,transparent 26.45% 52%,rgba(139,92,246,.28) 52% 52.45%,transparent 52.45% 100%),
  linear-gradient(0deg,transparent 0 13%,rgba(246,200,107,.22) 13% 13.45%,transparent 13.45% 42%,rgba(82,242,255,.26) 42% 42.45%,transparent 42.45% 100%)!important;
background-size:calc(96px + var(--skillp,0)*120px) calc(84px + var(--skillp,0)*95px)!important;
background-position:calc(var(--skillp,0)*90px) calc(var(--skillp,0)*-60px)!important;
opacity:calc(.30 + var(--skillp,0)*.42)!important;box-shadow:inset 0 0 0 1px rgba(82,242,255,.13),0 0 90px rgba(82,242,255,.10)!important;transform:translate3d(calc((var(--skillp,0) - .5)*20px),0,0)!important;}
.skills-sticky .cpu-bg:after{content:""!important;position:absolute!important;inset:29% 34%!important;border-radius:24px!important;border:1px solid rgba(246,200,107,.24)!important;background:radial-gradient(circle,rgba(246,200,107,.14),rgba(82,242,255,.05) 52%,transparent)!important;box-shadow:0 0 90px rgba(246,200,107,.12),inset 0 0 0 1px rgba(255,255,255,.05)!important;transform:scale(calc(.92 + var(--skillp,0)*.11)) rotate(calc(var(--skillp,0)*2deg))!important;}
.skills-sticky .cpu-bg span,.skills-sticky .cpu-bg i,.skills-sticky .cpu-bg em{position:absolute!important;inset:0!important;display:block!important;opacity:.42!important;pointer-events:none!important;}
.skills-sticky .cpu-bg span{background:linear-gradient(90deg,transparent 46%,rgba(82,242,255,.34) 50%,transparent 54%)!important;background-size:180px 100%!important;transform:translateX(calc(var(--skillp,0)*220px))!important;}
.skills-sticky .cpu-bg i{background:linear-gradient(0deg,transparent 47%,rgba(139,92,246,.28) 50%,transparent 53%)!important;background-size:100% 150px!important;transform:translateY(calc(var(--skillp,0)*-170px))!important;}
.skills-sticky .cpu-bg em{background:radial-gradient(circle at 50% 50%,rgba(37,246,162,.22) 0 2px,transparent 3px)!important;background-size:42px 42px!important;background-position:calc(var(--skillp,0)*80px) calc(var(--skillp,0)*60px)!important;}
.skills-copy,.skill-matrix{position:relative!important;z-index:2!important;}
.skill-matrix{max-height:calc(100svh - var(--header) - 135px);overflow:hidden!important;}
.skill-group{overflow:hidden!important;}
.skill-track{max-width:100%;}

/* Projects page: remove accidental matte and use deterministic reveal classes */
.projects-v2 [data-project-stage]{opacity:1!important;visibility:visible!important;}
.projects-v2 [data-project-stage].filtered-out{display:none!important;}
.projects-v2 [data-project-stage] .sticky-frame{opacity:1!important;}
.projects-v2 [data-project-stage] .stage-copy-v2,
.projects-v2 [data-project-stage] .section-head,
.projects-v2 [data-project-stage] .project-command-card{opacity:1!important;filter:none!important;transform:none!important;}
.projects-v2 [data-project-stage]:not(.project-landing-v2) .project-card-grid-v2 article,
.projects-v2 [data-project-stage]:not(.project-landing-v2) .python-projects-v2 article,
.projects-v2 [data-project-stage]:not(.project-landing-v2) .platform-grid-v2 a{opacity:.18!important;transform:translateY(34px) scale(.965)!important;filter:blur(6px)!important;transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1),filter .55s ease,border-color .45s ease!important;}
.projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article,
.projects-v2 [data-project-stage].v29-visible .python-projects-v2 article,
.projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a{opacity:1!important;transform:translateY(0) scale(1)!important;filter:blur(0)!important;}
.projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article:nth-child(2),
.projects-v2 [data-project-stage].v29-visible .python-projects-v2 article:nth-child(2),
.projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a:nth-child(2){transition-delay:.06s!important;}
.projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article:nth-child(3),
.projects-v2 [data-project-stage].v29-visible .python-projects-v2 article:nth-child(3),
.projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a:nth-child(3){transition-delay:.12s!important;}
.projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article:nth-child(4),
.projects-v2 [data-project-stage].v29-visible .python-projects-v2 article:nth-child(4),
.projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a:nth-child(4){transition-delay:.18s!important;}
.projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article:nth-child(n+5),
.projects-v2 [data-project-stage].v29-visible .python-projects-v2 article:nth-child(n+5),
.projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a:nth-child(n+5){transition-delay:.24s!important;}
.project-filters-v2 button{appearance:none;border:1px solid rgba(139,168,214,.22);background:rgba(255,255,255,.055);color:#cfe0f3;cursor:pointer;transition:.25s ease;}
.project-filters-v2 button.active{background:linear-gradient(135deg,var(--a),var(--b))!important;color:#031018!important;border-color:transparent!important;box-shadow:0 18px 70px rgba(82,242,255,.20)!important;}

@media (max-width:920px){
  .skills-sticky .cpu-bg{inset:0!important;border-radius:28px!important;opacity:.48!important;}
  .skill-matrix{display:flex!important;gap:12px!important;height:calc(100svh - var(--header) - 190px)!important;min-height:360px!important;max-height:520px!important;overflow:hidden!important;padding:0 2px 10px!important;align-items:stretch!important;}
  .skill-group{flex:0 0 calc(100% - 10px)!important;max-height:100%!important;min-height:0!important;padding:16px!important;border-radius:22px!important;display:flex!important;flex-direction:column!important;}
  .skill-track{display:flex!important;flex-wrap:wrap!important;gap:7px!important;overflow-y:auto!important;overflow-x:hidden!important;align-content:flex-start!important;scrollbar-width:none!important;padding-bottom:4px!important;}
  .skill-track::-webkit-scrollbar{display:none!important;}
  .skill-track span{flex:0 1 auto!important;white-space:normal!important;line-height:1.2!important;}
  .projects-v2 [data-project-stage]:not(.project-landing-v2) .project-card-grid-v2 article,
  .projects-v2 [data-project-stage]:not(.project-landing-v2) .python-projects-v2 article,
  .projects-v2 [data-project-stage]:not(.project-landing-v2) .platform-grid-v2 a{opacity:.16!important;transform:translateY(28px) scale(.975)!important;filter:blur(4px)!important;}
  .projects-v2 [data-project-stage].v29-visible .project-card-grid-v2 article,
  .projects-v2 [data-project-stage].v29-visible .python-projects-v2 article,
  .projects-v2 [data-project-stage].v29-visible .platform-grid-v2 a{opacity:1!important;transform:translateY(0) scale(1)!important;filter:blur(0)!important;}
}

/* =========================
   V32 definitive fixes
   - Home Section 06 mobile compact layout
   - Projects page visibility + filter stability
   ========================= */

/* Home / Section 06: make CPU/circuit background cover the whole visual area */
[data-section="skills"] .skills-sticky{
  --skillp: 0;
  isolation:isolate;
}
[data-section="skills"] .cpu-bg{
  position:absolute!important;
  inset:calc(var(--header) + 18px) 18px 18px 18px!important;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
  border-radius:34px!important;
  opacity:.62!important;
  z-index:0!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at calc(18% + var(--skillp,0)*55%) 25%, rgba(82,242,255,.18), transparent 26%),
    radial-gradient(circle at calc(80% - var(--skillp,0)*45%) 68%, rgba(139,92,246,.18), transparent 28%),
    linear-gradient(90deg, rgba(82,242,255,.13) 1px, transparent 1px),
    linear-gradient(rgba(82,242,255,.11) 1px, transparent 1px)!important;
  background-size:auto, auto, 48px 48px, 48px 48px!important;
  mask:none!important;
  -webkit-mask:none!important;
  animation:a2CpuDrift 12s linear infinite!important;
}
[data-section="skills"] .cpu-bg:before{
  content:""!important;
  position:absolute!important;
  inset:9%!important;
  border-radius:30px!important;
  border:1px solid rgba(82,242,255,.18)!important;
  background:
    linear-gradient(90deg, transparent 0 18%, rgba(82,242,255,.25) 18.2% 18.7%, transparent 19% 47%, rgba(37,246,162,.18) 47.2% 47.8%, transparent 48% 100%),
    linear-gradient(0deg, transparent 0 22%, rgba(139,92,246,.24) 22.2% 22.8%, transparent 23% 64%, rgba(246,200,107,.18) 64.2% 64.8%, transparent 65% 100%)!important;
  transform:translate3d(calc((var(--skillp,0) - .5)*16px), calc((.5 - var(--skillp,0))*12px),0)!important;
  box-shadow:0 0 70px rgba(82,242,255,.08), inset 0 0 60px rgba(82,242,255,.04)!important;
}
[data-section="skills"] .cpu-bg:after{
  content:""!important;
  position:absolute!important;
  inset:28% 34%!important;
  border-radius:24px!important;
  border:1px solid rgba(246,200,107,.24)!important;
  background:radial-gradient(circle, rgba(246,200,107,.13), rgba(82,242,255,.06) 50%, transparent 72%)!important;
  box-shadow:0 0 80px rgba(246,200,107,.12), inset 0 0 0 1px rgba(255,255,255,.05)!important;
  transform:scale(calc(.92 + var(--skillp,0)*.12)) rotate(calc(var(--skillp,0)*3deg))!important;
}
[data-section="skills"] .skills-copy,
[data-section="skills"] .skill-matrix{position:relative!important;z-index:2!important;}
@keyframes a2CpuDrift{0%{background-position:0 0,0 0,0 0,0 0}100%{background-position:80px -40px,-70px 60px,96px 48px,48px 96px}}

/* Mobile Section 06: no giant empty skill cards; compact, readable, animated */
@media (max-width:920px){
  [data-section="skills"].skills-scroll{height:auto!important;min-height:0!important;padding:0 0 28px!important;}
  [data-section="skills"] .skills-sticky{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:100svh!important;
    display:block!important;
    padding:calc(var(--header) + 22px) 18px 24px!important;
    overflow:hidden!important;
  }
  [data-section="skills"] .cpu-bg{
    inset:calc(var(--header) + 6px) 10px 10px 10px!important;
    opacity:.50!important;
    border-radius:26px!important;
    animation:a2CpuDrift 8s linear infinite!important;
  }
  [data-section="skills"] .skills-copy{margin:0 0 18px!important;}
  [data-section="skills"] .skills-copy h2{font-size:clamp(34px,12vw,56px)!important;line-height:.98!important;letter-spacing:-.06em!important;}
  [data-section="skills"] .skills-copy p{font-size:16px!important;line-height:1.48!important;}
  [data-section="skills"] .skill-matrix{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0!important;
    align-items:stretch!important;
  }
  [data-section="skills"] .skill-group{
    display:block!important;
    min-height:0!important;
    max-height:none!important;
    height:auto!important;
    padding:15px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    transform:none!important;
    opacity:1!important;
    flex:auto!important;
  }
  [data-section="skills"] .skill-group h3{font-size:18px!important;margin-bottom:10px!important;}
  [data-section="skills"] .skill-track{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    overflow:visible!important;
    max-height:none!important;
    padding:0!important;
  }
  [data-section="skills"] .skill-track span{
    white-space:normal!important;
    flex:0 1 auto!important;
    max-width:100%!important;
    font-size:12px!important;
    line-height:1.2!important;
    padding:8px 10px!important;
  }
}

/* Projects V32: hard reset accidental matte/opacity and make content visible by default */
body.projects-v2 .project-stage-v2,
body.projects-v2 .python-lab-v2,
body.projects-v2 .platforms-section-v2,
body.projects-v2 [data-project-stage],
body.projects-v2 [data-project-stage] .sticky-frame,
body.projects-v2 [data-project-stage] .stage-copy-v2,
body.projects-v2 [data-project-stage] .section-head,
body.projects-v2 [data-project-stage] .stage-label,
body.projects-v2 [data-project-stage] .project-card-grid-v2,
body.projects-v2 [data-project-stage] .python-projects-v2,
body.projects-v2 [data-project-stage] .platform-grid-v2{
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}
body.projects-v2 [data-project-stage].filtered-out,
body.projects-v2 [data-project-stage][hidden]{display:none!important;}

/* Cards are never permanently dim; scroll adds motion, not invisibility bugs */
body.projects-v2 .project-card-grid-v2 article,
body.projects-v2 .python-projects-v2 article,
body.projects-v2 .platform-grid-v2 a{
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  transform:translateY(0) scale(1)!important;
  transition:transform .55s cubic-bezier(.18,.8,.2,1), box-shadow .45s ease, border-color .45s ease, background .45s ease!important;
}
body.projects-v2 [data-project-stage]:not(.project-landing-v2):not(.v32-visible) .project-card-grid-v2 article,
body.projects-v2 [data-project-stage]:not(.project-landing-v2):not(.v32-visible) .python-projects-v2 article,
body.projects-v2 [data-project-stage]:not(.project-landing-v2):not(.v32-visible) .platform-grid-v2 a{
  opacity:.82!important;
  transform:translateY(16px) scale(.99)!important;
}
body.projects-v2 [data-project-stage].v32-visible .project-card-grid-v2 article,
body.projects-v2 [data-project-stage].v32-visible .python-projects-v2 article,
body.projects-v2 [data-project-stage].v32-visible .platform-grid-v2 a{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
}
body.projects-v2 [data-project-stage].v32-visible .project-card-grid-v2 article:hover,
body.projects-v2 [data-project-stage].v32-visible .python-projects-v2 article:hover,
body.projects-v2 [data-project-stage].v32-visible .platform-grid-v2 a:hover{
  transform:translateY(-6px) scale(1.012)!important;
  border-color:rgba(82,242,255,.48)!important;
  box-shadow:0 22px 90px rgba(82,242,255,.10)!important;
}
body.projects-v2 .project-filters-v2{position:relative!important;z-index:5!important;}
body.projects-v2 .project-filters-v2 button{cursor:pointer!important;user-select:none!important;}
body.projects-v2 .project-filters-v2 button.active{background:linear-gradient(135deg,var(--a),var(--b))!important;color:#031018!important;border-color:transparent!important;}

@media (max-width:920px){
  body.projects-v2 .project-filters-v2{display:flex!important;flex-wrap:wrap!important;gap:8px!important;position:relative!important;top:auto!important;}
  body.projects-v2 .project-filters-v2 button{flex:0 1 auto!important;font-size:12px!important;padding:9px 11px!important;}
  body.projects-v2 .project-stage-sticky,
  body.projects-v2 .python-sticky-v2,
  body.projects-v2 .platforms-sticky-v2{overflow:hidden!important;}
}


/* V33 PROJECT VISIBILITY FIX */
.projects-page .project-card,
.projects-page .platform-card,
.projects-page .project-stage,
.projects-page .project-grid > *{
  opacity:1 !important;
  filter:none !important;
  visibility:visible !important;
  transform:translateY(0) scale(1) !important;
}

.projects-page .reveal,
.projects-page .reveal-card,
.projects-page [data-reveal]{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .6s ease, transform .6s ease;
}

.projects-page .reveal.active,
.projects-page .reveal-card.active,
.projects-page [data-reveal].active{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  filter:none !important;
}

/* MOBILE SECTION 6 FIX */
@media (max-width: 768px){
  #skills,
  .skills-section,
  .skill-architecture{
    min-height:auto !important;
    height:auto !important;
    padding-bottom:40px !important;
  }

  .skills-grid,
  .skills-cards{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .skills-grid .skill-card,
  .skills-cards .skill-card{
    min-height:unset !important;
    height:auto !important;
    padding:18px !important;
    margin:0 !important;
  }

  .skills-grid .skill-card ul,
  .skills-cards .skill-card ul{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
  }

  .skills-grid .skill-card li,
  .skills-cards .skill-card li{
    white-space:nowrap !important;
  }

  .skills-bg,
  .cpu-bg,
  .circuit-bg{
    opacity:.55 !important;
    animation: pulsebg 6s ease-in-out infinite;
    background-size:cover !important;
  }
}

@keyframes pulsebg{
  0%{transform:scale(1);opacity:.35}
  50%{transform:scale(1.03);opacity:.55}
  100%{transform:scale(1);opacity:.35}
}

/* V34 ABSOLUTE PROJECTS ROOT FIX — clear cards + working filters */
body.projects-page,
body.projects-v2{
  --project-card-opacity:1;
}
body.projects-page [data-project-stage],
body.projects-page [data-project-stage] .sticky-frame,
body.projects-page [data-project-stage] .stage-copy-v2,
body.projects-page [data-project-stage] .section-head,
body.projects-page [data-project-stage] .stage-label,
body.projects-page [data-project-stage] .project-card-grid-v2,
body.projects-page [data-project-stage] .python-projects-v2,
body.projects-page [data-project-stage] .platform-grid-v2,
body.projects-page [data-project-stage] .project-command-card{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
}
body.projects-page .project-card-grid-v2 article,
body.projects-page .python-projects-v2 article,
body.projects-page .platform-grid-v2 a{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  transition:opacity .32s ease, transform .32s ease, border-color .32s ease, box-shadow .32s ease !important;
  will-change:transform, opacity;
}
body.projects-page [data-project-stage].is-hidden-by-filter{
  display:none !important;
}
body.projects-page .project-card-grid-v2 article:hover,
body.projects-page .python-projects-v2 article:hover,
body.projects-page .platform-grid-v2 a:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(82,242,255,.44) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.24), 0 0 34px rgba(82,242,255,.10) !important;
}
body.projects-page .project-stage-v2,
body.projects-page .python-lab-v2,
body.projects-page .platforms-section-v2{
  opacity:1 !important;
  visibility:visible !important;
}
body.projects-page .project-filters-v2 button{
  opacity:1 !important;
  filter:none !important;
  cursor:pointer !important;
  user-select:none;
}
body.projects-page .project-filters-v2 button.active{
  border-color:rgba(82,242,255,.85) !important;
  background:linear-gradient(135deg,#52f2ff,#8b5cf6) !important;
  color:#06101b !important;
}
body.projects-page .project-card-grid-v2,
body.projects-page .python-projects-v2,
body.projects-page .platform-grid-v2{
  position:relative;
  z-index:3;
}

/* V36 final safety: projects clean page must never inherit old blur/opacity systems */
body.projects-clean .project-section,
body.projects-clean .project-section *{
  filter:none;
}
body.projects-clean .project-section,
body.projects-clean .project-section-frame,
body.projects-clean .project-card,
body.projects-clean .project-section-head{
  visibility:visible !important;
}


/* V37 final additions: Home section 6/7 polish without changing core design */
.skill-group{opacity:.35;transform:translateY(20px) scale(.985);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1),border-color .45s ease,box-shadow .45s ease;}
.skill-group.on{opacity:1;transform:translateY(0) scale(1);box-shadow:0 18px 70px rgba(82,242,255,.08), inset 0 1px 0 rgba(255,255,255,.08);}
.skill-group.on:nth-child(odd){border-color:rgba(82,242,255,.45)}
.skill-group.on:nth-child(even){border-color:rgba(151,120,255,.38)}
.skills-sticky .cpu-bg,.skills-sticky:before{animation:cpuPulseV37 7s ease-in-out infinite;}
@keyframes cpuPulseV37{0%,100%{opacity:.38;filter:saturate(1)}50%{opacity:.62;filter:saturate(1.35)}}
@media (max-width:920px){
  .contact-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;align-items:stretch!important;}
  .contact-card{min-width:0!important;padding:16px 10px!important;gap:8px!important;text-align:center!important;align-items:center!important;justify-content:center!important;}
  .contact-card small{font-size:11px!important;line-height:1.25!important;word-break:break-word!important;}
  .contact-card b{font-size:14px!important;}
  .contact-card .brand-svg{width:42px!important;height:42px!important;margin:0 auto!important;}
  .contact-card .brand-svg svg{width:22px!important;height:22px!important;}
  .skill-group{opacity:.25;transform:translateY(24px) scale(.98)}
  .skill-group.on{opacity:1;transform:translateY(0) scale(1)}
}
@media (max-width:430px){.contact-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.contact-card{border-radius:18px!important}}


/* === V38 FINAL POLISH: Home Skills + Projects Scroll Timeline === */

/* Home section 06: cards animate and compact correctly on mobile */
.skill-group{
  will-change: opacity, transform, border-color, box-shadow;
}
.skill-group.on{
  box-shadow:0 18px 70px rgba(82,242,255,.075);
}
@media (max-width: 860px){
  .skills-scroll{height:430svh !important;}
  .skills-sticky{
    overflow:hidden !important;
    align-content:start !important;
    gap:14px !important;
  }
  .skills-copy{
    align-self:start !important;
  }
  .skills-copy h2{
    font-size:clamp(31px,10vw,48px) !important;
    line-height:1 !important;
    margin-bottom:10px !important;
  }
  .skills-copy p:not(.eyebrow){
    font-size:15.5px !important;
    line-height:1.45 !important;
  }
  .skill-matrix{
    grid-template-columns:1fr !important;
    gap:12px !important;
    max-height:calc(100svh - 390px) !important;
    min-height:260px !important;
    overflow:hidden !important;
    padding:0 2px 18px !important;
    align-content:start !important;
    scroll-behavior:auto !important;
    scrollbar-width:none !important;
  }
  .skill-matrix::-webkit-scrollbar{display:none}
  .skill-group{
    padding:16px !important;
    border-radius:22px !important;
    min-height:auto !important;
    opacity:.18 !important;
    transform:translateY(24px) scale(.985) !important;
  }
  .skill-group.on{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
  }
  .skill-group b{
    font-size:18px !important;
    margin-bottom:10px !important;
  }
  .skill-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow:hidden !important;
    gap:8px !important;
    scrollbar-width:none !important;
  }
  .skill-track::-webkit-scrollbar{display:none}
  .skill-group span{
    flex:0 0 auto !important;
    font-size:12.5px !important;
    padding:7px 10px !important;
    white-space:nowrap !important;
  }
}

/* Projects page: no blur, automatic scroll inside sticky frame, visible animated cards */
body.projects-v37 .project-stage-v37{
  height:var(--stage-h, 360svh) !important;
}
body.projects-v37 .project-sticky-v37{
  overflow:hidden !important;
}
body.projects-v37 .section-head-v37{
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
}
body.projects-v37 .project-content-v37{
  min-height:0 !important;
  overflow:hidden !important;
}
body.projects-v37 .project-card-track-v37{
  max-height:calc(100svh - 430px) !important;
  min-height:230px !important;
  overflow:hidden !important;
  align-content:start !important;
  scroll-behavior:auto !important;
  scrollbar-width:none !important;
  padding-bottom:16px !important;
}
body.projects-v37 .project-card-track-v37::-webkit-scrollbar{display:none}
body.projects-v37 .project-card-v37{
  filter:none !important;
  opacity:.16 !important;
  transform:translateY(26px) scale(.985) !important;
  transition:opacity .48s ease, transform .48s cubic-bezier(.2,.8,.2,1), border-color .36s ease, box-shadow .36s ease !important;
}
body.projects-v37 .project-card-v37.visible{
  filter:none !important;
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 70px rgba(82,242,255,.055) !important;
}
body.projects-v37 .project-stage-v37.filtered-out{
  display:none !important;
}
body.projects-v37 .project-stage-v37.filtered-in{
  display:block !important;
}

@media(max-width:860px){
  body.projects-v37 .project-stage-v37{
    height:var(--stage-h-mobile, 460svh) !important;
    margin:28px 0 42px !important;
  }
  body.projects-v37 .project-sticky-v37{
    top:118px !important;
    min-height:calc(100svh - 138px) !important;
    max-height:calc(100svh - 138px) !important;
    padding:18px !important;
    overflow:hidden !important;
  }
  body.projects-v37 .section-head-v37 h2{
    font-size:clamp(32px,10vw,52px) !important;
    line-height:1 !important;
  }
  body.projects-v37 .section-head-v37 p{
    font-size:15.5px !important;
    line-height:1.42 !important;
  }
  body.projects-v37 .project-card-track-v37{
    grid-template-columns:1fr !important;
    gap:12px !important;
    max-height:calc(100svh - 430px) !important;
    min-height:260px !important;
    overflow:hidden !important;
    padding-bottom:18px !important;
  }
  body.projects-v37 .project-card-v37{
    min-height:auto !important;
    padding:17px !important;
  }
  body.projects-v37 .project-card-v37 h3{
    font-size:24px !important;
  }
  body.projects-v37 .project-card-v37 p,
  body.projects-v37 .project-card-v37 b{
    font-size:14.8px !important;
    line-height:1.45 !important;
  }
}
@media(min-width:861px){
  body.projects-v37 .project-stage-v37{
    margin:52px 0 64px !important;
  }
}


/* === V39 FINAL QA PATCH: Home skills mobile + Projects sticky overflow === */

/* Home section 06: make mobile skill cards visibly animate inside the scroll stop. */
@media (max-width: 860px){
  [data-section="skills"].skills-scroll{
    height: 560svh !important;
  }
  [data-section="skills"] .skills-sticky{
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    align-content:stretch !important;
  }
  [data-section="skills"] .skill-matrix{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:0 2px 18px !important;
    align-content:start !important;
  }
  [data-section="skills"] .skill-group{
    opacity:.10 !important;
    transform:translateY(34px) scale(.965) !important;
    filter:blur(8px) !important;
    transition:opacity .55s ease, transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease, border-color .45s ease, box-shadow .45s ease !important;
  }
  [data-section="skills"] .skill-group.on{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
    filter:blur(0) !important;
  }
  [data-section="skills"] .cpu-bg,
  [data-section="skills"] .skills-sticky:before{
    animation: cpuMobileFlowV39 5.8s ease-in-out infinite !important;
    opacity:.52 !important;
  }
}
@keyframes cpuMobileFlowV39{
  0%,100%{filter:hue-rotate(0deg) saturate(1); transform:translate3d(0,0,0) scale(1)}
  50%{filter:hue-rotate(18deg) saturate(1.45); transform:translate3d(0,-8px,0) scale(1.025)}
}

/* Projects page final stability: remove blur bugs, but keep scroll-driven reveal. */
body.projects-v37 .project-stage-v37{
  height: var(--stage-h, 420svh) !important;
  margin:64px 0 88px !important;
  position:relative !important;
}
body.projects-v37 .project-sticky-v37{
  position:sticky !important;
  top:96px !important;
  height:calc(100svh - 118px) !important;
  min-height:0 !important;
  max-height:calc(100svh - 118px) !important;
  overflow:hidden !important;
}
body.projects-v37 .project-content-v37{
  min-height:0 !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
}
body.projects-v37 .section-head-v37{
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  position:relative !important;
  z-index:4 !important;
}
body.projects-v37 .project-card-track-v37{
  position:relative !important;
  z-index:3 !important;
  max-height:none !important;
  min-height:0 !important;
  height:100% !important;
  overflow:hidden !important;
  padding:10px 0 28px !important;
  margin-top:4px !important;
  align-content:start !important;
  scrollbar-width:none !important;
}
body.projects-v37 .project-card-track-v37::-webkit-scrollbar{display:none !important;}
body.projects-v37 .project-card-v37{
  opacity:.18 !important;
  filter:none !important;
  transform:translateY(26px) scale(.985) !important;
  transition:opacity .42s ease, transform .42s cubic-bezier(.2,.8,.2,1), border-color .3s ease, box-shadow .3s ease !important;
}
body.projects-v37 .project-card-v37.visible{
  opacity:1 !important;
  filter:none !important;
  transform:translateY(0) scale(1) !important;
}
body.projects-v37 .project-stage-v37.filtered-out{display:none !important;}
body.projects-v37 .project-stage-v37.filtered-in{display:block !important;}

/* Projects hero on mobile: code window becomes its own scroll-controlled panel like Home. */
@media (max-width: 860px){
  body.projects-v37 .project-hero-v37{
    height: 430svh !important;
    margin-bottom:36px !important;
  }
  body.projects-v37 .project-hero-sticky-v37{
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    gap:14px !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-hero-v37 h1{
    font-size:clamp(36px,12vw,58px) !important;
    line-height:.98 !important;
    margin:8px 0 10px !important;
  }
  body.projects-v37 .project-hero-v37 .lead{
    font-size:15px !important;
    line-height:1.43 !important;
    margin:0 !important;
  }
  body.projects-v37 .project-filters-v37{
    grid-template-columns:1fr 1fr !important;
    margin-top:14px !important;
  }
  body.projects-v37 .project-terminal-v37{
    min-height:0 !important;
    height:100% !important;
    overflow:hidden !important;
    border-radius:24px !important;
    display:grid !important;
    grid-template-rows:44px minmax(0,1fr) !important;
  }
  body.projects-v37 .project-terminal-v37 pre{
    min-height:0 !important;
    max-height:none !important;
    height:100% !important;
    overflow:hidden !important;
    font-size:12px !important;
    line-height:1.55 !important;
    padding:16px !important;
  }
  body.projects-v37 .project-stage-v37{
    height:var(--stage-h-mobile, 520svh) !important;
    margin:38px 0 66px !important;
  }
  body.projects-v37 .project-sticky-v37{
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    overflow:hidden !important;
  }
  body.projects-v37 .section-head-v37 h2{
    font-size:clamp(30px,9.5vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
  }
  body.projects-v37 .section-head-v37 p{
    font-size:14.8px !important;
    line-height:1.42 !important;
  }
  body.projects-v37 .project-card-track-v37{
    height:100% !important;
    max-height:none !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    overflow:hidden !important;
    padding:8px 0 28px !important;
  }
  body.projects-v37 .project-card-v37{
    padding:15px !important;
    border-radius:22px !important;
    min-height:auto !important;
  }
  body.projects-v37 .project-card-v37 h3{font-size:22px !important;line-height:1.08 !important;}
  body.projects-v37 .project-card-v37 p, body.projects-v37 .project-card-v37 b{font-size:14px !important;line-height:1.42 !important;}
}
@media (max-width:430px){
  body.projects-v37 .project-filters-v37{grid-template-columns:1fr !important;}
  body.projects-v37 .project-stage-v37{height:var(--stage-h-mobile, 560svh) !important;}
}

/* === A2 FINAL HOTFIX — Projects page mobile hero + desktop card containment ===
   Scope: projects-v37 only. Keeps the locked visual system intact. */
body.projects-v37 *,
body.projects-v37 *::before,
body.projects-v37 *::after{box-sizing:border-box;}

body.projects-v37 .project-hero-sticky-v37,
body.projects-v37 .project-sticky-v37,
body.projects-v37 .project-content-v37,
body.projects-v37 .project-card-track-v37,
body.projects-v37 .project-card-v37{min-width:0;}

/* Desktop project sections: keep every internal card inside the sticky bucket. */
@media (min-width:861px){
  body.projects-v37 .project-sticky-v37{
    height:calc(100svh - 118px) !important;
    max-height:calc(100svh - 118px) !important;
    min-height:0 !important;
    overflow:hidden !important;
    contain:layout paint !important;
  }
  body.projects-v37 .project-content-v37{
    min-height:0 !important;
    height:100% !important;
    overflow:hidden !important;
    grid-template-rows:auto minmax(0,1fr) !important;
  }
  body.projects-v37 .section-head-v37{
    min-height:0 !important;
    max-width:100% !important;
  }
  body.projects-v37 .project-card-track-v37{
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
    overflow:hidden !important;
    contain:paint !important;
    padding:10px 2px 34px 0 !important;
    align-content:start !important;
  }
  body.projects-v37 .project-card-v37{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  body.projects-v37 .project-card-v37 h3,
  body.projects-v37 .project-card-v37 p,
  body.projects-v37 .project-card-v37 b,
  body.projects-v37 .project-chip-v37{
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }
}

/* Mobile project hero: force section 01 to stack like Home section 01, full-screen and not side-by-side. */
@media (max-width:860px){
  body.projects-v37 .projects-shell-v37{
    width:min(100% - 16px,760px) !important;
  }
  body.projects-v37 .project-hero-v37{
    height:520svh !important;
    min-height:520svh !important;
    margin-bottom:42px !important;
  }
  body.projects-v37 .project-hero-sticky-v37{
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
    gap:14px !important;
    padding:18px !important;
    overflow:hidden !important;
    border-radius:30px !important;
    contain:layout paint !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > div:first-child{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 auto !important;
    display:block !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > .project-terminal-v37{
    width:100% !important;
    max-width:100% !important;
    flex:1 1 auto !important;
    min-height:42svh !important;
    height:auto !important;
    margin:0 !important;
    align-self:stretch !important;
    display:grid !important;
    grid-template-rows:44px minmax(0,1fr) !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-terminal-v37 pre{
    min-height:0 !important;
    height:100% !important;
    max-height:none !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-filters-v37{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  body.projects-v37 .project-filters-v37 button{
    width:100% !important;
    min-width:0 !important;
  }
  body.projects-v37 .project-sticky-v37{
    contain:layout paint !important;
  }
  body.projects-v37 .project-card-track-v37{
    contain:paint !important;
  }
  body.projects-v37 .project-card-v37{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    overflow-wrap:anywhere !important;
  }
}

@media (max-width:430px){
  body.projects-v37 .project-hero-sticky-v37{padding:16px !important;}
  body.projects-v37 .project-filters-v37{grid-template-columns:1fr !important;}
  body.projects-v37 .project-hero-v37{height:560svh !important;min-height:560svh !important;}
}

/* === V41 FINAL PATCH — Projects Section 01 mobile sequence + readable card buckets ===
   Scope: projects-v37 only. This intentionally overrides the earlier containment hotfix. */
body.projects-v37 .project-card-v37,
body.projects-v37 .project-card-v37 *{
  box-sizing:border-box !important;
}
body.projects-v37 .project-card-v37{
  overflow:visible !important;
  height:auto !important;
  max-height:none !important;
}
body.projects-v37 .project-card-v37 h3,
body.projects-v37 .project-card-v37 p,
body.projects-v37 .project-card-v37 b,
body.projects-v37 .project-chip-v37{
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
}

@media (min-width:861px){
  body.projects-v37 .project-sticky-v37{
    height:calc(100svh - 118px) !important;
    min-height:calc(100svh - 118px) !important;
    max-height:calc(100svh - 118px) !important;
    overflow:hidden !important;
    contain:layout !important;
  }
  body.projects-v37 .project-content-v37{
    height:100% !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-card-track-v37{
    height:100% !important;
    max-height:none !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding:8px 8px 44px 0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
    align-content:start !important;
    contain:none !important;
    scrollbar-width:none !important;
  }
  body.projects-v37 .project-card-track-v37::-webkit-scrollbar{display:none !important;}
  body.projects-v37 .project-card-v37{
    min-height:fit-content !important;
    padding:22px !important;
    align-self:start !important;
  }
}

@media (max-width:860px){
  /* Section 01 mobile: first the code window owns the screen; after its internal scroll, intro/filter panel appears. */
  body.projects-v37 .project-hero-v37{
    height:620svh !important;
    min-height:620svh !important;
    margin-bottom:54px !important;
  }
  body.projects-v37 .project-hero-sticky-v37{
    position:sticky !important;
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    display:block !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:30px !important;
    background:linear-gradient(135deg,rgba(10,16,31,.94),rgba(4,7,14,.82)) !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > .project-terminal-v37{
    position:absolute !important;
    inset:14px !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    display:grid !important;
    grid-template-rows:44px minmax(0,1fr) !important;
    border-radius:24px !important;
    z-index:3 !important;
    opacity:calc(1 - var(--heroText,0)) !important;
    transform:translateY(calc(var(--heroText,0) * -28px)) scale(calc(1 - var(--heroText,0) * .035)) !important;
    pointer-events:auto !important;
  }
  body.projects-v37 .project-terminal-v37 .window-top{height:44px !important;}
  body.projects-v37 .project-terminal-v37 pre{
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:hidden !important;
    padding:16px !important;
    font-size:12.2px !important;
    line-height:1.58 !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > div:first-child{
    position:absolute !important;
    inset:14px !important;
    z-index:4 !important;
    width:auto !important;
    max-width:none !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    padding:18px !important;
    border-radius:24px !important;
    border:1px solid rgba(150,170,205,.18) !important;
    background:linear-gradient(135deg,rgba(10,16,31,.88),rgba(5,9,18,.72)) !important;
    opacity:var(--heroText,0) !important;
    transform:translateY(calc((1 - var(--heroText,0)) * 34px)) scale(calc(.97 + var(--heroText,0) * .03)) !important;
    pointer-events:var(--heroPointer,none) !important;
  }
  body.projects-v37 .project-hero-v37 h1{
    font-size:clamp(37px,12vw,58px) !important;
    line-height:.96 !important;
    margin:8px 0 12px !important;
  }
  body.projects-v37 .project-hero-v37 .lead{
    font-size:15px !important;
    line-height:1.46 !important;
  }
  body.projects-v37 .project-filters-v37{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin-top:18px !important;
  }
  body.projects-v37 .project-filters-v37 button{
    width:100% !important;
    min-width:0 !important;
    padding:11px 9px !important;
    border-radius:16px !important;
    font-size:13.5px !important;
  }

  /* Sections 02+: readable buckets on mobile, not tiny cards. */
  body.projects-v37 .project-stage-v37{
    height:var(--stage-h-mobile, 620svh) !important;
    margin:34px 0 64px !important;
  }
  body.projects-v37 .project-sticky-v37{
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:54px auto minmax(0,1fr) !important;
    gap:10px !important;
    padding:14px !important;
    overflow:hidden !important;
    border-radius:30px !important;
    contain:layout !important;
  }
  body.projects-v37 .project-index-v37{
    height:54px !important;
    min-height:54px !important;
    padding:10px 14px !important;
    border-radius:18px !important;
  }
  body.projects-v37 .project-index-v37 strong{font-size:34px !important;}
  body.projects-v37 .project-index-v37 span{font-size:10px !important;letter-spacing:.1em !important;}
  body.projects-v37 .project-content-v37{
    display:contents !important;
  }
  body.projects-v37 .section-head-v37{
    min-height:0 !important;
    max-width:100% !important;
  }
  body.projects-v37 .section-head-v37 .eyebrow{display:none !important;}
  body.projects-v37 .section-head-v37 h2{
    font-size:clamp(26px,8.4vw,40px) !important;
    line-height:1.02 !important;
    margin:0 0 8px !important;
  }
  body.projects-v37 .section-head-v37 p{
    font-size:13.8px !important;
    line-height:1.38 !important;
    margin:0 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:3 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-card-track-v37{
    height:100% !important;
    max-height:none !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    align-content:start !important;
    padding:2px 2px 38px !important;
    contain:none !important;
    scrollbar-width:none !important;
  }
  body.projects-v37 .project-card-track-v37::-webkit-scrollbar{display:none !important;}
  body.projects-v37 .project-card-v37{
    min-height:fit-content !important;
    padding:17px !important;
    border-radius:22px !important;
  }
  body.projects-v37 .project-chip-v37{
    margin-bottom:11px !important;
    padding:8px 11px !important;
    font-size:13px !important;
  }
  body.projects-v37 .project-card-v37 h3{
    font-size:22px !important;
    line-height:1.08 !important;
    margin-bottom:9px !important;
  }
  body.projects-v37 .project-card-v37 p,
  body.projects-v37 .project-card-v37 b{
    font-size:14.4px !important;
    line-height:1.46 !important;
  }
}

@media (max-width:430px){
  body.projects-v37 .project-hero-v37{height:660svh !important;min-height:660svh !important;}
  body.projects-v37 .project-hero-sticky-v37 > div:first-child,
  body.projects-v37 .project-hero-sticky-v37 > .project-terminal-v37{inset:10px !important;}
  body.projects-v37 .project-hero-sticky-v37 > div:first-child{padding:15px !important;}
  body.projects-v37 .project-filters-v37{grid-template-columns:1fr !important;}
  body.projects-v37 .project-sticky-v37{padding:12px !important;grid-template-rows:52px auto minmax(0,1fr) !important;}
  body.projects-v37 .section-head-v37 p{-webkit-line-clamp:2 !important;}
}

/* === V42 FINAL FIX — Projects sections 02+ readable buckets ===
   Replaces the failed internal-scroll containment with natural-height project buckets.
   Section 01 mobile keeps the Home-like code-first sticky sequence. */

/* Sections 02+: never crop card content. */
body.projects-v37 .project-stage-v37:not(.project-hero-v37){
  height:auto !important;
  min-height:0 !important;
  margin:56px 0 86px !important;
  overflow:visible !important;
  display:block !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37{
  position:relative !important;
  top:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  contain:none !important;
  align-items:stretch !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37::before,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37::after{
  pointer-events:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-content-v37{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  display:grid !important;
  grid-template-rows:auto auto !important;
  gap:26px !important;
  contain:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .section-head-v37{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-track-v37{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  contain:none !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  align-content:start !important;
  padding:0 !important;
  margin:0 !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37{
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  visibility:visible !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding:24px !important;
  align-self:stretch !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 h3,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 p,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 b,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-chip-v37{
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  white-space:normal !important;
  text-overflow:clip !important;
  overflow-wrap:break-word !important;
}

@media (max-width:860px){
  /* Keep Section 01 mobile as a full-screen sticky sequence: code first, intro second. */
  body.projects-v37 .project-hero-v37{
    height:620svh !important;
    min-height:620svh !important;
  }
  body.projects-v37 .project-hero-sticky-v37{
    position:sticky !important;
    top:118px !important;
    height:calc(100svh - 138px) !important;
    min-height:0 !important;
    max-height:calc(100svh - 138px) !important;
    overflow:hidden !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > .project-terminal-v37{
    position:absolute !important;
    inset:14px !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
  }
  body.projects-v37 .project-hero-sticky-v37 > div:first-child{
    position:absolute !important;
    inset:14px !important;
  }

  /* Sections 02+: natural mobile cards, no cropped internal track. */
  body.projects-v37 .project-stage-v37:not(.project-hero-v37){
    height:auto !important;
    min-height:0 !important;
    margin:32px 0 52px !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto !important;
    gap:16px !important;
    padding:18px !important;
    border-radius:30px !important;
    contain:none !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-index-v37{
    height:auto !important;
    min-height:64px !important;
    flex-direction:row !important;
    align-items:center !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-content-v37{
    display:grid !important;
    grid-template-rows:auto auto !important;
    gap:16px !important;
    overflow:visible !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .section-head-v37 p{
    display:block !important;
    -webkit-line-clamp:unset !important;
    -webkit-box-orient:initial !important;
    overflow:visible !important;
    font-size:15px !important;
    line-height:1.46 !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-track-v37{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:0 !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37{
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    padding:17px !important;
    border-radius:22px !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 h3{
    font-size:22px !important;
    line-height:1.1 !important;
  }
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 p,
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 b{
    font-size:14.3px !important;
    line-height:1.48 !important;
  }
}


/* V43 home projects CTA */
.home-project-cta-v43{margin-top:20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;position:relative;z-index:4}
.home-project-cta-v43 span{color:var(--muted);font-size:14px;line-height:1.45;max-width:520px}
@media(max-width:920px){.home-project-cta-v43{align-items:stretch}.home-project-cta-v43 .btn{width:100%;justify-content:center}.home-project-cta-v43 span{text-align:center;max-width:none}}


/* V45 case-study pages and card links */
.project-card-actions-v45{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.project-mini-link-v45{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(82,242,255,.32);background:rgba(82,242,255,.075);color:#e9fbff;text-decoration:none;font-weight:900;font-size:14px;transition:.22s ease}
.project-mini-link-v45:hover{transform:translateY(-1px);border-color:rgba(82,242,255,.8);box-shadow:0 12px 40px rgba(82,242,255,.16)}
.case-study-hub-cta-v45{margin:72px 0 12px;border:1px solid rgba(150,170,205,.18);border-radius:42px;background:linear-gradient(135deg,rgba(12,18,34,.9),rgba(5,8,17,.78));padding:clamp(28px,5vw,62px);box-shadow:0 30px 120px rgba(0,0,0,.28)}
.case-study-hub-cta-v45 h2{font-size:clamp(34px,5.4vw,68px);line-height:.98;letter-spacing:-.055em;margin:10px 0 16px}.case-study-hub-cta-v45 p:not(.eyebrow){color:#c2cde0;font-size:clamp(17px,2vw,21px);line-height:1.55;max-width:880px}
.case-study-shell-v45{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:112px 0 90px;color:#eef6ff}.case-study-hero-v45{border:1px solid rgba(150,170,205,.18);border-radius:42px;background:linear-gradient(135deg,rgba(10,16,31,.92),rgba(4,7,14,.78));padding:clamp(30px,6vw,74px);position:relative;overflow:hidden;box-shadow:0 30px 120px rgba(0,0,0,.34)}
.case-study-hero-v45:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 8%,rgba(82,242,255,.16),transparent 32%),radial-gradient(circle at 86% 70%,rgba(139,92,246,.14),transparent 36%);pointer-events:none}.case-study-hero-v45>*{position:relative;z-index:1}.case-study-hero-v45 h1{font-size:clamp(42px,7vw,86px);line-height:.94;letter-spacing:-.07em;margin:14px 0 18px}.case-study-hero-v45 .lead{font-size:clamp(18px,2.15vw,24px);line-height:1.55;color:#bdc9dc;max-width:860px}.case-study-grid-v45{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);gap:24px;margin-top:28px}.case-study-panel-v45{border:1px solid rgba(150,170,205,.16);border-radius:30px;background:rgba(8,13,26,.66);padding:26px}.case-study-panel-v45 h2{font-size:clamp(26px,3.4vw,42px);letter-spacing:-.035em;margin:0 0 14px}.case-study-panel-v45 p,.case-study-panel-v45 li{color:#bfcbdd;font-size:16.5px;line-height:1.6}.case-study-panel-v45 ul{padding-left:19px;margin:0}.case-code-window-v45{border:1px solid rgba(150,170,205,.2);border-radius:30px;overflow:hidden;background:rgba(5,8,18,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 90px rgba(0,0,0,.3)}.case-code-window-v45 .window-top{height:48px;display:flex;align-items:center;gap:8px;padding:0 16px;border-bottom:1px solid rgba(150,170,205,.16);color:#bfcbe0;font-weight:900}.case-code-window-v45 .window-top i{width:12px;height:12px;border-radius:50%;display:block}.case-code-window-v45 .window-top i:nth-child(1){background:#ff5f57}.case-code-window-v45 .window-top i:nth-child(2){background:#ffbd2e}.case-code-window-v45 .window-top i:nth-child(3){background:#28c840}.case-code-window-v45 pre{margin:0;padding:24px;white-space:pre-wrap;color:#cfe0f5;font-size:14.5px;line-height:1.65;overflow:auto;max-height:520px}.case-study-actions-v45{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.case-study-list-v45{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}.case-study-list-card-v45{border:1px solid rgba(150,170,205,.16);border-radius:26px;background:rgba(8,13,26,.66);padding:22px;text-decoration:none;color:#eef6ff;transition:.22s ease}.case-study-list-card-v45:hover{transform:translateY(-2px);border-color:rgba(82,242,255,.55);box-shadow:0 18px 70px rgba(0,0,0,.24)}.case-study-list-card-v45 span{display:inline-flex;margin-bottom:12px;color:#52f2ff;font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.case-study-list-card-v45 h3{margin:0 0 10px;font-size:22px;line-height:1.1}.case-study-list-card-v45 p{margin:0;color:#b7c4d6;line-height:1.45;font-size:14.5px}
@media(max-width:920px){.case-study-shell-v45{width:min(100% - 16px,760px);padding-top:124px}.case-study-hero-v45{border-radius:30px;padding:26px 20px}.case-study-grid-v45{grid-template-columns:1fr}.case-study-panel-v45,.case-code-window-v45{border-radius:24px}.case-code-window-v45 pre{font-size:12px;max-height:none}.case-study-actions-v45 .btn{width:100%}.case-study-list-v45{grid-template-columns:1fr}.case-study-hub-cta-v45{border-radius:30px;margin-top:48px}}


/* V46 deeper employer-facing case-study copy */
.case-study-deep-v46 .case-study-panel-v45 h2:not(:first-child){margin-top:26px}
.case-study-deep-v46 .case-study-panel-v45 strong{color:#eef8ff}
.case-study-employer-v46{margin-top:24px;background:linear-gradient(135deg,rgba(82,242,255,.08),rgba(139,92,246,.07),rgba(8,13,26,.72));}
.interview-line-v46{border-top:1px solid rgba(150,170,205,.14);padding-top:18px;margin-top:18px!important;color:#d7e4f4!important}
.case-study-deep-v46 .case-study-panel-v45 li{margin-bottom:8px}
.case-study-deep-v46 .case-study-panel-v45 ul{margin-bottom:2px}
@media(max-width:920px){.case-study-deep-v46 .case-study-panel-v45 h2:not(:first-child){margin-top:22px}.case-study-deep-v46 .case-study-panel-v45 p,.case-study-deep-v46 .case-study-panel-v45 li{font-size:15.5px}}


/* V48 — richer case-study code blocks */
.case-study-v48 .case-study-panel-v45 p,
.case-study-v48 .case-study-panel-v45 li { line-height: 1.72; }
.case-code-window-v48 { align-self: start; max-height: none; overflow: visible; }
.case-code-block-v48 { padding: 0 18px 18px; border-top: 1px solid rgba(255,255,255,.08); }
.case-code-block-v48 h3 { margin: 18px 0 10px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.72); }
.case-code-block-v48 pre { margin: 0; max-height: 360px; overflow: auto; border-radius: 16px; background: rgba(0,0,0,.24); padding: 16px; }
.case-code-block-v48 code { white-space: pre; font-size: 12px; line-height: 1.6; }
@media (max-width: 760px) {
  .case-study-v48 .case-study-grid-v45 { display: block; }
  .case-code-window-v48 { margin-top: 18px; width: 100%; }
  .case-code-block-v48 { padding: 0 12px 14px; }
  .case-code-block-v48 pre { max-height: 300px; padding: 12px; }
  .case-code-block-v48 code { font-size: 11px; }
}

/* V49 — Home Section 03 mobile readable capability buckets
   Keeps the approved visual system, but fixes clipped capability cards on small screens.
   The section now gives the card area a real viewport-based height and lets the card list
   scroll internally when the available mobile height is not enough. */
@media (max-width: 920px) {
  body:not(.projects-v37) #capabilities.capability-section {
    height: 520svh !important;
  }

  body:not(.projects-v37) #capabilities .cap-sticky {
    height: calc(100svh - 16px) !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    align-content: stretch !important;
    gap: 14px !important;
    overflow: hidden !important;
  }

  body:not(.projects-v37) #capabilities .cap-grid {
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    padding: 2px 4px 22px !important;
    align-content: start !important;
    align-items: start !important;
    scroll-snap-type: y proximity;
  }

  body:not(.projects-v37) #capabilities .cap-grid::-webkit-scrollbar {
    width: 5px;
  }

  body:not(.projects-v37) #capabilities .cap-grid::-webkit-scrollbar-thumb {
    background: rgba(82, 242, 255, .28);
    border-radius: 999px;
  }

  body:not(.projects-v37) #capabilities .cap-card {
    min-height: 174px !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 16px 16px 17px !important;
    border-radius: 22px !important;
    scroll-snap-align: start;
  }

  body:not(.projects-v37) #capabilities .cap-card p {
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    font-size: 13.2px !important;
    line-height: 1.48 !important;
    margin-bottom: 12px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card h3 {
    font-size: 18px !important;
    line-height: 1.16 !important;
    margin-bottom: 7px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card strong {
    margin-top: auto !important;
    font-size: 15px !important;
    line-height: 1.28 !important;
  }

  body:not(.projects-v37) #capabilities .cap-icon {
    width: 38px !important;
    height: 38px !important;
    font-size: 20px !important;
    margin-bottom: 10px !important;
  }
}

@media (max-width: 430px) {
  body:not(.projects-v37) #capabilities .cap-sticky {
    gap: 10px !important;
  }

  body:not(.projects-v37) #capabilities .cap-grid {
    gap: 10px !important;
    padding-bottom: 24px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card {
    min-height: 188px !important;
    padding: 15px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card p {
    font-size: 12.8px !important;
    line-height: 1.46 !important;
  }
}

/* V49B — final Home Section 03 mobile bucket readability patch */
@media (max-width: 920px) {
  body:not(.projects-v37) #capabilities .cap-sticky {
    grid-template-rows: auto minmax(0, 1fr) !important;
    overflow: hidden !important;
  }
  body:not(.projects-v37) #capabilities .cap-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    max-height: calc(100svh - var(--header) - 190px) !important;
    min-height: 360px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding-right: 6px !important;
    padding-bottom: 28px !important;
  }
  body:not(.projects-v37) #capabilities .cap-card {
    min-height: 190px !important;
    height: auto !important;
    overflow: visible !important;
    display: flex !important;
  }
  body:not(.projects-v37) #capabilities .cap-card p,
  body:not(.projects-v37) #capabilities .cap-card h3,
  body:not(.projects-v37) #capabilities .cap-card strong {
    overflow: visible !important;
    text-overflow: clip !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
  }
}
@media (max-width: 430px) {
  body:not(.projects-v37) #capabilities .cap-grid {
    max-height: calc(100svh - var(--header) - 175px) !important;
    min-height: 390px !important;
  }
  body:not(.projects-v37) #capabilities .cap-card {
    min-height: 205px !important;
  }
}


/* === V50 FINAL TARGETED PATCH — Home S03 mobile auto-scroll, S05 mobile CTA, Skills/n8n readability === */
@media (max-width: 920px) {
  body:not(.projects-v37) #capabilities.capability-section {height:620svh!important;min-height:620svh!important;overflow:visible!important;}
  body:not(.projects-v37) #capabilities .cap-sticky {height:calc(100svh - 14px)!important;min-height:calc(100svh - 14px)!important;max-height:calc(100svh - 14px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;align-content:stretch!important;overflow:hidden!important;gap:12px!important;}
  body:not(.projects-v37) #capabilities .cap-head {flex:0 0 auto!important;max-height:33svh!important;overflow:visible!important;}
  body:not(.projects-v37) #capabilities .cap-grid {display:flex!important;flex-direction:column!important;gap:12px!important;height:100%!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;scroll-behavior:smooth!important;padding:2px 6px 32px 0!important;scrollbar-width:thin!important;touch-action:pan-y!important;}
  body:not(.projects-v37) #capabilities .cap-card {flex:0 0 auto!important;min-height:232px!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:18px 17px 19px!important;border-radius:24px!important;display:flex!important;flex-direction:column!important;}
  body:not(.projects-v37) #capabilities .cap-card p {font-size:14px!important;line-height:1.55!important;margin:0 0 14px!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;}
  body:not(.projects-v37) #capabilities .cap-card h3 {font-size:19px!important;line-height:1.18!important;margin-bottom:8px!important;}
  body:not(.projects-v37) #capabilities .cap-card strong {font-size:16px!important;line-height:1.3!important;margin-top:auto!important;}

  body:not(.projects-v37) .home-project-cta-v43 {display:grid!important;grid-template-columns:1fr 1fr!important;align-items:stretch!important;gap:9px!important;margin-top:10px!important;}
  body:not(.projects-v37) .home-project-cta-v43 .btn {width:100%!important;min-width:0!important;min-height:42px!important;padding-inline:10px!important;font-size:12.5px!important;white-space:nowrap!important;}
  body:not(.projects-v37) .home-project-cta-v43 span {grid-column:1 / -1!important;font-size:12.2px!important;line-height:1.35!important;text-align:center!important;max-width:none!important;}
  body:not(.projects-v37) #proof .project-showcase {grid-template-rows:minmax(0,1fr) auto!important;min-height:0!important;}
  body:not(.projects-v37) #proof .project-code {min-height:42svh!important;max-height:none!important;}
  body:not(.projects-v37) #proof .project-code pre {overflow:auto!important;-webkit-overflow-scrolling:touch!important;}

  body:not(.projects-v37) #skills.skills-scroll {height:620svh!important;}
  body:not(.projects-v37) #skills .skill-matrix {overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding-right:6px!important;gap:10px!important;}
  body:not(.projects-v37) #skills .skill-group {min-height:118px!important;height:auto!important;overflow:visible!important;}
}
@media (max-width:430px){body:not(.projects-v37) #capabilities .cap-card{min-height:252px!important;}body:not(.projects-v37) #capabilities .cap-card p{font-size:13.5px!important;line-height:1.52!important;}body:not(.projects-v37) .home-project-cta-v43 .btn{font-size:11.8px!important;padding-inline:8px!important;}body:not(.projects-v37) #proof .project-code{min-height:39svh!important;}}


/* === V51 REAL PATCH — cache-busted mobile fixes for Home S03/S05 + skills visibility === */
@media (max-width: 920px) {
  /* Home Section 03: real card viewport + automatic internal scrolling */
  body:not(.projects-v37) #capabilities.capability-section {
    height: 680svh !important;
    min-height: 680svh !important;
    overflow: visible !important;
  }
  body:not(.projects-v37) #capabilities .cap-sticky {
    height: calc(100svh - 16px) !important;
    max-height: calc(100svh - 16px) !important;
    min-height: calc(100svh - 16px) !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    gap: 12px !important;
    align-content: stretch !important;
    overflow: hidden !important;
  }
  body:not(.projects-v37) #capabilities .cap-head {
    max-height: 31svh !important;
    overflow: visible !important;
  }
  body:not(.projects-v37) #capabilities .cap-head h2 {
    font-size: clamp(28px, 8.4vw, 44px) !important;
    line-height: .98 !important;
  }
  body:not(.projects-v37) #capabilities .cap-head p {
    font-size: 14px !important;
    line-height: 1.42 !important;
  }
  body:not(.projects-v37) #capabilities #capGrid,
  body:not(.projects-v37) #capabilities .cap-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-behavior: smooth !important;
    padding: 2px 8px 36px 0 !important;
  }
  body:not(.projects-v37) #capabilities .cap-card {
    flex: 0 0 auto !important;
    height: clamp(242px, 30svh, 306px) !important;
    min-height: 242px !important;
    max-height: 306px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    padding: 18px 17px 20px !important;
    border-radius: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    scrollbar-width: thin !important;
  }
  body:not(.projects-v37) #capabilities .cap-card::-webkit-scrollbar,
  body:not(.projects-v37) #capabilities .cap-grid::-webkit-scrollbar { width: 4px !important; }
  body:not(.projects-v37) #capabilities .cap-card h3 {
    font-size: 19.5px !important;
    line-height: 1.16 !important;
    margin-bottom: 8px !important;
  }
  body:not(.projects-v37) #capabilities .cap-card p {
    font-size: 14.2px !important;
    line-height: 1.56 !important;
    margin: 0 0 14px !important;
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    text-overflow: clip !important;
  }
  body:not(.projects-v37) #capabilities .cap-card strong {
    font-size: 16px !important;
    line-height: 1.28 !important;
    margin-top: auto !important;
    display: block !important;
  }

  /* Home Section 05: keep CTA buttons side-by-side on mobile so the code window keeps height. */
  body:not(.projects-v37) #proof .project-sticky {
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    gap: 8px !important;
  }
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(0, .82fr) minmax(250px, 1.08fr) !important;
    height: 100% !important;
    min-height: 0 !important;
    gap: 8px !important;
  }
  body:not(.projects-v37) #proof .project-code {
    min-height: 250px !important;
    height: auto !important;
    max-height: none !important;
    display: grid !important;
    grid-template-rows: 42px minmax(0, 1fr) !important;
  }
  body:not(.projects-v37) #proof .project-code pre {
    overflow: auto !important;
    min-height: 0 !important;
    -webkit-overflow-scrolling: touch !important;
  }
  body:not(.projects-v37) #proof .home-project-cta-v43 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: stretch !important;
    margin-top: 6px !important;
  }
  body:not(.projects-v37) #proof .home-project-cta-v43 .btn {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 8px 7px !important;
    font-size: 11.8px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    justify-content: center !important;
  }
  body:not(.projects-v37) #proof .home-project-cta-v43 span {
    grid-column: 1 / -1 !important;
    max-width: none !important;
    text-align: center !important;
    font-size: 11.6px !important;
    line-height: 1.32 !important;
  }

  /* Home Section 06: compact skills with all newer tools visible. */
  body:not(.projects-v37) #skills .skill-matrix {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    gap: 10px !important;
    -webkit-overflow-scrolling: touch !important;
    padding-right: 6px !important;
  }
  body:not(.projects-v37) #skills .skill-group {
    height: auto !important;
    min-height: 126px !important;
    max-height: none !important;
    overflow: visible !important;
  }
  body:not(.projects-v37) #skills .skill-track {
    overflow: visible !important;
    flex-wrap: wrap !important;
  }
}
@media (max-width: 430px) {
  body:not(.projects-v37) #capabilities .cap-head { max-height: 29svh !important; }
  body:not(.projects-v37) #capabilities .cap-card {
    height: clamp(255px, 33svh, 330px) !important;
    min-height: 255px !important;
    max-height: 330px !important;
  }
  body:not(.projects-v37) #capabilities .cap-card p {
    font-size: 13.8px !important;
    line-height: 1.54 !important;
  }
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-rows: minmax(0, .76fr) minmax(236px, 1.05fr) !important;
  }
  body:not(.projects-v37) #proof .project-code { min-height: 236px !important; }
  body:not(.projects-v37) #proof .home-project-cta-v43 .btn { font-size: 11.2px !important; padding-inline: 5px !important; }
}


/* === V52 FINAL: Premium skill architecture + explicit n8n visibility === */
body:not(.projects-v37) #skills.skills-scroll{
  height:auto!important;
  min-height:0!important;
  padding:clamp(42px,7vw,92px) 0!important;
}
body:not(.projects-v37) #skills .skills-sticky{
  position:relative!important;
  top:auto!important;
  min-height:auto!important;
  height:auto!important;
  overflow:visible!important;
  display:grid!important;
  grid-template-columns:minmax(280px,.82fr) minmax(0,1.6fr)!important;
  gap:clamp(24px,4vw,46px)!important;
  align-items:start!important;
  padding:clamp(22px,4vw,44px)!important;
  border-radius:34px!important;
}
body:not(.projects-v37) #skills .skills-copy{position:relative!important;z-index:2!important;align-self:start!important;max-width:520px!important;}
body:not(.projects-v37) #skills .skills-copy h2{font-size:clamp(40px,5.8vw,74px)!important;line-height:.95!important;letter-spacing:-.065em!important;}
body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){font-size:clamp(16px,1.4vw,19px)!important;line-height:1.58!important;color:#c7d3e6!important;}
body:not(.projects-v37) #skills .skill-matrix{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:0!important;
  align-content:start!important;
}
body:not(.projects-v37) #skills .skill-group{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  min-height:174px!important;
  height:auto!important;
  max-height:none!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:13px!important;
  padding:18px!important;
  border-radius:24px!important;
  border:1px solid rgba(150,170,205,.18)!important;
  background:linear-gradient(145deg,rgba(13,22,42,.84),rgba(5,9,20,.68))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 54px rgba(0,0,0,.18)!important;
}
body:not(.projects-v37) #skills .skill-group:hover{
  border-color:rgba(82,242,255,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 22px 70px rgba(82,242,255,.08)!important;
}
body:not(.projects-v37) #skills .skill-group b{
  display:block!important;
  margin:0!important;
  color:#f5fbff!important;
  font-size:15.5px!important;
  line-height:1.22!important;
  letter-spacing:-.02em!important;
}
body:not(.projects-v37) #skills .skill-track{
  display:flex!important;
  flex-wrap:wrap!important;
  align-content:flex-start!important;
  gap:7px!important;
  overflow:visible!important;
  padding:0!important;
}
body:not(.projects-v37) #skills .skill-track span{
  flex:0 0 auto!important;
  max-width:100%!important;
  white-space:normal!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:7px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(82,242,255,.18)!important;
  background:rgba(255,255,255,.055)!important;
  color:#d9e8f7!important;
  font-size:11.6px!important;
  line-height:1.1!important;
  font-weight:800!important;
}
body:not(.projects-v37) #skills .skill-track span:nth-child(1),
body:not(.projects-v37) #skills .skill-track span:nth-child(2){border-color:rgba(82,242,255,.34)!important;color:#ecfeff!important;background:rgba(82,242,255,.075)!important;}
@media(max-width:1180px){
  body:not(.projects-v37) #skills .skills-sticky{grid-template-columns:1fr!important;}
  body:not(.projects-v37) #skills .skill-matrix{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:720px){
  body:not(.projects-v37) #skills.skills-scroll{padding:34px 0!important;}
  body:not(.projects-v37) #skills .skills-sticky{padding:20px!important;border-radius:28px!important;gap:20px!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:clamp(34px,11vw,52px)!important;}
  body:not(.projects-v37) #skills .skill-matrix{grid-template-columns:1fr!important;gap:12px!important;}
  body:not(.projects-v37) #skills .skill-group{min-height:auto!important;padding:16px!important;border-radius:22px!important;}
  body:not(.projects-v37) #skills .skill-track span{font-size:11.4px!important;padding:7px 9px!important;}
}
/* Projects and case-study n8n visibility */
.project-filters-v37 button[data-filter="n8n"]{border-color:rgba(82,242,255,.48)!important;background:rgba(82,242,255,.09)!important;color:#eaffff!important;}
.n8n-feature-note-v52{margin-top:14px;padding:12px 14px;border:1px solid rgba(82,242,255,.22);border-radius:18px;background:rgba(82,242,255,.06);color:#d9fbff;font-weight:800;font-size:14px;line-height:1.45;}
.n8n-case-strip-v52{margin-top:22px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px;border:1px solid rgba(82,242,255,.22);border-radius:20px;background:rgba(82,242,255,.06)}
.n8n-case-strip-v52 strong{color:#f4fbff;margin-right:4px}.n8n-case-strip-v52 a{color:#dffcff;text-decoration:none;border:1px solid rgba(82,242,255,.26);border-radius:999px;padding:8px 10px;font-weight:900;background:rgba(255,255,255,.045)}
.n8n-case-strip-v52 a:hover{background:linear-gradient(135deg,#52f2ff,#8b5cf6);color:#06111d;border-color:transparent;}

/* === V57 FINAL OVERRIDE: polished hero + bulletproof skills layout === */
body:not(.projects-v37) .brand-copy small{font-size:12px;letter-spacing:.01em;color:#c8d5e7}
body:not(.projects-v37) .hero{height:320svh!important;}
body:not(.projects-v37) .hero-sticky{padding-top:calc(var(--header) + 18px)!important;padding-bottom:20px!important;align-items:center!important;}
body:not(.projects-v37) .hero-shell{
  height:calc(100svh - var(--header) - 48px)!important;
  min-height:560px!important;
  max-height:820px!important;
  display:grid!important;
  grid-template-columns:minmax(0,.96fr) minmax(360px,.94fr)!important;
  gap:clamp(18px,2vw,28px)!important;
  align-items:center!important;
  padding:clamp(22px,2.4vw,34px)!important;
  overflow:hidden!important;
}
body:not(.projects-v37) .hero-copy{align-self:center!important;max-height:100%!important;overflow:visible!important;}
body:not(.projects-v37) .hero-copy .eyebrow{font-size:11px!important;margin-bottom:12px!important;letter-spacing:.12em!important;}
body:not(.projects-v37) .hero-copy h1{
  font-size:clamp(38px,3.9vw,64px)!important;
  line-height:.95!important;
  letter-spacing:-.06em!important;
  margin:0 0 14px!important;
  max-width:740px!important;
}
body:not(.projects-v37) .hero-copy .lead{font-size:clamp(14px,1.02vw,16px)!important;line-height:1.52!important;max-width:660px!important;margin:0 0 18px!important;}
body:not(.projects-v37) .hero-actions{margin-top:16px!important;gap:10px!important;justify-content:flex-start!important;}
body:not(.projects-v37) .hero-actions .btn{min-height:44px!important;padding:0 18px!important;font-size:14px!important;}
body:not(.projects-v37) .social-strip{margin-top:14px!important;gap:8px!important;}
body:not(.projects-v37) .social-strip a{padding:7px 10px!important;font-size:12px!important;}
body:not(.projects-v37) .evidence-bar-v53{
  margin-top:16px!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  max-width:720px!important;
  position:relative!important;
  z-index:3!important;
}
body:not(.projects-v37) .evidence-bar-v53>div{min-height:78px!important;padding:13px 14px!important;border-radius:20px!important;overflow:hidden!important;}
body:not(.projects-v37) .evidence-bar-v53 b{font-size:clamp(24px,2.3vw,38px)!important;line-height:.95!important;display:block!important;white-space:nowrap!important;}
body:not(.projects-v37) .evidence-bar-v53 span{font-size:10.5px!important;line-height:1.18!important;display:block!important;margin-top:5px!important;}
body:not(.projects-v37) .hero-code{height:100%!important;min-height:0!important;align-self:stretch!important;display:grid!important;grid-template-rows:48px minmax(0,1fr) auto!important;overflow:hidden!important;}
body:not(.projects-v37) .hero-code .code{font-size:clamp(11px,.82vw,13px)!important;line-height:1.48!important;padding:18px 20px!important;overflow:hidden!important;}
body:not(.projects-v37) .compile-card{margin:0 16px 16px!important;padding:14px 16px!important;}
body:not(.projects-v37) .compile-card p{font-size:13px!important;line-height:1.38!important;}

/* Skills: remove fragile staged overlap and use a premium scroll-safe board */
body:not(.projects-v37) #skills.skills-scroll{height:260svh!important;}
body:not(.projects-v37) #skills .skills-sticky{
  display:grid!important;
  grid-template-columns:minmax(300px,.36fr) minmax(0,1fr)!important;
  gap:22px!important;
  align-items:center!important;
  padding-top:calc(var(--header) + 22px)!important;
  padding-bottom:22px!important;
  overflow:hidden!important;
}
body:not(.projects-v37) #skills .skills-copy{align-self:center!important;z-index:5!important;}
body:not(.projects-v37) #skills .skills-copy .eyebrow{margin-bottom:12px!important;}
body:not(.projects-v37) #skills .skills-copy h2{font-size:clamp(34px,3.25vw,56px)!important;line-height:.96!important;margin:0 0 14px!important;letter-spacing:-.055em!important;}
body:not(.projects-v37) #skills .skills-copy p{font-size:clamp(14px,1vw,16px)!important;line-height:1.5!important;max-width:520px!important;}
body:not(.projects-v37) #skills .cpu-bg{opacity:.22!important;inset:calc(var(--header) + 28px) 22px 22px auto!important;width:64%!important;z-index:0!important;}
body:not(.projects-v37) #skills .skill-matrix{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  align-content:start!important;
  align-items:start!important;
  max-height:calc(100svh - var(--header) - 96px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:4px 8px 4px 4px!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:thin!important;
  position:relative!important;
  z-index:4!important;
}
body:not(.projects-v37) #skills .skill-group,
body:not(.projects-v37) #skills .skill-group.on{
  opacity:1!important;
  transform:none!important;
  position:relative!important;
  min-height:auto!important;
  height:auto!important;
  padding:16px!important;
  border-radius:22px!important;
  overflow:visible!important;
  background:linear-gradient(145deg,rgba(255,255,255,.078),rgba(255,255,255,.028))!important;
  border:1px solid rgba(139,168,214,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 46px rgba(0,0,0,.14)!important;
}
body:not(.projects-v37) #skills .skill-group b{font-size:15px!important;line-height:1.18!important;margin:0 0 7px!important;color:#fff!important;}
body:not(.projects-v37) #skills .skill-group p{font-size:12px!important;line-height:1.36!important;color:#bdcbe0!important;margin:0 0 10px!important;}
body:not(.projects-v37) #skills .skill-track{display:flex!important;flex-wrap:wrap!important;gap:6px!important;overflow:visible!important;padding:0!important;max-height:none!important;}
body:not(.projects-v37) #skills .skill-track span{display:inline-flex!important;flex:0 0 auto!important;margin:0!important;padding:6px 8px!important;font-size:11px!important;line-height:1!important;border-radius:999px!important;white-space:nowrap!important;background:rgba(82,242,255,.075)!important;border:1px solid rgba(82,242,255,.16)!important;color:#dcecff!important;}

@media (max-width:1100px) and (min-width:921px){
  body:not(.projects-v37) .hero-shell{grid-template-columns:minmax(0,1fr) minmax(330px,.82fr)!important;}
  body:not(.projects-v37) .hero-copy h1{font-size:clamp(34px,4.2vw,50px)!important;}
  body:not(.projects-v37) .evidence-bar-v53{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;}
  body:not(.projects-v37) .evidence-bar-v53>div{padding:11px 10px!important;min-height:70px!important;}
  body:not(.projects-v37) #skills .skills-sticky{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;gap:14px!important;align-items:stretch!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:40px!important;}
  body:not(.projects-v37) #skills .skills-copy p{max-width:900px!important;}
  body:not(.projects-v37) #skills .skill-matrix{max-height:calc(100svh - var(--header) - 260px)!important;}
}

@media (max-width:920px){
  body:not(.projects-v37) .brand-copy small{display:block!important;font-size:11px!important;}
  body:not(.projects-v37) .hero{height:360svh!important;}
  body:not(.projects-v37) .hero-sticky{padding-top:calc(var(--header) + 8px)!important;padding-bottom:12px!important;}
  body:not(.projects-v37) .hero-shell{height:calc(100svh - var(--header) - 18px)!important;min-height:0!important;display:block!important;padding:0!important;border-radius:28px!important;}
  body:not(.projects-v37) .hero-copy{position:absolute!important;inset:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;padding:18px 14px 20px!important;text-align:center!important;overflow:hidden!important;}
  body:not(.projects-v37) .hero-copy h1{font-size:clamp(29px,8.2vw,44px)!important;line-height:.98!important;margin-bottom:10px!important;}
  body:not(.projects-v37) .hero-copy .lead{font-size:13.4px!important;line-height:1.4!important;margin-bottom:12px!important;}
  body:not(.projects-v37) .hero-actions{justify-content:center!important;margin-top:10px!important;gap:8px!important;}
  body:not(.projects-v37) .hero-actions .btn{width:auto!important;min-width:0!important;min-height:40px!important;padding:0 13px!important;font-size:12px!important;}
  body:not(.projects-v37) .social-strip{justify-content:center!important;margin-top:10px!important;gap:6px!important;}
  body:not(.projects-v37) .social-strip a{font-size:10.8px!important;padding:6px 8px!important;}
  body:not(.projects-v37) .evidence-bar-v53{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;margin-top:10px!important;max-width:100%!important;}
  body:not(.projects-v37) .evidence-bar-v53>div{min-height:54px!important;padding:8px 5px!important;border-radius:14px!important;}
  body:not(.projects-v37) .evidence-bar-v53 b{font-size:clamp(18px,5.7vw,27px)!important;line-height:1!important;}
  body:not(.projects-v37) .evidence-bar-v53 span{font-size:8px!important;line-height:1.05!important;margin-top:3px!important;}
  body:not(.projects-v37) .hero-code{position:absolute!important;inset:0!important;height:100%!important;}
  body:not(.projects-v37) #skills.skills-scroll{height:360svh!important;}
  body:not(.projects-v37) #skills .skills-sticky{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;gap:12px!important;padding-top:calc(var(--header) + 10px)!important;padding-bottom:14px!important;align-items:stretch!important;}
  body:not(.projects-v37) #skills .skills-copy{padding:16px 16px 14px!important;border-radius:24px!important;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025))!important;border:1px solid rgba(139,168,214,.18)!important;overflow:hidden!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:clamp(28px,7.3vw,42px)!important;line-height:1!important;margin-bottom:10px!important;}
  body:not(.projects-v37) #skills .skills-copy p{font-size:13px!important;line-height:1.38!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  body:not(.projects-v37) #skills .skill-matrix{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;max-height:none!important;height:auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:0 4px 10px!important;align-content:start!important;scrollbar-width:none!important;}
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar{display:none!important;}
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-group.on{display:block!important;flex:none!important;width:100%!important;padding:14px!important;border-radius:20px!important;}
  body:not(.projects-v37) #skills .skill-group b{font-size:15px!important;margin-bottom:6px!important;}
  body:not(.projects-v37) #skills .skill-group p{font-size:11.8px!important;line-height:1.32!important;margin-bottom:9px!important;}
  body:not(.projects-v37) #skills .skill-track{display:flex!important;flex-wrap:wrap!important;gap:5px!important;overflow:visible!important;}
  body:not(.projects-v37) #skills .skill-track span{font-size:10px!important;padding:5px 7px!important;}
  body:not(.projects-v37) #skills .cpu-bg{display:none!important;}
}

@media (max-width:430px){
  body:not(.projects-v37) .hero-copy h1{font-size:27px!important;}
  body:not(.projects-v37) .hero-copy .lead{font-size:12.6px!important;}
  body:not(.projects-v37) .evidence-bar-v53 span{display:none!important;}
  body:not(.projects-v37) .evidence-bar-v53>div{min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  body:not(.projects-v37) #skills .skills-copy{padding:14px!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:27px!important;}
}


/* === V58 BULLETPROOF: Sections 06/07 spacing + desktop auto-scroll === */
body:not(.projects-v37) #skills,
body:not(.projects-v37) #engineering-system{
  box-sizing:border-box!important;
}

/* Section 06: restore real stop-scroll on desktop, but keep every card inside a scrollable board. */
@media (min-width: 921px){
  body:not(.projects-v37) #skills.skills-scroll{
    height:520svh!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    position:relative!important;
  }
  body:not(.projects-v37) #skills .skills-sticky{
    position:sticky!important;
    top:calc(var(--header) + 14px)!important;
    width:var(--w)!important;
    height:calc(100svh - var(--header) - 28px)!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:clamp(20px,2.2vw,30px)!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:minmax(320px,.42fr) minmax(0,.58fr)!important;
    gap:clamp(18px,2vw,28px)!important;
    align-items:stretch!important;
    align-content:stretch!important;
    border-radius:34px!important;
  }
  body:not(.projects-v37) #skills .cpu-bg{
    display:block!important;
    opacity:.20!important;
    inset:0!important;
    width:auto!important;
    pointer-events:none!important;
  }
  body:not(.projects-v37) #skills .skills-copy{
    align-self:stretch!important;
    max-width:none!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:clamp(18px,2vw,26px)!important;
    border-radius:28px!important;
    border:1px solid rgba(139,168,214,.13)!important;
    background:linear-gradient(145deg,rgba(255,255,255,.050),rgba(255,255,255,.015))!important;
  }
  body:not(.projects-v37) #skills .skills-copy .eyebrow{margin-bottom:14px!important;}
  body:not(.projects-v37) #skills .skills-copy h2{
    font-size:clamp(34px,4.05vw,56px)!important;
    line-height:.98!important;
    letter-spacing:-.055em!important;
    margin:0 0 16px!important;
  }
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){
    font-size:clamp(15px,1.12vw,18px)!important;
    line-height:1.55!important;
    margin:0!important;
    color:#c4d2e6!important;
  }
  body:not(.projects-v37) #skills .skill-matrix{
    align-self:stretch!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:12px!important;
    align-content:start!important;
    padding:2px 8px 2px 2px!important;
    scroll-behavior:auto!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(82,242,255,.55) rgba(255,255,255,.06)!important;
    overscroll-behavior:contain!important;
  }
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar{width:8px!important;display:block!important;}
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar-track{background:rgba(255,255,255,.055)!important;border-radius:999px!important;}
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#52f2ff,#8b5cf6)!important;border-radius:999px!important;}
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-group.on{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    height:auto!important;
    min-height:152px!important;
    max-height:none!important;
    overflow:visible!important;
    display:block!important;
    padding:16px!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,rgba(11,20,38,.90),rgba(5,9,20,.72))!important;
    border:1px solid rgba(143,169,214,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.065),0 18px 44px rgba(0,0,0,.16)!important;
  }
  body:not(.projects-v37) #skills .skill-group b{
    font-size:15.5px!important;
    line-height:1.18!important;
    margin:0 0 7px!important;
  }
  body:not(.projects-v37) #skills .skill-group p{
    margin:0 0 11px!important;
    color:#aebdd0!important;
    font-size:12.4px!important;
    line-height:1.42!important;
  }
  body:not(.projects-v37) #skills .skill-track{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #skills .skill-track span{
    white-space:nowrap!important;
    font-size:10.8px!important;
    line-height:1!important;
    padding:6.5px 8px!important;
    min-height:0!important;
  }

  /* Section 07: no fake empty travel; one polished sticky panel. */
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:260svh!important;
    padding:0!important;
    margin:0!important;
    position:relative!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:sticky!important;
    top:calc(var(--header) + 14px)!important;
    width:var(--w)!important;
    height:calc(100svh - var(--header) - 28px)!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:clamp(22px,2.4vw,34px)!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:clamp(16px,2vw,24px)!important;
    align-content:stretch!important;
    border-radius:34px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{
    min-width:0!important;
    max-width:980px!important;
    margin:0!important;
    padding:0!important;
  }
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(34px,4.2vw,60px)!important;
    line-height:.98!important;
    margin:0 0 12px!important;
    letter-spacing:-.055em!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    font-size:clamp(15px,1.16vw,18px)!important;
    line-height:1.52!important;
    max-width:860px!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    min-height:0!important;
    height:100%!important;
    overflow:auto!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    align-content:stretch!important;
    padding:2px 6px 2px 2px!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(82,242,255,.50) rgba(255,255,255,.06)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
    padding:clamp(18px,1.7vw,24px)!important;
    border-radius:24px!important;
    border:1px solid rgba(143,169,214,.18)!important;
    background:linear-gradient(145deg,rgba(13,22,42,.86),rgba(5,9,20,.68))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.065),0 18px 54px rgba(0,0,0,.18)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    color:#fff!important;
    font-size:clamp(22px,2vw,30px)!important;
    letter-spacing:-.04em!important;
    margin-bottom:12px!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    margin:0!important;
    font-size:clamp(13.2px,1.03vw,16px)!important;
    line-height:1.52!important;
    color:#bfcee0!important;
  }
}

/* Tablet refinement */
@media (min-width:921px) and (max-width:1180px){
  body:not(.projects-v37) #skills .skills-sticky{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;gap:14px!important;}
  body:not(.projects-v37) #skills .skills-copy{justify-content:flex-start!important;height:auto!important;padding:18px!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:clamp(32px,5vw,48px)!important;}
  body:not(.projects-v37) #skills .skill-matrix{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* Mobile: remove sticky fight; make the panels clean, readable and contained. */
@media (max-width:920px){
  body:not(.projects-v37) #skills.skills-scroll,
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:auto!important;
    min-height:0!important;
    padding:16px 0!important;
    margin:0!important;
  }
  body:not(.projects-v37) #skills .skills-sticky,
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:relative!important;
    top:auto!important;
    width:var(--w)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:18px!important;
    overflow:hidden!important;
    display:block!important;
    border-radius:28px!important;
  }
  body:not(.projects-v37) #skills .cpu-bg{display:none!important;}
  body:not(.projects-v37) #skills .skills-copy{
    display:block!important;
    height:auto!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    margin:0 0 16px!important;
  }
  body:not(.projects-v37) #skills .skills-copy h2,
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(31px,9.4vw,45px)!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    margin:0 0 12px!important;
  }
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow),
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    display:block!important;
    -webkit-line-clamp:unset!important;
    font-size:14px!important;
    line-height:1.48!important;
    overflow:visible!important;
    margin:0!important;
  }
  body:not(.projects-v37) #skills .skill-matrix{
    height:auto!important;
    max-height:62svh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:0 4px 2px 0!important;
    align-content:start!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(82,242,255,.55) rgba(255,255,255,.06)!important;
    overscroll-behavior:contain!important;
  }
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar{width:6px!important;display:block!important;}
  body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#52f2ff,#8b5cf6)!important;border-radius:999px!important;}
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-group.on{
    opacity:1!important;
    transform:none!important;
    display:block!important;
    height:auto!important;
    min-height:auto!important;
    padding:14px!important;
    overflow:visible!important;
    border-radius:20px!important;
  }
  body:not(.projects-v37) #skills .skill-group b{font-size:15px!important;margin:0 0 7px!important;}
  body:not(.projects-v37) #skills .skill-group p{font-size:12px!important;line-height:1.4!important;margin:0 0 10px!important;color:#b8c7da!important;}
  body:not(.projects-v37) #skills .skill-track{display:flex!important;flex-wrap:wrap!important;gap:5px!important;overflow:visible!important;}
  body:not(.projects-v37) #skills .skill-track span{font-size:10.5px!important;padding:6px 8px!important;line-height:1!important;white-space:normal!important;}

  body:not(.projects-v37) #engineering-system .section-head{margin:0 0 16px!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    max-height:58svh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:0 4px 2px 0!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(82,242,255,.55) rgba(255,255,255,.06)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    padding:16px!important;
    border-radius:20px!important;
    border:1px solid rgba(143,169,214,.18)!important;
    background:linear-gradient(145deg,rgba(13,22,42,.86),rgba(5,9,20,.68))!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{display:block!important;font-size:22px!important;margin:0 0 8px!important;color:#fff!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{font-size:13px!important;line-height:1.48!important;margin:0!important;color:#bdccde!important;}
}

@media (max-width:430px){
  body:not(.projects-v37) #skills .skills-sticky,
  body:not(.projects-v37) #engineering-system .section-frame-v54{padding:16px!important;}
  body:not(.projects-v37) #skills .skills-copy h2,
  body:not(.projects-v37) #engineering-system .section-head h2{font-size:29px!important;}
}

/* === V59 SURGICAL FIX: Section 06 staged skill architecture (desktop + mobile) === */
/* The old grid tried to show every skill bucket at once, which caused card overlap.
   V59 turns Section 06 into a controlled stop-scroll stage: one bucket becomes visible
   at each scroll step. This keeps the premium layout clean on desktop and mobile. */
body:not(.projects-v37) #skills.skills-scroll{
  height:640svh!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  position:relative!important;
}
body:not(.projects-v37) #skills .skills-sticky{
  box-sizing:border-box!important;
  position:sticky!important;
  top:calc(var(--header) + 14px)!important;
  width:var(--w)!important;
  height:calc(100svh - var(--header) - 28px)!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:clamp(20px,2.35vw,34px)!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(300px,.43fr) minmax(0,.57fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  gap:clamp(18px,2.1vw,30px)!important;
  align-items:stretch!important;
  align-content:stretch!important;
  border-radius:34px!important;
}
body:not(.projects-v37) #skills .cpu-bg{display:none!important;}
body:not(.projects-v37) #skills .skills-copy{
  position:relative!important;
  z-index:3!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:clamp(20px,2.2vw,32px)!important;
  border-radius:30px!important;
  border:1px solid rgba(143,169,214,.18)!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.062),rgba(255,255,255,.018)),
    linear-gradient(90deg,rgba(82,242,255,.035) 1px,transparent 1px),
    linear-gradient(rgba(82,242,255,.025) 1px,transparent 1px)!important;
  background-size:auto,42px 42px,42px 42px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body:not(.projects-v37) #skills .skills-copy .eyebrow{
  margin:0 0 16px!important;
}
body:not(.projects-v37) #skills .skills-copy h2{
  font-size:clamp(34px,4vw,58px)!important;
  line-height:.98!important;
  letter-spacing:-.06em!important;
  margin:0 0 18px!important;
  max-width:11ch!important;
}
body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){
  font-size:clamp(15px,1.08vw,18px)!important;
  line-height:1.58!important;
  max-width:52ch!important;
  color:#c4d2e6!important;
  margin:0!important;
  display:block!important;
  overflow:visible!important;
}
body:not(.projects-v37) #skills .skill-matrix{
  --skill-progress:0%;
  position:relative!important;
  z-index:3!important;
  align-self:stretch!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  display:block!important;
  padding:54px 0 0!important;
  border-radius:30px!important;
  border:1px solid rgba(143,169,214,.16)!important;
  background:
    radial-gradient(circle at 35% 10%,rgba(82,242,255,.12),transparent 36%),
    linear-gradient(145deg,rgba(7,13,26,.72),rgba(5,8,18,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 24px 80px rgba(0,0,0,.2)!important;
  scrollbar-width:none!important;
}
body:not(.projects-v37) #skills .skill-matrix::-webkit-scrollbar{display:none!important;}
body:not(.projects-v37) #skills .skill-matrix:before{
  content:attr(data-stage-label);
  position:absolute!important;
  top:16px!important;
  left:18px!important;
  z-index:8!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:28px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(82,242,255,.26)!important;
  background:rgba(82,242,255,.095)!important;
  color:#e8fbff!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
body:not(.projects-v37) #skills .skill-matrix:after{
  content:"";
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  top:48px!important;
  height:3px!important;
  border-radius:999px!important;
  background:
    linear-gradient(90deg,#52f2ff 0%,#8b5cf6 var(--skill-progress),rgba(255,255,255,.09) var(--skill-progress),rgba(255,255,255,.09) 100%)!important;
  opacity:.9!important;
  z-index:8!important;
}
body:not(.projects-v37) #skills .skill-group,
body:not(.projects-v37) #skills .skill-group.on{
  position:absolute!important;
  inset:66px 18px 18px 18px!important;
  z-index:1!important;
  box-sizing:border-box!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:clamp(18px,1.65vw,26px)!important;
  border-radius:26px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(22px) scale(.982)!important;
  filter:blur(5px)!important;
  transition:opacity .42s ease, transform .42s cubic-bezier(.2,.8,.2,1), filter .42s ease, visibility 0s linear .42s!important;
  background:
    linear-gradient(145deg,rgba(17,29,52,.94),rgba(7,12,26,.84)),
    radial-gradient(circle at var(--mx,50%) var(--my,8%),rgba(82,242,255,.16),transparent 40%)!important;
  border:1px solid rgba(143,169,214,.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 22px 70px rgba(0,0,0,.22)!important;
}
body:not(.projects-v37) #skills .skill-group.stage-active{
  z-index:6!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0) scale(1)!important;
  filter:none!important;
  transition-delay:0s!important;
}
body:not(.projects-v37) #skills .skill-group:before{display:none!important;}
body:not(.projects-v37) #skills .skill-group b{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  color:#fff!important;
  font-size:clamp(22px,2.1vw,34px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
}
body:not(.projects-v37) #skills .skill-group p{
  position:relative!important;
  z-index:2!important;
  color:#c2d0e3!important;
  font-size:clamp(14px,1.08vw,17px)!important;
  line-height:1.55!important;
  margin:0 0 18px!important;
  max-width:62ch!important;
}
body:not(.projects-v37) #skills .skill-track{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-content:flex-start!important;
  gap:8px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  max-height:none!important;
  padding:0 2px 4px 0!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(82,242,255,.55) rgba(255,255,255,.06)!important;
}
body:not(.projects-v37) #skills .skill-track::-webkit-scrollbar{width:6px!important;display:block!important;}
body:not(.projects-v37) #skills .skill-track::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#52f2ff,#8b5cf6)!important;border-radius:999px!important;}
body:not(.projects-v37) #skills .skill-track span{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:8px 11px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  color:#e7f5ff!important;
  background:rgba(82,242,255,.08)!important;
  border:1px solid rgba(82,242,255,.22)!important;
}

/* Section 07 compact cleanup so it aligns with the staged style and does not leave fake empty space. */
@media (min-width:921px){
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:320svh!important;
    min-height:0!important;
    padding:0!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:sticky!important;
    top:calc(var(--header) + 14px)!important;
    width:var(--w)!important;
    height:calc(100svh - var(--header) - 28px)!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:clamp(22px,2.4vw,34px)!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:clamp(16px,1.7vw,24px)!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{margin:0!important;max-width:980px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{font-size:clamp(36px,4.2vw,64px)!important;line-height:.98!important;margin:0 0 12px!important;}
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){font-size:clamp(15px,1.08vw,18px)!important;line-height:1.52!important;max-width:850px!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:stretch!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    padding:clamp(16px,1.5vw,22px)!important;
    border-radius:24px!important;
  }
}

@media (max-width:920px){
  body:not(.projects-v37) #skills.skills-scroll{
    height:620svh!important;
    min-height:0!important;
    padding:0!important;
  }
  body:not(.projects-v37) #skills .skills-sticky{
    position:sticky!important;
    top:calc(var(--header) + 10px)!important;
    width:var(--w)!important;
    height:calc(100svh - var(--header) - 20px)!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:14px!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:12px!important;
    border-radius:28px!important;
  }
  body:not(.projects-v37) #skills .skills-copy{
    height:auto!important;
    max-height:38svh!important;
    justify-content:flex-start!important;
    padding:14px!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  body:not(.projects-v37) #skills .skills-copy h2{
    font-size:clamp(27px,7.6vw,40px)!important;
    line-height:1!important;
    margin:0 0 9px!important;
    max-width:13ch!important;
  }
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){
    font-size:12.7px!important;
    line-height:1.38!important;
    display:-webkit-box!important;
    -webkit-line-clamp:4!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body:not(.projects-v37) #skills .skill-matrix{
    height:100%!important;
    min-height:0!important;
    padding:48px 0 0!important;
    border-radius:22px!important;
  }
  body:not(.projects-v37) #skills .skill-matrix:before{top:12px!important;left:12px!important;height:26px!important;font-size:10px!important;}
  body:not(.projects-v37) #skills .skill-matrix:after{top:42px!important;left:12px!important;right:12px!important;height:2px!important;}
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-group.on{
    inset:54px 10px 10px 10px!important;
    padding:15px!important;
    border-radius:20px!important;
  }
  body:not(.projects-v37) #skills .skill-group b{font-size:clamp(18px,5.4vw,25px)!important;line-height:1.05!important;margin-bottom:9px!important;}
  body:not(.projects-v37) #skills .skill-group p{font-size:12px!important;line-height:1.42!important;margin-bottom:11px!important;}
  body:not(.projects-v37) #skills .skill-track{gap:6px!important;overflow-y:auto!important;overflow-x:hidden!important;padding-right:2px!important;}
  body:not(.projects-v37) #skills .skill-track span{font-size:10.2px!important;padding:6px 8px!important;white-space:normal!important;text-align:center!important;}
}

@media (max-width:430px){
  body:not(.projects-v37) #skills .skills-copy{max-height:36svh!important;padding:12px!important;}
  body:not(.projects-v37) #skills .skills-copy h2{font-size:26px!important;}
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){-webkit-line-clamp:3!important;}
  body:not(.projects-v37) #skills .skill-group b{font-size:18px!important;}
  body:not(.projects-v37) #skills .skill-group p{font-size:11.3px!important;}
  body:not(.projects-v37) #skills .skill-track span{font-size:9.6px!important;padding:5px 7px!important;}
}

/* === V60 FIX: Section 06 direct wheel/touch scroll over active skill bucket === */
#skills .skills-sticky,
#skills .skill-matrix,
#skills .skill-group,
#skills .skill-track{
  overscroll-behavior: none !important;
}
#skills .skill-group.stage-active,
#skills .skill-group.stage-active .skill-track{
  cursor: ns-resize;
}
#skills .skill-track{
  /* The visible movement is controlled by page-scroll progress, not native nested scrolling. */
  pointer-events: auto !important;
}
#skills .skill-group.stage-active:after{
  content:"Scroll to reveal next capability";
  position:absolute;
  right:16px;
  bottom:12px;
  z-index:5;
  font-size:11px;
  letter-spacing:.02em;
  color:rgba(205,225,245,.55);
  pointer-events:none;
}
@media (max-width:920px){
  #skills .skill-group.stage-active:after{
    content:"Swipe / scroll for next skill";
    right:14px;
    bottom:10px;
    font-size:10.5px;
  }
}

/* === V61: unified Section 06 scroll input layer ===
   Goal: scrolling over the active skill bucket, around it, or anywhere inside
   the Section 06 sticky frame must produce the same staged scroll movement.
*/
body:not(.projects-v37) #skills,
body:not(.projects-v37) #skills .skills-sticky,
body:not(.projects-v37) #skills .skill-matrix,
body:not(.projects-v37) #skills .skill-group,
body:not(.projects-v37) #skills .skill-track{
  overscroll-behavior:contain!important;
}
body:not(.projects-v37) #skills .skill-track{
  scrollbar-gutter:stable both-edges!important;
}
body:not(.projects-v37) #skills .skill-group.stage-active{
  cursor:grab!important;
}
body:not(.projects-v37) #skills .skill-group.stage-active:active{
  cursor:grabbing!important;
}
@media (pointer:coarse){
  body:not(.projects-v37) #skills .skills-sticky,
  body:not(.projects-v37) #skills .skill-matrix,
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-track{
    touch-action:none!important;
  }
}


/* === V62: Section 06 faster staged scroll + mobile header crop fix === */
body:not(.projects-v37) #skills .skill-group.stage-active:after{
  content:"Scroll once for next capability"!important;
}
@media (max-width:920px){
  body:not(.projects-v37) #skills .skills-sticky{
    grid-template-rows:minmax(218px,34svh) minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px!important;
  }
  body:not(.projects-v37) #skills .skills-copy{
    max-height:none!important;
    height:auto!important;
    min-height:0!important;
    padding:12px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  body:not(.projects-v37) #skills .skills-copy .eyebrow{
    margin:0 0 8px!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.11em!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
  }
  body:not(.projects-v37) #skills .skills-copy .eyebrow span{
    width:34px!important;
    min-width:34px!important;
    height:28px!important;
    line-height:28px!important;
    font-size:15px!important;
    border-radius:10px!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #skills .skills-copy h2{
    font-size:clamp(27px,7.2vw,38px)!important;
    line-height:.98!important;
    margin:0 0 8px!important;
    max-width:15ch!important;
    letter-spacing:-.055em!important;
  }
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){
    font-size:12px!important;
    line-height:1.34!important;
    -webkit-line-clamp:3!important;
    margin:0!important;
  }
  body:not(.projects-v37) #skills .skill-matrix{
    padding:42px 0 0!important;
    min-height:0!important;
  }
  body:not(.projects-v37) #skills .skill-matrix:before{top:10px!important;left:10px!important;height:24px!important;}
  body:not(.projects-v37) #skills .skill-matrix:after{top:38px!important;left:10px!important;right:10px!important;}
  body:not(.projects-v37) #skills .skill-group,
  body:not(.projects-v37) #skills .skill-group.on{
    inset:48px 8px 8px 8px!important;
  }
  body:not(.projects-v37) #skills .skill-group.stage-active:after{
    content:"Swipe once for next skill"!important;
  }
}
@media (max-width:430px){
  body:not(.projects-v37) #skills .skills-sticky{
    grid-template-rows:minmax(205px,32svh) minmax(0,1fr)!important;
  }
  body:not(.projects-v37) #skills .skills-copy h2{font-size:25px!important;}
  body:not(.projects-v37) #skills .skills-copy p:not(.eyebrow){font-size:11.2px!important;line-height:1.3!important;}
}

/* Build v63: instant staged skill bucket switching */


/* === V64: keep staged skills as one scroll surface === */
body:not(.projects-v37) #skills,
body:not(.projects-v37) #skills .skills-sticky,
body:not(.projects-v37) #skills .skill-matrix,
body:not(.projects-v37) #skills .skill-group,
body:not(.projects-v37) #skills .skill-track{overscroll-behavior:contain!important;}
body:not(.projects-v37) #skills .skill-matrix,
body:not(.projects-v37) #skills .skill-group,
body:not(.projects-v37) #skills .skill-track{touch-action:none!important;}

/* === V66: Section 07 Engineering System - animated buckets + mobile auto-scroll === */
body:not(.projects-v37) #engineering-system{
  --sys-progress:0;
  --sys-active:0;
}
@media (min-width:921px){
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:420svh!important;
    min-height:0!important;
    padding:0!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:sticky!important;
    top:calc(var(--header) + 14px)!important;
    height:calc(100svh - var(--header) - 28px)!important;
    min-height:0!important;
    padding:clamp(22px,2.25vw,32px)!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:clamp(16px,1.55vw,22px)!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{
    margin:0!important;
    max-width:1060px!important;
    transform:translateY(calc(var(--sys-progress) * -10px));
    transition:transform .28s ease;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow{margin-bottom:10px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(34px,3.7vw,58px)!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    margin:0 0 10px!important;
    max-width:17ch!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    max-width:850px!important;
    font-size:clamp(14px,1.02vw,17px)!important;
    line-height:1.48!important;
    margin:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    position:relative!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:clamp(12px,1vw,16px)!important;
    padding:2px!important;
    isolation:isolate!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53:before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:28px;
    pointer-events:none;
    background:
      radial-gradient(circle at calc(12% + var(--sys-progress) * 76%) 18%, rgba(82,242,255,.18), transparent 30%),
      linear-gradient(90deg, rgba(82,242,255,.05), rgba(139,92,246,.04));
    opacity:.85;
    z-index:0;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    z-index:1!important;
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
    padding:clamp(18px,1.65vw,26px)!important;
    border-radius:26px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    gap:10px!important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.045)),
      radial-gradient(circle at 20% 0%, rgba(82,242,255,.14), transparent 40%)!important;
    border:1px solid rgba(255,255,255,.13)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 18px 55px rgba(0,0,0,.22)!important;
    opacity:.48!important;
    transform:translateY(20px) scale(.965)!important;
    filter:saturate(.72) blur(.15px)!important;
    transition:opacity .42s ease, transform .42s cubic-bezier(.2,.8,.2,1), filter .42s ease, border-color .42s ease, box-shadow .42s ease!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-visible{
    opacity:.78!important;
    transform:translateY(0) scale(.985)!important;
    filter:saturate(.95)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active{
    opacity:1!important;
    transform:translateY(-8px) scale(1.015)!important;
    filter:none!important;
    border-color:rgba(82,242,255,.38)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 26px 80px rgba(0,0,0,.33), 0 0 0 1px rgba(82,242,255,.10)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step);
    position:absolute;
    top:16px;
    left:16px;
    width:36px;
    height:36px;
    border-radius:14px;
    display:grid;
    place-items:center;
    font-size:12px;
    font-weight:900;
    color:#07131f;
    background:linear-gradient(135deg,#52f2ff,#d7b46a);
    opacity:.86;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    color:#fff!important;
    font-size:clamp(23px,2vw,34px)!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
    margin:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    color:#c5d2e5!important;
    font-size:clamp(13px,.95vw,15px)!important;
    line-height:1.52!important;
    margin:0!important;
  }
}
@media (max-width:920px){
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:430svh!important;
    min-height:0!important;
    padding:0!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:sticky!important;
    top:calc(var(--header) + 10px)!important;
    width:var(--w)!important;
    height:calc(100svh - var(--header) - 20px)!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:14px!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:12px!important;
    border-radius:28px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{
    margin:0!important;
    padding:14px!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.045)!important;
    border:1px solid rgba(255,255,255,.09)!important;
    overflow:hidden!important;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow{margin-bottom:8px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(25px,7vw,36px)!important;
    line-height:1!important;
    letter-spacing:-.05em!important;
    margin:0 0 8px!important;
    max-width:14ch!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    font-size:12.5px!important;
    line-height:1.42!important;
    margin:0!important;
    display:-webkit-box!important;
    -webkit-line-clamp:3!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    position:relative!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    display:block!important;
    padding:0 4px 0 0!important;
    scroll-behavior:auto!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    min-height:min(42svh,320px)!important;
    height:auto!important;
    overflow:hidden!important;
    margin:0 0 12px!important;
    padding:18px!important;
    border-radius:23px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045))!important;
    border:1px solid rgba(255,255,255,.12)!important;
    opacity:.56!important;
    transform:translateY(22px) scale(.97)!important;
    filter:saturate(.78)!important;
    transition:opacity .35s ease,transform .35s ease,filter .35s ease,border-color .35s ease!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active,
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-visible{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
    filter:none!important;
    border-color:rgba(82,242,255,.32)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step);
    position:absolute;
    top:14px;
    left:14px;
    width:32px;
    height:32px;
    border-radius:13px;
    display:grid;
    place-items:center;
    font-size:11px;
    font-weight:900;
    color:#07131f;
    background:linear-gradient(135deg,#52f2ff,#d7b46a);
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    font-size:clamp(24px,7vw,34px)!important;
    line-height:1!important;
    margin:0 0 8px!important;
    color:#fff!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    font-size:13px!important;
    line-height:1.48!important;
    margin:0!important;
    color:#c5d2e5!important;
  }
}

/* === V70: unified section handoff and anti-between-section lock === */
html{scroll-behavior:auto!important;}
body:not(.projects-v37) main > section.section{scroll-margin-top:0!important;}
body:not(.projects-v37) .sticky-frame{will-change:transform;}
body:not(.projects-v37) #skills,
body:not(.projects-v37) #engineering-system{overscroll-behavior:contain!important;}

/* Keep Section 07 mobile cards animated but never steal the page scroll. */
@media (max-width:920px){
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    overflow:visible!important;
    height:auto!important;
    min-height:0!important;
    pointer-events:auto!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    overflow:hidden!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    will-change:transform,opacity;
  }
}

/* === V71: hard reset for Section 07 and Section 08 stable layout === */
body:not(.projects-v37) #engineering-system,
body:not(.projects-v37) #work-with-me{
  scroll-margin-top:calc(var(--header) + 18px)!important;
  overscroll-behavior:auto!important;
}

@media (min-width:921px){
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:auto!important;
    min-height:calc(100svh - 14px)!important;
    padding:calc(var(--header) + 22px) 0 46px!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:calc(100svh - var(--header) - 76px)!important;
    width:var(--w)!important;
    margin:0 auto!important;
    padding:clamp(28px,2.45vw,42px)!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-rows:auto auto!important;
    gap:clamp(34px,4vh,54px)!important;
    border-radius:34px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{
    margin:0!important;
    max-width:980px!important;
    transform:none!important;
  }
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(40px,4.15vw,68px)!important;
    line-height:.98!important;
    letter-spacing:-.06em!important;
    max-width:18ch!important;
    margin:0 0 14px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    font-size:clamp(15px,1.06vw,18px)!important;
    line-height:1.55!important;
    max-width:900px!important;
    margin:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:clamp(16px,1.25vw,22px)!important;
    padding:0!important;
    align-items:stretch!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53:before{display:none!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    z-index:1!important;
    min-height:clamp(220px,23vh,292px)!important;
    height:auto!important;
    overflow:hidden!important;
    padding:clamp(22px,1.8vw,30px)!important;
    padding-top:clamp(72px,5.2vw,86px)!important;
    border-radius:28px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    gap:12px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045)),radial-gradient(circle at 18% 0%,rgba(82,242,255,.14),transparent 42%)!important;
    border:1px solid rgba(255,255,255,.14)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 22px 70px rgba(0,0,0,.26)!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:hover,
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active{
    transform:translateY(-6px)!important;
    border-color:rgba(82,242,255,.32)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 30px 90px rgba(0,0,0,.34),0 0 0 1px rgba(82,242,255,.08)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step)!important;
    position:absolute!important;
    top:22px!important;
    left:22px!important;
    width:42px!important;
    height:42px!important;
    border-radius:15px!important;
    display:grid!important;
    place-items:center!important;
    color:#07131f!important;
    font-size:13px!important;
    font-weight:950!important;
    background:linear-gradient(135deg,#52f2ff,#d7b46a)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    font-size:clamp(24px,1.9vw,34px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    margin:0!important;
    color:#fff!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    font-size:clamp(13px,.98vw,15.5px)!important;
    line-height:1.58!important;
    color:#c8d5e8!important;
    margin:0!important;
  }

  body:not(.projects-v37) #work-with-me.section-stop-v54,
  body:not(.projects-v37) #work-with-me.work-with-me-v53{
    height:auto!important;
    min-height:calc(100svh - 14px)!important;
    padding:calc(var(--header) + 22px) 0 46px!important;
  }
  body:not(.projects-v37) #work-with-me .work-frame-v53,
  body:not(.projects-v37) #work-with-me .section-frame-v54{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:calc(100svh - var(--header) - 76px)!important;
    width:var(--w)!important;
    margin:0 auto!important;
    padding:clamp(30px,2.6vw,46px)!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)!important;
    gap:clamp(28px,3vw,58px)!important;
    align-items:center!important;
    border-radius:34px!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53 h2{
    font-size:clamp(40px,4.2vw,68px)!important;
    line-height:.98!important;
    letter-spacing:-.06em!important;
    margin:0 0 18px!important;
    max-width:16ch!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53>p{
    font-size:clamp(15px,1.1vw,18px)!important;
    line-height:1.58!important;
    max-width:780px!important;
  }
  body:not(.projects-v37) #work-with-me .offer-card-v53,
  body:not(.projects-v37) #work-with-me .work-panel-v53{
    border-radius:28px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.045))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 80px rgba(0,0,0,.28)!important;
  }
  body:not(.projects-v37) #work-with-me .offer-card-v53{padding:24px!important;margin-top:28px!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53{padding:clamp(24px,2.1vw,34px)!important;}
}

@media (max-width:920px){
  body:not(.projects-v37) #engineering-system.section-stop-v54,
  body:not(.projects-v37) #engineering-system.tech-stack-v53{
    height:auto!important;
    min-height:auto!important;
    padding:calc(var(--header) + 14px) 0 30px!important;
  }
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53{
    position:relative!important;
    top:auto!important;
    width:var(--w)!important;
    height:auto!important;
    min-height:auto!important;
    margin:0 auto!important;
    padding:16px!important;
    overflow:visible!important;
    display:block!important;
    border-radius:30px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head{
    margin:0 0 18px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow{margin:0 0 12px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(34px,10vw,52px)!important;
    line-height:.98!important;
    letter-spacing:-.06em!important;
    max-width:14ch!important;
    margin:0 0 14px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    display:block!important;
    -webkit-line-clamp:unset!important;
    overflow:visible!important;
    font-size:15px!important;
    line-height:1.5!important;
    margin:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    position:relative!important;
    height:auto!important;
    min-height:auto!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
    padding:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53:before{display:none!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    min-height:auto!important;
    height:auto!important;
    overflow:hidden!important;
    margin:0!important;
    padding:74px 20px 22px!important;
    border-radius:26px!important;
    display:block!important;
    background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045)),radial-gradient(circle at 18% 0%,rgba(82,242,255,.15),transparent 45%)!important;
    border:1px solid rgba(82,242,255,.22)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 60px rgba(0,0,0,.26)!important;
    opacity:0!important;
    transform:translateY(24px) scale(.985)!important;
    filter:none!important;
    transition:opacity .42s ease,transform .42s cubic-bezier(.2,.8,.2,1),border-color .42s ease!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-visible,
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step)!important;
    position:absolute!important;
    top:18px!important;
    left:18px!important;
    width:44px!important;
    height:44px!important;
    border-radius:16px!important;
    display:grid!important;
    place-items:center!important;
    font-size:13px!important;
    font-weight:950!important;
    color:#07131f!important;
    background:linear-gradient(135deg,#52f2ff,#d7b46a)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    font-size:clamp(32px,9.2vw,44px)!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    margin:0 0 12px!important;
    color:#fff!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    font-size:15.5px!important;
    line-height:1.55!important;
    color:#d4deee!important;
    margin:0!important;
  }

  body:not(.projects-v37) #work-with-me.section-stop-v54,
  body:not(.projects-v37) #work-with-me.work-with-me-v53{
    height:auto!important;
    min-height:auto!important;
    padding:calc(var(--header) + 14px) 0 30px!important;
  }
  body:not(.projects-v37) #work-with-me .work-frame-v53,
  body:not(.projects-v37) #work-with-me .section-frame-v54{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:auto!important;
    width:var(--w)!important;
    margin:0 auto!important;
    padding:18px!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    border-radius:30px!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53 h2{
    font-size:clamp(34px,10vw,50px)!important;
    line-height:.98!important;
    letter-spacing:-.06em!important;
    margin:0 0 14px!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53>p{font-size:15px!important;line-height:1.55!important;}
  body:not(.projects-v37) #work-with-me .offer-card-v53,
  body:not(.projects-v37) #work-with-me .work-panel-v53{
    border-radius:24px!important;
    padding:20px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.045))!important;
  }
  body:not(.projects-v37) #work-with-me .work-actions-v53{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
}

/* === V72 FINAL REBUILD: stable Section 07 + 08 layout, no overlap, tested desktop/mobile === */
body:not(.projects-v37) #engineering-system,
body:not(.projects-v37) #work-with-me{
  scroll-margin-top:calc(var(--header) + 18px)!important;
  isolation:isolate!important;
}

/* Desktop: each section owns its own 100vh sticky canvas. */
@media (min-width:921px){
  body:not(.projects-v37) #engineering-system.tech-stack-v53,
  body:not(.projects-v37) #engineering-system.section-stop-v54{
    height:230svh!important;
    min-height:230svh!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53,
  body:not(.projects-v37) #engineering-system .section-frame-v54{
    position:sticky!important;
    top:0!important;
    width:var(--w)!important;
    height:100svh!important;
    min-height:100svh!important;
    margin:0 auto!important;
    padding:calc(var(--header) + 30px) clamp(26px,3vw,38px) 34px!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    grid-template-columns:1fr!important;
    align-content:center!important;
    align-items:stretch!important;
    gap:clamp(24px,3.2vh,34px)!important;
    overflow:hidden!important;
    border-radius:38px!important;
  }
  body:not(.projects-v37) #engineering-system .mobile-rail-v54{display:none!important;}
  body:not(.projects-v37) #engineering-system .section-head{
    width:100%!important;
    max-width:980px!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    z-index:2!important;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow{margin:0 0 14px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{
    max-width:16.8ch!important;
    font-size:clamp(42px,4.65vw,68px)!important;
    line-height:.94!important;
    letter-spacing:-.065em!important;
    margin:0 0 16px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    max-width:880px!important;
    font-size:clamp(15px,1.15vw,18px)!important;
    line-height:1.55!important;
    color:#b9c8db!important;
    margin:0!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    align-self:end!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
    position:relative!important;
    z-index:2!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53:before{display:none!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    min-height:clamp(188px,22vh,235px)!important;
    height:auto!important;
    padding:58px 20px 22px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    gap:10px!important;
    overflow:hidden!important;
    border-radius:26px!important;
    border:1px solid rgba(139,168,214,.20)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.035)),radial-gradient(circle at 18% 0%,rgba(82,242,255,.12),transparent 45%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 22px 70px rgba(0,0,0,.24)!important;
    opacity:.68!important;
    transform:translateY(14px) scale(.985)!important;
    transition:opacity .32s ease, transform .32s cubic-bezier(.2,.8,.2,1), border-color .32s ease, box-shadow .32s ease!important;
    filter:none!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-visible{opacity:.82!important;transform:translateY(6px) scale(.992)!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active,
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:hover{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
    border-color:rgba(82,242,255,.55)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 28px 95px rgba(82,242,255,.10)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step)!important;
    position:absolute!important;
    top:18px!important;
    left:18px!important;
    width:38px!important;
    height:38px!important;
    border-radius:14px!important;
    display:grid!important;
    place-items:center!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:950!important;
    color:#07131f!important;
    background:linear-gradient(135deg,#52f2ff,#d7b46a)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    font-size:clamp(25px,1.95vw,33px)!important;
    line-height:1.02!important;
    letter-spacing:-.055em!important;
    margin:0!important;
    color:#fff!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    font-size:clamp(13px,.98vw,15.5px)!important;
    line-height:1.5!important;
    color:#c4d2e5!important;
    margin:0!important;
    max-width:100%!important;
  }

  body:not(.projects-v37) #work-with-me.work-with-me-v53,
  body:not(.projects-v37) #work-with-me.section-stop-v54{
    height:150svh!important;
    min-height:150svh!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #work-with-me .work-frame-v53,
  body:not(.projects-v37) #work-with-me .section-frame-v54{
    position:sticky!important;
    top:0!important;
    width:var(--w)!important;
    height:100svh!important;
    min-height:100svh!important;
    margin:0 auto!important;
    padding:calc(var(--header) + 30px) clamp(26px,3vw,38px) 34px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;
    grid-template-rows:1fr!important;
    align-items:center!important;
    gap:clamp(24px,4vw,52px)!important;
    overflow:hidden!important;
    border-radius:38px!important;
  }
  body:not(.projects-v37) #work-with-me .mobile-rail-v54{display:none!important;}
  body:not(.projects-v37) #work-with-me .work-copy-v53,
  body:not(.projects-v37) #work-with-me .work-panel-v53{min-width:0!important;position:relative!important;z-index:2!important;}
  body:not(.projects-v37) #work-with-me .work-copy-v53 h2{
    font-size:clamp(44px,5.2vw,76px)!important;
    line-height:.94!important;
    letter-spacing:-.068em!important;
    max-width:13.5ch!important;
    margin:0 0 18px!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53>p{
    max-width:680px!important;
    font-size:clamp(15px,1.25vw,18px)!important;
    line-height:1.6!important;
    margin:0 0 24px!important;
    color:#becce0!important;
  }
  body:not(.projects-v37) #work-with-me .offer-card-v53{
    max-width:620px!important;
    padding:22px 24px!important;
    border-radius:26px!important;
    border:1px solid rgba(246,200,107,.28)!important;
    background:linear-gradient(180deg,rgba(246,200,107,.07),rgba(255,255,255,.045))!important;
  }
  body:not(.projects-v37) #work-with-me .offer-card-v53 b{font-size:clamp(23px,2vw,32px)!important;line-height:1.08!important;}
  body:not(.projects-v37) #work-with-me .offer-card-v53 p{font-size:15px!important;line-height:1.5!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53{
    border-radius:30px!important;
    padding:clamp(22px,2.4vw,34px)!important;
    border:1px solid rgba(139,168,214,.18)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;
    box-shadow:0 28px 110px rgba(0,0,0,.28)!important;
  }
  body:not(.projects-v37) #work-with-me .work-panel-v53 h3{font-size:clamp(25px,2.2vw,36px)!important;line-height:1.05!important;margin:0 0 18px!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53 ul{display:grid!important;gap:11px!important;margin:0 0 22px!important;padding:0!important;list-style:none!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53 li{padding:13px 15px!important;border-radius:18px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.10)!important;color:#d5e1f1!important;}
  body:not(.projects-v37) #work-with-me .work-actions-v53{display:flex!important;flex-wrap:wrap!important;gap:12px!important;}
  body:not(.projects-v37) #work-with-me .work-actions-v53 .btn.primary{flex:1 1 100%!important;}
  body:not(.projects-v37) #work-with-me .work-actions-v53 .btn.ghost{flex:1 1 180px!important;}
}

/* Mobile: natural flow, no sticky trap, animated cards with clean spacing. */
@media (max-width:920px){
  body:not(.projects-v37) #engineering-system.tech-stack-v53,
  body:not(.projects-v37) #engineering-system.section-stop-v54{
    height:auto!important;
    min-height:0!important;
    padding:calc(var(--header) + 16px) 0 36px!important;
    margin:0!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53,
  body:not(.projects-v37) #engineering-system .section-frame-v54{
    position:relative!important;
    top:auto!important;
    width:var(--w)!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:20px 18px 22px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    gap:24px!important;
    overflow:visible!important;
    border-radius:30px!important;
  }
  body:not(.projects-v37) #engineering-system .mobile-rail-v54{display:none!important;}
  body:not(.projects-v37) #engineering-system .section-head{
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    z-index:2!important;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow{
    margin:0 0 14px!important;
    font-size:11px!important;
    gap:9px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head .eyebrow span{min-width:44px!important;height:38px!important;border-radius:14px!important;font-size:18px!important;}
  body:not(.projects-v37) #engineering-system .section-head h2{
    font-size:clamp(38px,10.7vw,58px)!important;
    line-height:.98!important;
    letter-spacing:-.065em!important;
    max-width:13.5ch!important;
    margin:0 0 14px!important;
  }
  body:not(.projects-v37) #engineering-system .section-head p:not(.eyebrow){
    display:block!important;
    font-size:15.5px!important;
    line-height:1.55!important;
    color:#c0cde0!important;
    margin:0!important;
    max-width:100%!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    padding:0!important;
    margin:0!important;
    position:relative!important;
    z-index:2!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53:before{display:none!important;}
  body:not(.projects-v37) #engineering-system .system-grid-v53 article{
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    padding:72px 20px 22px!important;
    margin:0!important;
    display:block!important;
    overflow:hidden!important;
    border-radius:26px!important;
    border:1px solid rgba(82,242,255,.24)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.04)),radial-gradient(circle at 18% 0%,rgba(82,242,255,.14),transparent 42%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 60px rgba(0,0,0,.25)!important;
    opacity:0!important;
    transform:translateY(22px) scale(.985)!important;
    transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1),border-color .45s ease!important;
    filter:none!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-visible,
  body:not(.projects-v37) #engineering-system .system-grid-v53 article.system-active{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article:before{
    content:attr(data-step)!important;
    position:absolute!important;
    top:18px!important;
    left:18px!important;
    width:48px!important;
    height:48px!important;
    border-radius:17px!important;
    display:grid!important;
    place-items:center!important;
    font-size:14px!important;
    font-weight:950!important;
    color:#07131f!important;
    background:linear-gradient(135deg,#52f2ff,#d7b46a)!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article b{
    display:block!important;
    color:#fff!important;
    font-size:clamp(30px,9vw,44px)!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    margin:0 0 12px!important;
  }
  body:not(.projects-v37) #engineering-system .system-grid-v53 article p{
    font-size:15.5px!important;
    line-height:1.55!important;
    color:#d2deee!important;
    margin:0!important;
  }

  body:not(.projects-v37) #work-with-me.work-with-me-v53,
  body:not(.projects-v37) #work-with-me.section-stop-v54{
    height:auto!important;
    min-height:0!important;
    padding:calc(var(--header) + 14px) 0 36px!important;
    margin:0!important;
    overflow:visible!important;
  }
  body:not(.projects-v37) #work-with-me .work-frame-v53,
  body:not(.projects-v37) #work-with-me .section-frame-v54{
    position:relative!important;
    top:auto!important;
    width:var(--w)!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:20px 18px 22px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    overflow:visible!important;
    border-radius:30px!important;
  }
  body:not(.projects-v37) #work-with-me .mobile-rail-v54{display:none!important;}
  body:not(.projects-v37) #work-with-me .work-copy-v53 h2{
    font-size:clamp(36px,10.5vw,54px)!important;
    line-height:.98!important;
    letter-spacing:-.065em!important;
    max-width:14ch!important;
    margin:0 0 14px!important;
  }
  body:not(.projects-v37) #work-with-me .work-copy-v53>p{font-size:15.5px!important;line-height:1.55!important;margin:0 0 16px!important;color:#c3d0e2!important;}
  body:not(.projects-v37) #work-with-me .offer-card-v53,
  body:not(.projects-v37) #work-with-me .work-panel-v53{
    padding:20px!important;
    border-radius:24px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.04))!important;
    border:1px solid rgba(139,168,214,.18)!important;
    box-shadow:0 18px 60px rgba(0,0,0,.22)!important;
  }
  body:not(.projects-v37) #work-with-me .work-panel-v53 h3{font-size:26px!important;line-height:1.08!important;margin:0 0 14px!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53 ul{display:grid!important;gap:10px!important;margin:0 0 18px!important;padding:0!important;list-style:none!important;}
  body:not(.projects-v37) #work-with-me .work-panel-v53 li{padding:12px 14px!important;border-radius:16px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.10)!important;}
  body:not(.projects-v37) #work-with-me .work-actions-v53{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  body:not(.projects-v37) #work-with-me .work-actions-v53 .btn{min-height:48px!important;width:100%!important;}
}

/* === V75 PATCH — Home Section 05 mobile code window slightly shorter === */
@media (max-width: 920px) {
  body:not(.projects-v37) #proof .project-sticky {
    gap: 10px !important;
  }
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(0, 1.08fr) minmax(205px, .72fr) !important;
    gap: 8px !important;
    min-height: 0 !important;
    height: 100% !important;
  }
  body:not(.projects-v37) #proof .project-feature {
    min-height: 0 !important;
    overflow: visible !important;
  }
  body:not(.projects-v37) #proof .project-code {
    min-height: 205px !important;
    height: 32svh !important;
    max-height: 32svh !important;
    display: grid !important;
    grid-template-rows: 40px minmax(0, 1fr) !important;
  }
  body:not(.projects-v37) #proof .project-code pre {
    min-height: 0 !important;
    overflow: auto !important;
    padding: 14px 15px !important;
  }
}
@media (max-width: 430px) {
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-rows: minmax(0, 1.12fr) minmax(188px, .66fr) !important;
  }
  body:not(.projects-v37) #proof .project-code {
    min-height: 188px !important;
    height: 29svh !important;
    max-height: 29svh !important;
  }
  body:not(.projects-v37) #proof .project-code pre {
    font-size: 9.6px !important;
    line-height: 1.45 !important;
    padding: 12px 13px !important;
  }
}

/* === V76 PATCH — Home Section 05 mobile: code window stays above CTA and gives more space to the upper project card === */
@media (max-width: 920px) {
  body:not(.projects-v37) #proof .project-sticky {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    gap: 8px !important;
    overflow: hidden !important;
  }

  body:not(.projects-v37) #proof .project-showcase {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(0, 1fr) clamp(150px, 23svh, 188px) !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 8px !important;
    align-self: stretch !important;
    overflow: hidden !important;
    margin: 0 !important;
  }

  body:not(.projects-v37) #proof .project-feature {
    min-height: 0 !important;
    height: 100% !important;
    max-height: none !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    padding: 14px !important;
  }

  body:not(.projects-v37) #proof .project-feature h3 {
    font-size: 20px !important;
    line-height: 1.08 !important;
    margin-bottom: 7px !important;
  }

  body:not(.projects-v37) #proof .project-feature p {
    font-size: 12.6px !important;
    line-height: 1.38 !important;
    margin-bottom: 8px !important;
  }

  body:not(.projects-v37) #proof .project-feature em {
    font-size: 11.7px !important;
    line-height: 1.32 !important;
  }

  body:not(.projects-v37) #proof .project-code {
    min-height: 0 !important;
    height: 100% !important;
    max-height: none !important;
    align-self: stretch !important;
    display: grid !important;
    grid-template-rows: 38px minmax(0, 1fr) !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 1 !important;
  }

  body:not(.projects-v37) #proof .project-code .window-top {
    height: 38px !important;
    min-height: 38px !important;
  }

  body:not(.projects-v37) #proof .project-code pre {
    min-height: 0 !important;
    height: 100% !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 10px 12px !important;
    font-size: 10.2px !important;
    line-height: 1.42 !important;
  }

  body:not(.projects-v37) #proof .home-project-cta-v43 {
    position: relative !important;
    z-index: 3 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: end !important;
  }

  body:not(.projects-v37) #proof .home-project-cta-v43 .btn {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 39px !important;
    padding: 7px 6px !important;
    font-size: 11.4px !important;
    line-height: 1.12 !important;
    white-space: nowrap !important;
  }

  body:not(.projects-v37) #proof .home-project-cta-v43 span {
    grid-column: 1 / -1 !important;
    max-width: none !important;
    text-align: center !important;
    font-size: 11.3px !important;
    line-height: 1.28 !important;
    margin: 0 !important;
  }
}

@media (max-width: 430px) {
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-rows: minmax(0, 1fr) clamp(132px, 20svh, 162px) !important;
    gap: 7px !important;
  }

  body:not(.projects-v37) #proof .project-feature {
    padding: 12px !important;
  }

  body:not(.projects-v37) #proof .project-feature h3 {
    font-size: 18.4px !important;
    line-height: 1.08 !important;
  }

  body:not(.projects-v37) #proof .project-feature p {
    font-size: 11.8px !important;
    line-height: 1.34 !important;
  }

  body:not(.projects-v37) #proof .project-code {
    grid-template-rows: 36px minmax(0, 1fr) !important;
  }

  body:not(.projects-v37) #proof .project-code .window-top {
    height: 36px !important;
    min-height: 36px !important;
  }

  body:not(.projects-v37) #proof .project-code pre {
    font-size: 9.4px !important;
    line-height: 1.36 !important;
    padding: 9px 10px !important;
  }
}


/* === V77 PATCH — Section 05 upper card must never become an inner scroll area === */
@media (max-width: 920px) {
  body:not(.projects-v37) #proof .project-showcase {
    /* upper card gets the readable area; code window stays compact and above CTA */
    grid-template-rows: minmax(0, 1fr) clamp(128px, 19svh, 156px) !important;
    overflow: hidden !important;
  }
  body:not(.projects-v37) #proof .project-feature {
    overflow: hidden !important;
    overscroll-behavior: auto !important;
    -webkit-overflow-scrolling: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
  }
  body:not(.projects-v37) #proof .project-feature .project-top { flex: 0 0 auto !important; }
  body:not(.projects-v37) #proof .project-feature h3,
  body:not(.projects-v37) #proof .project-feature p,
  body:not(.projects-v37) #proof .project-feature em,
  body:not(.projects-v37) #proof .project-feature .project-metrics {
    flex: 0 0 auto !important;
  }
  body:not(.projects-v37) #proof .project-code {
    min-height: 128px !important;
    height: auto !important;
    max-height: 156px !important;
  }
}
@media (max-width: 430px) {
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-rows: minmax(0, 1fr) clamp(116px, 18svh, 142px) !important;
  }
  body:not(.projects-v37) #proof .project-code {
    min-height: 116px !important;
    max-height: 142px !important;
  }
  body:not(.projects-v37) #proof .project-feature h3 { font-size: 18px !important; }
  body:not(.projects-v37) #proof .project-feature p { font-size: 11.6px !important; line-height: 1.32 !important; }
  body:not(.projects-v37) #proof .project-feature em { font-size: 11.2px !important; line-height: 1.24 !important; }
}

/* === V78 PATCH — calmer Section 06 + separated mobile Section 07/08 === */
@media (max-width: 920px) {
  body:not(.projects-v37) #engineering-system,
  body:not(.projects-v37) #work-with-me {
    height: auto !important;
    min-height: 0 !important;
    padding: calc(var(--header) + 18px) 0 34px !important;
    margin: 0 !important;
    overflow: visible !important;
    position: relative !important;
    clear: both !important;
    z-index: 1 !important;
  }

  body:not(.projects-v37) #engineering-system .tech-stack-frame-v53,
  body:not(.projects-v37) #engineering-system .section-frame-v54,
  body:not(.projects-v37) #work-with-me .work-frame-v53,
  body:not(.projects-v37) #work-with-me .section-frame-v54 {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: var(--w) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    overflow: visible !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 18px !important;
    padding: 20px 16px 22px !important;
    border-radius: 30px !important;
  }

  body:not(.projects-v37) #engineering-system .mobile-rail-v54,
  body:not(.projects-v37) #work-with-me .mobile-rail-v54 {
    display: none !important;
  }

  body:not(.projects-v37) #engineering-system .section-head {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
  }

  body:not(.projects-v37) #engineering-system .section-head h2,
  body:not(.projects-v37) #work-with-me .work-copy-v53 h2 {
    font-size: clamp(31px, 8.9vw, 46px) !important;
    line-height: .98 !important;
    letter-spacing: -.06em !important;
    margin: 0 0 12px !important;
    max-width: 13.8ch !important;
  }

  body:not(.projects-v37) #engineering-system .section-head p,
  body:not(.projects-v37) #work-with-me .work-copy-v53 > p {
    font-size: 14.5px !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    color: #c6d2e3 !important;
  }

  body:not(.projects-v37) #engineering-system .system-grid-v53 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    align-content: start !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body:not(.projects-v37) #engineering-system .system-grid-v53 article {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 138px !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 18px 17px 18px !important;
    border-radius: 24px !important;
    display: block !important;
    margin: 0 !important;
  }

  body:not(.projects-v37) #engineering-system .system-grid-v53 article::before {
    top: 16px !important;
    left: 16px !important;
    width: 38px !important;
    height: 38px !important;
    font-size: 12px !important;
    margin: 0 0 14px !important;
    position: relative !important;
    display: grid !important;
  }

  body:not(.projects-v37) #engineering-system .system-grid-v53 article b {
    font-size: 24px !important;
    line-height: 1.05 !important;
    letter-spacing: -.045em !important;
    margin: 10px 0 9px !important;
    display: block !important;
  }

  body:not(.projects-v37) #engineering-system .system-grid-v53 article p {
    font-size: 13.8px !important;
    line-height: 1.48 !important;
    margin: 0 !important;
  }

  body:not(.projects-v37) #work-with-me {
    padding-top: 18px !important;
    margin-top: 0 !important;
    z-index: 2 !important;
  }

  body:not(.projects-v37) #work-with-me .offer-card-v53,
  body:not(.projects-v37) #work-with-me .work-panel-v53 {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 18px !important;
    border-radius: 24px !important;
    margin: 0 !important;
  }

  body:not(.projects-v37) #work-with-me .work-panel-v53 ul {
    display: grid !important;
    gap: 9px !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
  }

  body:not(.projects-v37) #work-with-me .work-panel-v53 li {
    font-size: 13.2px !important;
    line-height: 1.38 !important;
    padding: 11px 12px !important;
    border-radius: 16px !important;
  }

  body:not(.projects-v37) #work-with-me .work-actions-v53 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body:not(.projects-v37) #work-with-me .work-actions-v53 .btn {
    width: 100% !important;
    min-height: 46px !important;
  }
}

@media (min-width: 921px) {
  body:not(.projects-v37) #skills .skill-matrix.skills-v59-stage {
    transition-duration: .34s !important;
  }
}

/* === V79 PATCH — concise hire headline, calmer skills, balanced mobile Section 05 === */
@media (max-width: 920px) {
  body:not(.projects-v37) #proof .project-sticky {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    gap: 8px !important;
    overflow: hidden !important;
  }

  body:not(.projects-v37) #proof .project-showcase {
    display: grid !important;
    grid-template-columns: 1fr !important;
    /* Give the upper card enough room, but restore a useful code window height. */
    grid-template-rows: minmax(0, .92fr) clamp(168px, 25svh, 214px) !important;
    gap: 8px !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    align-self: stretch !important;
  }

  body:not(.projects-v37) #proof .project-feature {
    overflow: hidden !important;
    min-height: 0 !important;
    height: 100% !important;
    padding: 13px 14px !important;
    justify-content: center !important;
  }

  body:not(.projects-v37) #proof .project-feature h3 {
    font-size: 19px !important;
    line-height: 1.06 !important;
    margin-bottom: 6px !important;
  }

  body:not(.projects-v37) #proof .project-feature p {
    font-size: 12px !important;
    line-height: 1.31 !important;
    margin-bottom: 7px !important;
  }

  body:not(.projects-v37) #proof .project-feature em {
    font-size: 11.4px !important;
    line-height: 1.26 !important;
    margin-top: 6px !important;
  }

  body:not(.projects-v37) #proof .project-metrics { gap: 6px !important; }
  body:not(.projects-v37) #proof .project-metrics strong {
    font-size: 11.3px !important;
    padding: 6px 7px !important;
    border-radius: 13px !important;
  }

  body:not(.projects-v37) #proof .project-code {
    min-height: 168px !important;
    height: 100% !important;
    max-height: 214px !important;
    grid-template-rows: 38px minmax(0, 1fr) !important;
    overflow: hidden !important;
    align-self: stretch !important;
  }

  body:not(.projects-v37) #proof .project-code pre {
    overflow: auto !important;
    min-height: 0 !important;
    height: 100% !important;
    font-size: 10px !important;
    line-height: 1.42 !important;
    padding: 10px 12px !important;
  }
}

@media (max-width: 430px) {
  body:not(.projects-v37) #proof .project-showcase {
    grid-template-rows: minmax(0, .9fr) clamp(152px, 24svh, 188px) !important;
    gap: 7px !important;
  }

  body:not(.projects-v37) #proof .project-feature {
    padding: 11px 12px !important;
  }

  body:not(.projects-v37) #proof .project-feature h3 { font-size: 17.4px !important; }
  body:not(.projects-v37) #proof .project-feature p { font-size: 11.25px !important; line-height: 1.28 !important; }
  body:not(.projects-v37) #proof .project-feature em { font-size: 10.9px !important; line-height: 1.22 !important; }

  body:not(.projects-v37) #proof .project-code {
    min-height: 152px !important;
    max-height: 188px !important;
    grid-template-rows: 36px minmax(0, 1fr) !important;
  }

  body:not(.projects-v37) #proof .project-code pre {
    font-size: 9.2px !important;
    line-height: 1.36 !important;
    padding: 9px 10px !important;
  }
}


/* v83 SEO / Article system */
.article-shell{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:120px 0 88px;color:#eef6ff;}
.article-hero{border:1px solid rgba(150,170,205,.16);border-radius:42px;padding:clamp(28px,5vw,62px);background:linear-gradient(135deg,rgba(12,18,34,.92),rgba(5,8,17,.78));box-shadow:0 30px 120px rgba(0,0,0,.28);position:relative;overflow:hidden;margin-bottom:28px;}
.article-hero:before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 20% 20%,rgba(82,242,255,.16),transparent 34%),radial-gradient(circle at 80% 30%,rgba(139,92,246,.14),transparent 35%);pointer-events:none;}
.article-hero>*{position:relative;z-index:1}.article-hero h1{font-size:clamp(44px,7vw,86px);line-height:.95;letter-spacing:-.065em;margin:16px 0 18px}.article-lead{font-size:clamp(18px,2vw,23px);line-height:1.55;color:#c3d0e4;max-width:850px}.article-grid{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.article-card,.article-toc,.article-list-card{border:1px solid rgba(150,170,205,.16);border-radius:30px;background:rgba(9,14,28,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}.article-card{padding:clamp(24px,4vw,44px)}.article-card h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;line-height:1;margin:34px 0 14px}.article-card h3{font-size:24px;margin:26px 0 10px}.article-card p,.article-card li{color:#c7d2e5;line-height:1.75;font-size:17px}.article-card strong{color:#fff}.article-card code{color:#8ef7ff;background:rgba(82,242,255,.08);border:1px solid rgba(82,242,255,.16);border-radius:8px;padding:2px 6px}.article-toc{padding:22px;position:sticky;top:104px}.article-toc b{display:block;margin-bottom:12px}.article-toc a{display:block;color:#cfe4ff;text-decoration:none;padding:10px 0;border-top:1px solid rgba(150,170,205,.12);font-weight:800}.article-toc a:hover{color:#52f2ff}.article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.article-meta span{border:1px solid rgba(82,242,255,.2);background:rgba(82,242,255,.07);border-radius:999px;padding:9px 12px;color:#dffcff;font-weight:900;font-size:13px}.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}.article-list-card{padding:24px;text-decoration:none;color:#eef6ff;transition:.25s ease;min-height:250px}.article-list-card:hover{transform:translateY(-4px);border-color:rgba(82,242,255,.42);box-shadow:0 24px 80px rgba(0,0,0,.24)}.article-list-card h2{font-size:clamp(24px,3vw,36px);letter-spacing:-.04em;line-height:1.05;margin:14px 0}.article-list-card p{color:#c2cede;line-height:1.6}.article-cta{margin-top:28px;border:1px solid rgba(82,242,255,.18);border-radius:30px;padding:28px;background:linear-gradient(135deg,rgba(82,242,255,.08),rgba(139,92,246,.08));}.article-cta h2{margin-top:0}.article-note{color:#98a8bd;font-size:14px;line-height:1.6;margin-top:16px}.article-breadcrumbs{display:flex;gap:10px;flex-wrap:wrap}.article-breadcrumbs a,.article-breadcrumbs span{color:#aebbd0;text-decoration:none;font-weight:800;font-size:13px}.article-breadcrumbs a:hover{color:#52f2ff}
@media (max-width: 860px){.article-shell{width:min(100% - 22px,720px);padding:92px 0 56px}.article-hero{border-radius:30px;padding:28px 22px}.article-hero h1{font-size:clamp(38px,12vw,58px)}.article-grid{grid-template-columns:1fr}.article-toc{position:relative;top:auto;order:-1}.article-list{grid-template-columns:1fr}.article-card{padding:22px}.article-card h2{font-size:34px}.article-card p,.article-card li{font-size:16px}.topbar .nav a[href="articles.html"]{display:inline-flex}}


/* v84 SEO article polish */
.article-content{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:28px;align-items:start;margin-top:30px}.article-toc{position:sticky;top:96px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:22px;padding:18px;color:rgba(255,255,255,.78)}.article-toc strong{display:block;color:#fff;margin-bottom:10px}.article-toc ol{padding-left:18px;margin:0;display:grid;gap:8px}.article-toc a{color:rgba(255,255,255,.76);text-decoration:none}.article-body{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:28px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.article-body h2{margin:28px 0 10px;font-size:clamp(1.3rem,2vw,2rem)}.article-body h2:first-child{margin-top:0}.article-body p{color:rgba(255,255,255,.76);line-height:1.78;font-size:1.02rem}.article-body a{color:#f2c66d}.faq-block{display:grid;gap:12px;margin-top:14px}.faq-block details{border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px 16px;background:rgba(0,0,0,.18)}.faq-block summary{cursor:pointer;color:#fff;font-weight:700}.article-list{grid-template-columns:repeat(2,minmax(0,1fr))}.article-list-card{min-height:260px}@media(max-width:820px){.article-content{grid-template-columns:1fr}.article-toc{position:relative;top:auto}.article-body{padding:20px;border-radius:22px}.article-list{grid-template-columns:1fr}.article-list-card{min-height:auto}.article-body p{font-size:.98rem}}


/* v85 SEO article + social preview polish */
.article-kicker{margin:0 0 18px;color:rgba(220,234,255,.82);font-size:.95rem;line-height:1.65}
.article-body ul{padding-left:1.2rem;color:rgba(225,235,250,.9);line-height:1.8}
.article-code{border:1px solid rgba(94,230,255,.25);background:rgba(5,8,18,.72);border-radius:22px;padding:22px;overflow:auto;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);font-size:.92rem;line-height:1.65;color:#dcecff;margin:22px 0 30px}
.article-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.article-list-card{min-height:245px;display:flex;flex-direction:column;justify-content:space-between}
@media (max-width: 760px){.article-list{grid-template-columns:1fr}.article-list-card{min-height:auto}.article-code{font-size:.82rem;padding:16px;border-radius:18px}}


/* v86 multilingual foundation */
.language-switcher{display:flex;align-items:center;gap:6px;margin-left:8px;padding-left:8px;border-left:1px solid rgba(255,255,255,.10);direction:ltr;white-space:nowrap}
.language-switcher a{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:34px;height:30px;padding:0 8px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:rgba(238,246,255,.82);font-size:12px;font-weight:800;letter-spacing:.02em;text-decoration:none;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}
.language-switcher a:hover,.language-switcher a:focus-visible{transform:translateY(-1px);background:rgba(82,242,255,.14);border-color:rgba(82,242,255,.42);color:#fff;outline:none}
.language-switcher a.is-active{background:linear-gradient(135deg,rgba(82,242,255,.20),rgba(139,92,246,.18));border-color:rgba(82,242,255,.55);color:#fff;box-shadow:0 0 18px rgba(82,242,255,.12)}
html[dir="rtl"] body{direction:rtl;text-align:right}
html[dir="rtl"] .topbar,html[dir="rtl"] .nav,html[dir="rtl"] .brand,html[dir="rtl"] .hero-shell,html[dir="rtl"] .system-sticky,html[dir="rtl"] .cap-grid,html[dir="rtl"] .projects-grid,html[dir="rtl"] .case-grid,html[dir="rtl"] .article-grid{direction:rtl}
html[dir="rtl"] .code-stage,html[dir="rtl"] .code-window,html[dir="rtl"] pre,html[dir="rtl"] code,html[dir="rtl"] .window,html[dir="rtl"] .terminal-line{direction:ltr;text-align:left}
html[dir="rtl"] .language-switcher{margin-left:0;margin-right:8px;padding-left:0;padding-right:8px;border-left:0;border-right:1px solid rgba(255,255,255,.10)}
html[dir="rtl"] .social-strip,html[dir="rtl"] .hero-actions{justify-content:flex-end}
@media (max-width: 860px){.language-switcher{width:100%;justify-content:center;margin:8px 0 0;padding:10px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.10)}.language-switcher a{height:34px;min-width:42px}.nav.is-open .language-switcher{display:flex}}


/* v87 multilingual phase 2: Persian + Arabic RTL polish */
html[dir="rtl"] body{direction:rtl;text-align:right;}
html[dir="rtl"] .code-window, html[dir="rtl"] pre, html[dir="rtl"] code, html[dir="rtl"] .code-line, html[dir="rtl"] .terminal, html[dir="rtl"] .editor-window{direction:ltr;text-align:left;}
html[dir="rtl"] .nav-links, html[dir="rtl"] .lang-switcher, html[dir="rtl"] .cta-row, html[dir="rtl"] .social-row, html[dir="rtl"] .metric-row, html[dir="rtl"] .article-grid, html[dir="rtl"] .project-grid{direction:rtl;}
html[dir="rtl"] .hero-grid, html[dir="rtl"] .section-grid, html[dir="rtl"] .split-grid, html[dir="rtl"] .hire-grid{direction:rtl;}
html[dir="rtl"] .brand-card, html[dir="rtl"] .section-panel, html[dir="rtl"] .article-card, html[dir="rtl"] .case-card, html[dir="rtl"] .project-card{letter-spacing:0;}
html[dir="rtl"] h1, html[dir="rtl"] h2, html[dir="rtl"] h3, html[dir="rtl"] p, html[dir="rtl"] li{letter-spacing:0;}
html[dir="rtl"] .eyebrow, html[dir="rtl"] .section-kicker{letter-spacing:.06em;}
html[dir="rtl"] .timeline, html[dir="rtl"] .progress-rail{direction:ltr;}
@media(max-width:760px){html[dir="rtl"] .hero-copy,html[dir="rtl"] .section-copy,html[dir="rtl"] .hire-copy{text-align:right;} html[dir="rtl"] .cta-row{justify-content:flex-start;}}


/* v88 multilingual phase 3: German + French editorial polish */
.lang-de h1,.lang-de h2,.lang-fr h1,.lang-fr h2{letter-spacing:-.055em;}
.lang-de .lead,.lang-fr .lead{max-width:72ch;}
.lang-de .language-switcher,.lang-fr .language-switcher{white-space:nowrap;}
.lang-de .article-card p,.lang-fr .article-card p{line-height:1.55;}
@media(max-width:760px){.lang-de h1,.lang-fr h1{font-size:clamp(2.75rem,13vw,5.6rem);line-height:.88}.lang-de .lead,.lang-fr .lead{font-size:1rem;line-height:1.55}}


/* v90 Translation QA: multilingual overflow guard */
html, body { max-width: 100%; overflow-x: clip; }
:where(.lang-fa,.lang-ar,.lang-de,.lang-fr) :where(h1,h2,h3,p,li,a,span,small,strong,em,button,.btn,.chip,.skill-pill,.proof-card,.case-card,.article-card,.system-card,.hire-card,.contact-card) {
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}
:where(.lang-fa,.lang-ar) :where(h1,h2,h3,p,li,.lead,.article-lead,.case-study-panel-v45,.case-star-depth-v53) {
  line-height: 1.78;
  letter-spacing: -0.015em;
}
:where(.lang-de,.lang-fr) :where(h1,h2,h3,.lead,.article-lead,.case-study-panel-v45,.article-card h2) {
  line-height: 1.18;
  letter-spacing: -0.025em;
}
:where(.case-study-grid-v45,.articles-grid,.projects-grid,.skills-stage,.system-grid,.hire-grid,.contact-grid) { min-width: 0; }
:where(.case-study-panel-v45,.case-star-depth-v53,.article-shell,.article-card,.case-card,.project-card,.skill-stage-card,.system-card,.hire-panel) { min-width: 0; max-width: 100%; }
:where(pre, code, .case-code-window-v45, .case-code-block-v48) { direction: ltr; text-align: left; unicode-bidi: embed; overflow-x: auto; }
@media (max-width: 760px) {
  :where(.lang-de,.lang-fr) h1 { font-size: clamp(2.05rem, 10vw, 3.45rem); }
  :where(.lang-fa,.lang-ar) h1 { font-size: clamp(2rem, 9.5vw, 3.25rem); }
  :where(.article-shell,.case-study-panel-v45,.case-star-depth-v53,.project-card,.article-card,.hire-panel,.system-card) { padding-left: clamp(16px,4vw,22px); padding-right: clamp(16px,4vw,22px); }
  .language-switcher { flex-wrap: wrap; max-width: 100%; }
}


/* v91 multilingual article and human QA guards */
.article-list-card h2, .article-list-card p, .article-body h1, .article-body h2, .article-body p, .article-lead, .article-hero h1 {
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}
.article-shell { max-width: min(1120px, calc(100vw - 32px)); }
.article-list { align-items: stretch; }
.article-list-card { min-width: 0; }
html[dir="rtl"] .article-body, html[dir="rtl"] .article-hero, html[dir="rtl"] .article-list-card { text-align: right; }
html[dir="rtl"] .article-code, html[dir="rtl"] pre, html[dir="rtl"] code { direction: ltr; text-align: left; unicode-bidi: isolate; }
@media (max-width: 720px) {
  .article-shell { max-width: calc(100vw - 24px); padding-inline: 12px; }
  .article-hero h1 { font-size: clamp(2rem, 10vw, 3.2rem); line-height: .95; }
  .article-list-card { padding: 18px; }
  .article-list-card h2 { font-size: 1.08rem; line-height: 1.18; }
  .article-meta { gap: 8px; flex-wrap: wrap; }
}


/* === V92 multilingual translation and layout safety layer === */
@font-face{
  font-family:'YekanBakhFaNum';
  src:url('/assets/fonts/Yekan-Bakh-FaNum-Regular.woff') format('woff');
  font-weight:400;font-style:normal;font-display:swap;
}
html[lang="fa"],html[lang="ar"]{font-family:'YekanBakhFaNum',Tahoma,Arial,sans-serif;}
html[lang="fa"] body,html[lang="ar"] body,
html[lang="fa"] button,html[lang="ar"] button,
html[lang="fa"] input,html[lang="ar"] input,
html[lang="fa"] textarea,html[lang="ar"] textarea{font-family:'YekanBakhFaNum',Tahoma,Arial,sans-serif;}
html[dir="rtl"] .window pre,html[dir="rtl"] pre,html[dir="rtl"] code,
html[dir="rtl"] .project-terminal-v37,html[dir="rtl"] .code-window,
html[dir="rtl"] .case-code,html[dir="rtl"] .terminal{direction:ltr;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;}
html[dir="rtl"] .nav,html[dir="rtl"] .nav-links,html[dir="rtl"] .language-switcher{direction:rtl;}
html[lang="de"] *,html[lang="fr"] *,html[lang="fa"] *,html[lang="ar"] *{overflow-wrap:anywhere;}
html[lang="de"] h1,html[lang="de"] h2,html[lang="de"] h3,
html[lang="fr"] h1,html[lang="fr"] h2,html[lang="fr"] h3,
html[lang="fa"] h1,html[lang="fa"] h2,html[lang="fa"] h3,
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3{hyphens:auto;text-wrap:balance;}
body.projects-v37 .project-card-v37,
body.projects-v37 .project-card-v37 p,
body.projects-v37 .project-card-v37 h3,
body.projects-v37 .project-chip-v37,
.case-study-card,.article-card,.case-main,.article-body{overflow-wrap:anywhere;word-break:normal;}
@media (min-width:861px){
  body.projects-v37 .project-card-track-v37{overflow-y:auto!important;overflow-x:hidden!important;align-content:start!important;grid-auto-rows:auto!important;}
  body.projects-v37 .project-card-v37{min-height:auto!important;height:auto!important;max-height:none!important;}
}
@media (max-width:860px){
  body.projects-v37 .project-stage-v37{height:auto!important;min-height:100svh!important;margin-bottom:34px!important;}
  body.projects-v37 .project-sticky-v37{position:relative!important;top:auto!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:16px!important;}
  body.projects-v37 .project-content-v37{height:auto!important;display:block!important;overflow:visible!important;}
  body.projects-v37 .project-card-track-v37{height:auto!important;max-height:none!important;overflow:visible!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important;padding:12px 0 22px!important;}
  body.projects-v37 .project-card-v37{height:auto!important;min-height:auto!important;padding:18px!important;overflow:visible!important;}
  .case-main,.article-body{max-width:100%!important;overflow:visible!important;}
}

/* v93 project/case-study card content QA guard */
.project-card-v37 p, .case-study-list-card-v45 p {
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.62;
}
html[dir="rtl"] .project-card-v37 p, html[dir="rtl"] .case-study-list-card-v45 p {
  text-align:right;
  line-height:1.75;
}
@media (max-width: 760px){
  .project-card-v37, .case-study-list-card-v45{
    min-height:auto !important;
    height:auto !important;
  }
  .project-card-v37 p, .case-study-list-card-v45 p{
    max-height:none !important;
    overflow:visible !important;
  }
}


/* v94 translation/layout hardening */
@font-face{font-family:'YekanBakhFaNum';src:url('assets/fonts/Yekan-Bakh-FaNum-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap;}
html[lang="fa"], html[lang="fa"] body, body.lang-fa{font-family:'YekanBakhFaNum', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;}
html[lang="ar"], html[lang="ar"] body, body.lang-ar{font-family:'YekanBakhFaNum', 'Noto Sans Arabic', Tahoma, ui-sans-serif, system-ui, sans-serif;}
html[lang="fa"] .code, html[lang="ar"] .code,
html[lang="fa"] pre, html[lang="ar"] pre,
html[lang="fa"] code, html[lang="ar"] code{direction:ltr;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;}
.lang-fa *, .lang-ar *, .lang-de *, .lang-fr *{overflow-wrap:anywhere;word-break:normal;hyphens:auto;}
.lang-fa .btn,.lang-ar .btn,.lang-de .btn,.lang-fr .btn{white-space:normal;line-height:1.35;}
.localized-copy-guard .case-study-panel-v45,
.localized-copy-guard .case-star-depth-v53,
.localized-copy-guard .project-card,
.localized-copy-guard .case-card,
.localized-copy-guard .article-card{min-width:0;max-width:100%;}
.localized-copy-guard .case-study-panel-v45 p,
.localized-copy-guard .case-star-depth-v53 p,
.localized-copy-guard .case-study-panel-v45 li,
.localized-copy-guard .case-star-depth-v53 li{line-height:1.75;}
.lang-de .case-study-panel-v45 h1,.lang-de .case-study-panel-v45 h2,
.lang-fr .case-study-panel-v45 h1,.lang-fr .case-study-panel-v45 h2{hyphens:auto;}
@media(max-width:760px){
  .lang-fa .hero-copy .lead,.lang-ar .hero-copy .lead,.lang-de .hero-copy .lead,.lang-fr .hero-copy .lead{font-size:clamp(.93rem,3.7vw,1.05rem);line-height:1.72;}
  .lang-fa .section-head h2,.lang-ar .section-head h2,.lang-de .section-head h2,.lang-fr .section-head h2{font-size:clamp(1.42rem,6vw,2.05rem);line-height:1.18;}
  .localized-copy-guard .case-study-grid-v45{gap:18px;}
  .localized-copy-guard .case-study-panel-v45,.localized-copy-guard .case-star-depth-v53{padding:18px;}
}


/* v95 language switcher polish */
.language-switcher a{
  min-width: 34px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}
.language-switcher a::first-letter{font-size:18px;}
[dir=rtl] .language-switcher{direction:ltr;}


/* v96 localization safety: home/projects only */
.localized-copy-guard .project-card-v37 p,
.localized-copy-guard .project-card-v37 h3,
.localized-copy-guard .lead,
.localized-copy-guard .cap-card p,
.localized-copy-guard .skill-group p,
.localized-copy-guard .system-copy p,
.localized-copy-guard .work-card p{overflow-wrap:anywhere;word-break:normal;hyphens:auto;}
html[lang="fa"] .code, html[lang="ar"] .code, html[lang="fa"] pre, html[lang="ar"] pre{direction:ltr;text-align:left;font-family:var(--mono);}
html[lang="fa"] .project-card-v37, html[lang="ar"] .project-card-v37{line-height:1.75;}
@media (max-width:920px){
  .localized-copy-guard .project-card-v37{min-height:auto;padding:18px;}
  .localized-copy-guard .project-card-track-v37{gap:14px;}
  .localized-copy-guard .hero-copy h1{font-size:clamp(2rem,10vw,3.2rem);}
}


/* v97 translation QA: case-study copy containment */
html[lang="fa"], html[lang="ar"]{font-family:"Yekan Bakh FaNum",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.case-study-panel-v45,.case-star-depth-v53,.case-study-hero-v45,.case-study-employer-v46,.case-card-v45,.article-card,.project-card{overflow-wrap:anywhere;word-break:normal;hyphens:auto;}
html[dir="rtl"] .case-code-window-v45, html[dir="rtl"] pre, html[dir="rtl"] code{direction:ltr;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;}
html[dir="rtl"] .case-study-panel-v45 li, html[dir="rtl"] .case-star-depth-v53 li{padding-inline-start:.2rem;}
@media(max-width:760px){.case-study-grid-v45{gap:1rem}.case-study-panel-v45,.case-star-depth-v53{padding:clamp(1rem,4vw,1.35rem)}.case-study-panel-v45 h2,.case-star-depth-v53 h2{font-size:clamp(1.05rem,5vw,1.35rem)}.case-study-panel-v45 p,.case-study-panel-v45 li,.case-star-depth-v53 p,.case-star-depth-v53 li{font-size:.94rem;line-height:1.75}}


/* v98 article localization guard */
.article-human-v98 .article-body p, .article-human-v98 .article-body li, .article-human-v98 h1, .article-human-v98 h2, .article-human-v98 h3 { overflow-wrap:anywhere; word-break:normal; hyphens:auto; }
html[dir="rtl"] .article-human-v98 .article-body, html[dir="rtl"] .article-human-v98 .article-hero { text-align:right; }
html[dir="rtl"] .article-human-v98 .article-toc ol { padding-right:1.1rem; padding-left:0; }
.article-human-v98 .article-content { align-items:start; }
@media (max-width: 760px){ .article-human-v98 .article-lead{font-size:1rem;line-height:1.75;} .article-human-v98 .article-content{display:block;} .article-human-v98 .article-toc{margin-bottom:1rem;} }


/* v99 final multilingual QA layout guards */
html[lang="fa"], html[lang="ar"]{font-feature-settings:"kern" 1;}
html[lang="fa"] body, html[lang="ar"] body{font-family:"Yekan Bakh FaNum", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}
html[lang="fa"] .code-window, html[lang="ar"] .code-window, html[lang="fa"] code, html[lang="ar"] code, html[lang="fa"] pre, html[lang="ar"] pre{direction:ltr;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;}
.project-card,.case-card,.article-card,.system-card,.work-card,.skill-stage-card{overflow-wrap:anywhere;word-break:normal;}
html[lang="de"] .project-card, html[lang="de"] .case-card, html[lang="de"] .article-card, html[lang="fr"] .project-card, html[lang="fr"] .case-card, html[lang="fr"] .article-card{hyphens:auto;}
@media (max-width: 760px){.project-card,.case-card,.article-card{max-width:100%;}.project-title,.case-title,.article-title{line-height:1.18}.project-card p,.case-card p,.article-card p{line-height:1.55}.hero-title,.section-title{overflow-wrap:break-word}}

/* === V100 — Home Section 03 mobile frictionless capability scroll + slower hero counters === */
@media (max-width: 920px) {
  body:not(.projects-v37) #capabilities.capability-section {
    height: 640svh !important;
    min-height: 640svh !important;
    overflow: visible !important;
  }

  body:not(.projects-v37) #capabilities .cap-sticky {
    height: calc(100svh - 14px) !important;
    min-height: calc(100svh - 14px) !important;
    max-height: calc(100svh - 14px) !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    align-content: stretch !important;
    gap: 12px !important;
    overflow: hidden !important;
  }

  body:not(.projects-v37) #capabilities .cap-head {
    max-height: 28svh !important;
    overflow: visible !important;
  }

  body:not(.projects-v37) #capabilities #capGrid,
  body:not(.projects-v37) #capabilities .cap-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important; /* page scroll controls the internal reveal; no native mobile scroll trap */
    overflow-y: hidden !important;
    overflow-x: hidden !important;
    overscroll-behavior: auto !important;
    -webkit-overflow-scrolling: auto !important;
    scroll-behavior: auto !important;
    touch-action: pan-y !important;
    padding: 2px 4px 28px 0 !important;
    scrollbar-width: none !important;
    will-change: scroll-position;
  }

  body:not(.projects-v37) #capabilities #capGrid::-webkit-scrollbar,
  body:not(.projects-v37) #capabilities .cap-grid::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }

  body:not(.projects-v37) #capabilities .cap-card {
    flex: 0 0 auto !important;
    min-height: 214px !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 17px 16px 18px !important;
    border-radius: 23px !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateY(14px) scale(.99);
    transition: opacity .38s ease, transform .38s ease, border-color .38s ease, box-shadow .38s ease !important;
  }

  body:not(.projects-v37) #capabilities .cap-card p {
    font-size: 13.8px !important;
    line-height: 1.52 !important;
    margin: 0 0 12px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card h3 {
    font-size: 19px !important;
    line-height: 1.16 !important;
    margin-bottom: 7px !important;
  }

  body:not(.projects-v37) #capabilities .cap-card strong {
    font-size: 15.7px !important;
    line-height: 1.28 !important;
    margin-top: auto !important;
  }
}

@media (max-width: 430px) {
  body:not(.projects-v37) #capabilities.capability-section {
    height: 660svh !important;
    min-height: 660svh !important;
  }
  body:not(.projects-v37) #capabilities .cap-sticky {
    gap: 10px !important;
  }
  body:not(.projects-v37) #capabilities .cap-head {
    max-height: 27svh !important;
  }
  body:not(.projects-v37) #capabilities .cap-card {
    min-height: 232px !important;
    padding: 16px 15px 17px !important;
  }
  body:not(.projects-v37) #capabilities .cap-card p {
    font-size: 13.2px !important;
    line-height: 1.48 !important;
  }
}


/* v101 restore pre-multilingual Projects page template + simplified nav */
body.projects-v37 .project-stage-v37:not(.project-hero-v37){
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  contain:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37{
  position:relative !important;
  top:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  contain:none !important;
  align-items:stretch !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37::before,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37::after{
  pointer-events:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-content-v37{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  display:grid !important;
  grid-template-rows:auto auto !important;
  gap:26px !important;
  contain:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .section-head-v37{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-track-v37{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  contain:none !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  align-content:start !important;
  padding:0 !important;
  margin:0 !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37{
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  visibility:visible !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding:24px !important;
  align-self:stretch !important;
}
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 h3,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 p,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 b,
body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-chip-v37{
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  white-space:normal !important;
  text-overflow:clip !important;
  overflow-wrap:break-word !important;
}
@media (max-width:860px){
  body.projects-v37 .project-hero-v37{height:620svh !important;min-height:620svh !important;}
  body.projects-v37 .project-hero-sticky-v37{position:sticky !important;top:118px !important;height:calc(100svh - 138px) !important;min-height:0 !important;max-height:calc(100svh - 138px) !important;overflow:hidden !important;}
  body.projects-v37 .project-hero-sticky-v37 > .project-terminal-v37{position:absolute !important;inset:14px !important;min-height:0 !important;height:auto !important;max-height:none !important;}
  body.projects-v37 .project-hero-sticky-v37 > div:first-child{position:absolute !important;inset:14px !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37){height:auto !important;min-height:0 !important;margin:32px 0 52px !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-sticky-v37{position:relative !important;top:auto !important;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;display:grid !important;grid-template-columns:1fr !important;grid-template-rows:auto auto !important;gap:16px !important;padding:18px !important;border-radius:30px !important;contain:none !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-index-v37{height:auto !important;min-height:64px !important;flex-direction:row !important;align-items:center !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-content-v37{display:grid !important;grid-template-rows:auto auto !important;gap:16px !important;overflow:visible !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .section-head-v37 p{display:block !important;-webkit-line-clamp:unset !important;-webkit-box-orient:initial !important;overflow:visible !important;font-size:15px !important;line-height:1.46 !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-track-v37{height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;display:grid !important;grid-template-columns:1fr !important;gap:12px !important;padding:0 !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37{min-height:0 !important;height:auto !important;max-height:none !important;padding:17px !important;border-radius:22px !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 h3{font-size:22px !important;line-height:1.1 !important;}
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 p,
  body.projects-v37 .project-stage-v37:not(.project-hero-v37) .project-card-v37 b{font-size:14.3px !important;line-height:1.48 !important;}
}
.topbar .nav{gap:10px;}
.topbar .nav > a{white-space:nowrap;}
@media (max-width:860px){.topbar .nav > a{font-size:13px}.language-switcher{gap:5px}}

/* v103 — forced Persian/Arabic typography
   FA/AR pages must use the supplied Yekan Bakh FaNum font everywhere except code/UI-code blocks. */
@font-face{
  font-family:'A2YekanBakhFaNum';
  src:url('/assets/fonts/Yekan-Bakh-FaNum-Regular.woff') format('woff');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
html[lang="fa"],
html[lang="ar"],
html[lang="fa"] body,
html[lang="ar"] body,
html[lang="fa"] body *:not(code):not(pre):not(kbd):not(samp):not(.code-window):not(.case-code):not(.terminal):not(.code-line):not(.case-code-window-v45):not(.mono),
html[lang="ar"] body *:not(code):not(pre):not(kbd):not(samp):not(.code-window):not(.case-code):not(.terminal):not(.code-line):not(.case-code-window-v45):not(.mono){
  font-family:'A2YekanBakhFaNum', Tahoma, Arial, sans-serif !important;
}
html[lang="fa"] .code-window,
html[lang="ar"] .code-window,
html[lang="fa"] .case-code,
html[lang="ar"] .case-code,
html[lang="fa"] .terminal,
html[lang="ar"] .terminal,
html[lang="fa"] pre,
html[lang="ar"] pre,
html[lang="fa"] code,
html[lang="ar"] code,
html[lang="fa"] kbd,
html[lang="ar"] kbd,
html[lang="fa"] samp,
html[lang="ar"] samp{
  direction:ltr !important;
  text-align:left !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono',monospace !important;
}
html[lang="fa"] body,
html[lang="ar"] body{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"kern" 1;
}


/* v104 Persian completion: force readable Persian layout and prevent translated copy overflow */
html[lang="fa"] body,
html[lang="fa"] body *:not(code):not(pre):not(kbd):not(samp):not(.code-window):not(.code-window *) {
  font-family: "YekanBakhFaNum", "Yekan Bakh", Tahoma, Arial, sans-serif !important;
  letter-spacing: 0 !important;
}
html[lang="fa"] .code-window,
html[lang="fa"] .code-window *,
html[lang="fa"] pre,
html[lang="fa"] code {
  direction: ltr !important;
  text-align: left !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
}
html[lang="fa"] .project-card,
html[lang="fa"] .case-card,
html[lang="fa"] .capability-card,
html[lang="fa"] .skill-card,
html[lang="fa"] .article-card,
html[lang="fa"] .work-card,
html[lang="fa"] .engineering-card,
html[lang="fa"] .case-study-card {
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}
html[lang="fa"] .project-card p,
html[lang="fa"] .case-card p,
html[lang="fa"] .article-card p,
html[lang="fa"] .skill-card p {
  line-height: 1.9;
}
html[lang="fa"] .lang-switch a { font-size: 1.15rem; }


/* V105 phase 1: readable code-like panels and scroll-start prompt */
.code-has-prompt{position:relative;overflow:hidden;}
.code-has-prompt pre{transition:opacity .42s ease, filter .42s ease, transform .42s ease;}
.code-has-prompt.code-not-started pre{opacity:0;filter:blur(8px);transform:translateY(8px);}
.code-has-prompt.code-started pre{opacity:1;filter:blur(0);transform:none;}
.code-start-prompt{position:absolute;inset:38px 18px 18px;display:flex;align-items:flex-start;gap:3px;padding:22px;border-radius:20px;background:linear-gradient(135deg,rgba(6,10,22,.88),rgba(18,23,40,.72));border:1px solid rgba(244,197,107,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 18px 40px rgba(0,0,0,.28);color:#f4c56b;font:700 clamp(14px,1.7vw,20px)/1.7 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;z-index:5;pointer-events:none;transition:opacity .34s ease,transform .34s ease,visibility .34s ease;direction:inherit;text-align:start;}
html[dir="rtl"] .code-start-prompt{font-family:'Yekan Bakh FaNum',ui-sans-serif,system-ui,sans-serif;line-height:1.95;}
.code-start-prompt::before{content:'>';opacity:.62;margin-inline-end:8px;color:#70e3ff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;}
html[dir="rtl"] .code-start-prompt::before{content:'‹';margin-inline-end:0;margin-inline-start:8px;}
.prompt-caret{display:inline-block;width:9px;height:1.35em;background:#f4c56b;border-radius:3px;animation:a2PromptBlink .7s steps(2,end) infinite;transform:translateY(.18em);}
.code-has-prompt.code-started .code-start-prompt{opacity:0;transform:translateY(-10px) scale(.985);visibility:hidden;}
@keyframes a2PromptBlink{0%,45%{opacity:1}46%,100%{opacity:.12}}
.code-window code,.project-code code,.hero-code code{white-space:pre-wrap;word-break:break-word;}
@media (max-width:920px){.code-start-prompt{inset:34px 12px 12px;padding:16px;border-radius:16px;font-size:14px;line-height:1.75}.hero-code .code-start-prompt{min-height:140px}.project-code .code-start-prompt,.code-window .code-start-prompt{min-height:110px}}


/* V106 — readable code-like windows for Projects and Case Studies */
.project-terminal-v37,.case-code-window-v45,.case-code-window-v48{position:relative;overflow:hidden}
.project-terminal-v37 pre,.case-code-window-v45 .case-code-block-v48,.case-code-window-v48 .case-code-block-v48{transition:opacity .45s ease,transform .45s ease,filter .45s ease}
.code-not-started.project-terminal-v37 pre,.case-code-window-v45.code-not-started .case-code-block-v48,.case-code-window-v48.code-not-started .case-code-block-v48{opacity:0;transform:translateY(12px);filter:blur(4px);pointer-events:none}
.code-started.project-terminal-v37 pre,.case-code-window-v45.code-started .case-code-block-v48,.case-code-window-v48.code-started .case-code-block-v48{opacity:1;transform:none;filter:none}
.project-terminal-v37 .code-start-prompt,.case-code-window-v45 .code-start-prompt,.case-code-window-v48 .code-start-prompt{position:absolute;z-index:8;inset:48px 0 0 0;display:flex;align-items:flex-start;justify-content:flex-start;gap:3px;padding:22px 24px;color:#dffbff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:clamp(12px,1.7vw,15px);line-height:1.75;background:linear-gradient(180deg,rgba(5,8,15,.9),rgba(5,8,15,.66) 55%,rgba(5,8,15,.28));backdrop-filter:blur(7px);transition:opacity .36s ease,transform .36s ease,visibility .36s ease;white-space:pre-wrap;text-align:left}
html[dir="rtl"] .project-terminal-v37 .code-start-prompt,html[dir="rtl"] .case-code-window-v45 .code-start-prompt,html[dir="rtl"] .case-code-window-v48 .code-start-prompt{direction:rtl;text-align:right;font-family:"Yekan Bakh FaNum",Tahoma,Arial,sans-serif}
html[dir="rtl"] .case-code-window-v45 pre,html[dir="rtl"] .case-code-window-v48 pre,html[dir="rtl"] .project-terminal-v37 pre,html[dir="rtl"] .case-code-window-v45 code,html[dir="rtl"] .case-code-window-v48 code{direction:rtl;text-align:right;font-family:"Yekan Bakh FaNum",Tahoma,Arial,sans-serif}
html[dir="ltr"] .case-readable-code-v106 code,html[dir="ltr"] .project-terminal-v37 pre{white-space:pre-wrap}.code-started .code-start-prompt{opacity:0;visibility:hidden;transform:translateY(-8px)}.prompt-caret{display:inline-block;width:.65em;height:1.2em;margin-inline-start:2px;border-radius:2px;background:#52f2ff;box-shadow:0 0 16px rgba(82,242,255,.55);animation:a2CaretV106 .9s steps(2,end) infinite}@keyframes a2CaretV106{50%{opacity:.15}}
.case-readable-code-v106 pre,.case-readable-code-v106 code{white-space:pre-wrap!important;word-break:break-word;overflow-wrap:anywhere}.case-readable-code-v106 h3{letter-spacing:.02em}
@media (max-width:860px){.project-terminal-v37 .code-start-prompt,.case-code-window-v45 .code-start-prompt,.case-code-window-v48 .code-start-prompt{padding:18px;font-size:12px;line-height:1.7}.case-readable-code-v106 pre{max-height:56svh;overflow:auto}}


/* === V107 RTL/mobile QA safety: localized code windows, cards and long translated copy === */
html[lang="fa"], html[lang="ar"],
html[lang="fa"] body, html[lang="ar"] body{
  font-family: 'Yekan Bakh FaNum', 'Vazirmatn', 'Tahoma', system-ui, sans-serif !important;
}
html[lang="fa"] code, html[lang="fa"] pre, html[lang="fa"] .code-window,
html[lang="fa"] .code-window *, html[lang="fa"] .project-terminal-v37,
html[lang="fa"] .project-terminal-v37 *, html[lang="fa"] .case-code-window-v45,
html[lang="fa"] .case-code-window-v45 *, html[lang="ar"] code, html[lang="ar"] pre,
html[lang="ar"] .code-window, html[lang="ar"] .code-window *,
html[lang="ar"] .project-terminal-v37, html[lang="ar"] .project-terminal-v37 *,
html[lang="ar"] .case-code-window-v45, html[lang="ar"] .case-code-window-v45 *{
  direction:ltr !important;
  text-align:left !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
}
html[lang="fa"] .code-start-prompt, html[lang="ar"] .code-start-prompt,
html[lang="fa"] .code-start-prompt *, html[lang="ar"] .code-start-prompt *{
  direction:rtl !important;
  text-align:right !important;
  font-family:'Yekan Bakh FaNum','Vazirmatn','Tahoma',system-ui,sans-serif !important;
}
html[lang="fa"] .project-card-v37, html[lang="ar"] .project-card-v37,
html[lang="fa"] .case-study-list-card-v45, html[lang="ar"] .case-study-list-card-v45,
html[lang="fa"] .article-card, html[lang="ar"] .article-card,
html[lang="fa"] .cap-card, html[lang="ar"] .cap-card{
  overflow:clip;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
html[lang="fa"] .project-card-v37 h3, html[lang="ar"] .project-card-v37 h3,
html[lang="fa"] .case-study-list-card-v45 h3, html[lang="ar"] .case-study-list-card-v45 h3,
html[lang="fa"] h1, html[lang="ar"] h1,
html[lang="fa"] h2, html[lang="ar"] h2,
html[lang="fa"] h3, html[lang="ar"] h3{
  line-height:1.25;
  text-wrap:balance;
}
html[lang="fa"] .lead, html[lang="ar"] .lead,
html[lang="fa"] p, html[lang="ar"] p{
  line-height:1.85;
}
@media (max-width:920px){
  html[lang="fa"] .project-card-track-v37,
  html[lang="ar"] .project-card-track-v37,
  html[lang="fa"] .case-study-list-v45,
  html[lang="ar"] .case-study-list-v45{
    max-width:100%;
    overflow-x:hidden !important;
  }
  html[lang="fa"] .project-card-v37,
  html[lang="ar"] .project-card-v37,
  html[lang="fa"] .case-study-list-card-v45,
  html[lang="ar"] .case-study-list-card-v45{
    min-width:0;
    max-width:100%;
    height:auto !important;
  }
  html[lang="fa"] .section-head, html[lang="ar"] .section-head,
  html[lang="fa"] .case-study-hero-v45, html[lang="ar"] .case-study-hero-v45{
    padding-inline:18px;
  }
}

/* V108 — code-window start prompt lives inside the terminal, not as a cover card */
.code-has-prompt,
.project-terminal-v37,
.case-code-window-v45,
.case-code-window-v48{
  position:relative;
}
.code-has-prompt.code-not-started pre,
.code-not-started.project-terminal-v37 pre,
.case-code-window-v45.code-not-started .case-code-block-v48,
.case-code-window-v48.code-not-started .case-code-block-v48{
  opacity:0;
  filter:none;
  transform:translateY(6px);
  pointer-events:none;
}
.code-start-prompt,
.project-terminal-v37 .code-start-prompt,
.case-code-window-v45 .code-start-prompt,
.case-code-window-v48 .code-start-prompt{
  position:absolute !important;
  z-index:8;
  inset:auto !important;
  top:clamp(48px,7vh,72px) !important;
  left:clamp(16px,2.2vw,28px) !important;
  right:clamp(16px,2.2vw,28px) !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  color:#f4c56b;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  font-size:clamp(12px,1.35vw,16px);
  line-height:1.55;
  white-space:normal;
  text-align:left;
  direction:ltr;
  pointer-events:none;
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease;
}
.code-start-prompt::before,
.project-terminal-v37 .code-start-prompt::before,
.case-code-window-v45 .code-start-prompt::before,
.case-code-window-v48 .code-start-prompt::before{
  content:'$';
  opacity:.72;
  margin-inline-end:8px;
  color:#70e3ff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
}
html[lang="fa"] .code-start-prompt,
html[lang="ar"] .code-start-prompt,
html[lang="fa"] .project-terminal-v37 .code-start-prompt,
html[lang="ar"] .project-terminal-v37 .code-start-prompt,
html[lang="fa"] .case-code-window-v45 .code-start-prompt,
html[lang="ar"] .case-code-window-v45 .code-start-prompt,
html[lang="fa"] .case-code-window-v48 .code-start-prompt,
html[lang="ar"] .case-code-window-v48 .code-start-prompt{
  direction:rtl;
  text-align:right;
  justify-content:flex-start;
  font-family:"Yekan Bakh FaNum",Tahoma,Arial,sans-serif !important;
  line-height:1.85;
}
html[lang="fa"] .code-start-prompt::before,
html[lang="ar"] .code-start-prompt::before,
html[lang="fa"] .project-terminal-v37 .code-start-prompt::before,
html[lang="ar"] .project-terminal-v37 .code-start-prompt::before,
html[lang="fa"] .case-code-window-v45 .code-start-prompt::before,
html[lang="ar"] .case-code-window-v45 .code-start-prompt::before,
html[lang="fa"] .case-code-window-v48 .code-start-prompt::before,
html[lang="ar"] .case-code-window-v48 .code-start-prompt::before{
  content:'›';
  margin-inline-end:0;
  margin-inline-start:8px;
}
.code-started .code-start-prompt,
.code-has-prompt.code-started .code-start-prompt{
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(-6px) !important;
}
.prompt-caret{
  display:inline-block;
  width:.58em;
  height:1.1em;
  margin-inline-start:3px;
  border-radius:2px;
  background:#52f2ff;
  box-shadow:0 0 12px rgba(82,242,255,.5);
  animation:a2CaretV108 .85s steps(2,end) infinite;
}
@keyframes a2CaretV108{50%{opacity:.12}}
@media (max-width:920px){
  .code-start-prompt,
  .project-terminal-v37 .code-start-prompt,
  .case-code-window-v45 .code-start-prompt,
  .case-code-window-v48 .code-start-prompt{
    top:50px !important;
    left:14px !important;
    right:14px !important;
    font-size:13px;
    line-height:1.65;
  }
}

/* === V109 — inline terminal prompt, no overlay, no hidden content traps === */
.code-start-prompt,
.project-terminal-v37 .code-start-prompt,
.case-code-window-v45 .code-start-prompt,
.case-code-window-v48 .code-start-prompt{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
.code-has-prompt.code-not-started pre,
.code-not-started.project-terminal-v37 pre,
.case-code-window-v45.code-not-started .case-code-block-v48,
.case-code-window-v48.code-not-started .case-code-block-v48{opacity:1!important;filter:none!important;transform:none!important;pointer-events:auto!important;}
.code-has-prompt pre,
.project-terminal-v37 pre,
.case-code-window-v45 pre,
.case-code-window-v48 pre{opacity:1!important;filter:none!important;transform:none!important;}
#heroCode,#sceneCode,#projectCode,#projectHeroCodeV37{white-space:pre-wrap!important;word-break:break-word;overflow-wrap:anywhere;}
.terminal-inline-prompt{color:#f4c56b!important;}

/* === V124: terminal prompt is inline text, not a cover layer === */
.code-start-prompt,.project-terminal-v37 .code-start-prompt,.case-code-window-v45 .code-start-prompt,.case-code-window-v48 .code-start-prompt{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
.code-has-prompt.code-not-started pre,.code-not-started.project-terminal-v37 pre,.case-code-window-v45.code-not-started .case-code-block-v48,.case-code-window-v48.code-not-started .case-code-block-v48{opacity:1!important;filter:none!important;transform:none!important;pointer-events:auto!important;}
.terminal-inline-prompt{display:inline;color:#f4c56b!important;font-weight:700;white-space:pre-wrap;}
.prompt-caret{display:inline-block;width:.62em;height:1.18em;margin-inline-start:3px;border-radius:2px;background:#52f2ff;box-shadow:0 0 14px rgba(82,242,255,.55);vertical-align:-.18em;animation:a2V124Caret .82s steps(2,end) infinite;}
@keyframes a2V124Caret{50%{opacity:.12}}
.code-stage pre,.code-window pre,.project-code pre,.project-terminal-v37 pre{white-space:pre-wrap!important;}

/* V125 employer-review fix: keep mobile CTAs clickable above visual layers */
.hero-copy,
.hero-actions,
.hero-actions .btn,
.social-strip,
.social-strip a,
.home-project-cta-v43,
.case-study-actions-v45 {
  position: relative;
  z-index: 60;
  pointer-events: auto !important;
}
@media (max-width: 920px) {
  .hero-code,
  .code-stage,
  .scroll-hint,
  .ambient,
  .noise,
  .cap-card::before,
  .project-feature::before,
  .project-code::before,
  .contact-card::before,
  .skill-group::before {
    pointer-events: none !important;
  }
  .hero-copy { z-index: 40 !important; }
  .hero-copy[style*="opacity: 1"], .hero-copy { isolation: isolate; }
  .hero-actions .btn { touch-action: manipulation; -webkit-tap-highlight-color: rgba(82,242,255,.18); }
}


/* V128: Projects hero scroll hint only; no layout redesign. */
.project-scroll-hint-v128{bottom:18px;z-index:4;pointer-events:none}
@media(max-width:860px){.project-scroll-hint-v128{bottom:8px;font-size:11.5px}.project-scroll-hint-v128 span{width:24px}}


/* v130 safe restoration: single scroll-start prompt, no duplicate typing overlays. */
.code-start-prompt,
.project-terminal-v37 .code-start-prompt{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
}
.code-started .code-start-prompt,
.code-has-prompt.code-started .code-start-prompt,
.project-terminal-v37.code-started .code-start-prompt{
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(-8px)!important;
}
.code-has-prompt.code-not-started pre,
.project-terminal-v37.code-not-started pre{
  opacity:0!important;
  filter:blur(7px)!important;
  transform:translateY(8px)!important;
  pointer-events:none!important;
}
.code-has-prompt.code-started pre,
.project-terminal-v37.code-started pre{
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  pointer-events:auto!important;
}
.code-start-prompt,
.project-terminal-v37 .code-start-prompt{
  color:#dffbff!important;
}
.code-start-prompt .prompt-line,
.project-terminal-v37 .code-start-prompt .prompt-line{
  background:linear-gradient(90deg,#52f2ff,#f4c56b,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  font-weight:800;
}
