.expertise{--expertise-shell-max:1860px;--expertise-section-progress:1;isolation:isolate;z-index:1;content-visibility:auto;contain-intrinsic-size:auto 2400px;background:0 0;margin-top:0;padding:110px 0 148px;position:relative;overflow:visible}.expertise:before,.expertise:after,.expertise-band:before,.expertise-band:after{content:none}.expertise-shell{z-index:1;width:min(var(--expertise-shell-max), calc(100vw - clamp(56px, 4vw, 88px)));grid-template-columns:minmax(28rem,34rem) clamp(44px,5vw,100px) minmax(58rem,1fr);align-items:start;gap:0;margin-inline:auto;display:grid;position:relative}.expertise-shell-spacer{pointer-events:none;grid-area:1/2;align-self:stretch}.expertise-intro{grid-column:1;align-self:start;gap:18px;width:100%;max-width:none;padding-right:0;display:grid;position:sticky;top:clamp(92px,12vh,132px)}.expertise .eyebrow{color:rgb(var(--brand-cyan-rgb) / .96)}.expertise h2{color:#fff;text-wrap:balance;max-width:11.2ch;font-size:clamp(2.8rem,5vw,5.3rem);line-height:.92}.expertise-lede{max-width:52ch;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-family:inherit;font-size:.72rem;font-weight:400;line-height:1.4}.expertise-list{--expertise-index-column:clamp(96px, 5vw, 118px);--expertise-index-axis:clamp(4px, .3vw, 6px);--expertise-index-gap:clamp(18px, 1.5vw, 22px);z-index:1;grid-column:3;justify-self:stretch;justify-items:start;gap:clamp(24px,3vw,38px);width:100%;max-width:none;padding:18px 0 12px;display:grid;position:relative}.expertise-list:before{content:"";left:var(--expertise-index-axis);background:#ffffff24;width:1px;position:absolute;top:0;bottom:0}.expertise-tech-defs{width:0;height:0;position:absolute;overflow:hidden}.expertise-band{--expertise-band-progress:1;z-index:1;grid-template-columns:var(--expertise-index-column) minmax(23rem, 29rem) minmax(24rem, 1fr);justify-self:start;align-items:start;gap:clamp(16px,1.4vw,20px) clamp(22px,1.9vw,30px);width:100%;max-width:100%;padding:10px 0 26px;display:grid;position:relative;overflow:visible}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-index,.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-band-copy h3,.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-band-copy p,.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-tags li{opacity:.34}.expertise.is-expertise-reveal-ready .expertise-band .expertise-index{transition:opacity .52s,transform .62s cubic-bezier(.2,.9,.2,1);transition-delay:calc(var(--expertise-reveal-index,0) * 60ms)}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-index{transform:translate(-14px)}.expertise-index{z-index:1;width:100%;min-width:var(--expertise-index-column);white-space:nowrap;max-width:none;padding-top:2px;padding-left:calc(var(--expertise-index-axis) + var(--expertise-index-gap));color:#f2f7ff42;letter-spacing:-.04em;place-self:start;font-size:clamp(2.8rem,3.8vw,4.7rem);font-weight:800;line-height:.86;display:block;position:relative;overflow:visible}.expertise-index:before{content:"";left:var(--expertise-index-axis);background:rgb(var(--brand-cyan-rgb));border-radius:999px;width:10px;height:10px;position:absolute;top:.72em;transform:translate(-50%,-50%)}.expertise.is-expertise-reveal-ready .expertise-band .expertise-index:before{transition:opacity .36s,transform .52s cubic-bezier(.22,.86,.22,1);transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + 90ms)}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-index:before{opacity:.3;transform:translate(-50%,-50%)scale(.72)}.expertise-band-copy{z-index:1;gap:12px;width:100%;max-width:29rem;padding-bottom:2px;display:grid;position:relative}.expertise.is-expertise-reveal-ready .expertise-band .expertise-band-copy h3{transition:opacity .5s,transform .62s cubic-bezier(.2,.9,.2,1);transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + 70ms)}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-band-copy h3{transform:translateY(14px)}.expertise-band-copy h3{color:#fff;text-wrap:balance;max-width:28ch;font-size:clamp(1.42rem,2.2vw,2.26rem);line-height:.98}.expertise-band-copy p{max-width:48ch;color:var(--body);font-size:1rem;line-height:1.72}.expertise.is-expertise-reveal-ready .expertise-band .expertise-band-copy p{transition:opacity .5s,transform .62s cubic-bezier(.2,.9,.2,1);transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + .14s)}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-band-copy p{transform:translateY(12px)}.expertise-tech-stack{box-sizing:border-box;contain:layout;place-self:start end;width:min(100%,30rem);max-width:30rem;min-height:440px;margin:0;padding:12px 0 6px;list-style:none;position:relative}.expertise-tech-badge{opacity:.94;width:120px;transform:translate3d(var(--expertise-tech-x,0px), var(--expertise-tech-y,0px), 0);transition:opacity .18s,transform .18s;position:absolute;top:0;left:0;overflow:visible}.expertise-tech-badge-inner{animation:6.2s ease-in-out infinite expertise-tech-float;animation-delay:var(--expertise-tech-delay,0s);animation-play-state:paused;display:block}.is-expertise-active .expertise-tech-badge-inner{animation-play-state:running}.is-expertise-active .expertise-tech-stack:focus-within .expertise-tech-badge-inner{animation-play-state:paused}.expertise-tech-button{box-sizing:border-box;text-align:center;cursor:pointer;opacity:.98;background:0 0;border:0;justify-items:center;gap:10px;width:100%;padding:8px 0 0;transition:opacity .18s,transform .18s;display:grid}.expertise-tech-orb{aspect-ratio:1;background:#080c12c7;border:1px solid #cbd3dd47;border-radius:999px;place-items:center;width:88px;height:88px;transition:border-color .18s,transform .18s;display:grid;overflow:hidden}.expertise-tech-logo{box-sizing:border-box;object-fit:contain;object-position:center center;opacity:.98;place-self:center;width:100%;height:100%;margin:0 auto;padding:12px;transition:opacity .18s;display:block}.expertise-tech-logo--image{object-fit:contain}.expertise-tech-logo-text{box-sizing:border-box;color:#ecf0f5f0;letter-spacing:.01em;text-align:center;place-items:center;width:100%;height:100%;padding:10px;font-size:1.18rem;font-weight:700;line-height:1;display:grid}.expertise-tech-name{text-align:center;color:#ecf0f5e0;max-width:10ch;font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;text-wrap:balance;font-weight:600;line-height:1.28;transition:color .18s,opacity .18s;display:block}.expertise-tech-button[data-tech-key=zephyr] .expertise-tech-logo,.expertise-tech-button[data-tech-key=stm32] .expertise-tech-logo,.expertise-tech-button[data-tech-key=nbiot] .expertise-tech-logo,.expertise-tech-button[data-tech-key=ltem] .expertise-tech-logo,.expertise-tech-button[data-tech-key=buildroot] .expertise-tech-logo{padding:18px 8px}.expertise-tech-button[data-tech-key=yocto] .expertise-tech-logo{filter:brightness(0)invert();padding:19px 8px}.expertise-tech-badge:focus-within,.expertise-tech-button:focus-visible{opacity:1}.expertise-tech-button:focus-visible .expertise-tech-orb{border-color:var(--tech-brand,#ffffff8a);transform:scale(1.04)}.expertise-tech-button:focus-visible .expertise-tech-name{color:color-mix(in srgb, var(--tech-brand,#fff) 56%, white)}.expertise-tech-button:focus-visible{outline:2px solid color-mix(in srgb, var(--tech-brand,#fff) 48%, white);outline-offset:4px}.expertise-tech-overlay{--expertise-overlay-brand:rgb(var(--brand-cyan-rgb));--expertise-overlay-pointer-x:50%;--expertise-overlay-pointer-y:18%;--popup-accent:var(--expertise-overlay-brand);--popup-overlay-align:center;--popup-overlay-padding-block:clamp(20px, 3vw, 36px);--popup-overlay-padding-inline:28px;--popup-dialog-width:min(100%, 72rem);--popup-dialog-padding:clamp(30px, 4vw, 42px);--popup-dialog-radius:30px;--popup-close-ink:var(--muted)}.expertise-tech-overlay-backdrop{background:radial-gradient(circle at 24% 18%, rgb(var(--brand-cyan-rgb) / .08) 0%, transparent 36%), linear-gradient(180deg, #0e16222e 0%, #070b1257 100%)}@media (pointer:coarse){.expertise-tech-overlay-backdrop{background:#04070b}}.expertise-tech-dialog{width:var(--popup-dialog-width);padding:var(--popup-dialog-padding);border-radius:var(--popup-dialog-radius);contain:layout paint style;background:linear-gradient(155deg, #ffffff14 0%, #c2d2de0a 22%, #0a101a61 100%), radial-gradient(circle at top right, rgb(var(--brand-cyan-rgb) / .12) 0%, transparent 36%), radial-gradient(circle at 18% 16%, #ffffff0f 0%, transparent 32%), linear-gradient(180deg, #080e18 0%, #060a12 100%);border:0;overflow:hidden;box-shadow:0 32px 96px #0000006b,0 8px 32px #00000038,inset 0 1px #ffffff24,inset 0 0 0 1px #ffffff0f}.expertise-tech-dialog-shell{z-index:1;grid-template-columns:minmax(0,1.16fr) clamp(220px,24vw,312px);align-items:center;gap:clamp(26px,4vw,54px);display:grid;position:relative}.expertise-tech-dialog-copy{align-content:start;gap:0;display:grid}.expertise-tech-dialog:before{z-index:0;background:linear-gradient(90deg, var(--expertise-overlay-brand) 0%, #ffffff14 70%, transparent 100%);opacity:1;width:100%;height:1px;inset:0 auto auto 0}.expertise-tech-dialog:after{z-index:0;border-radius:inherit;background:radial-gradient(circle at var(--expertise-overlay-pointer-x) var(--expertise-overlay-pointer-y), #ffffff42 0%, #ffffff1f 11%, #ffffff0d 22%, transparent 40%), linear-gradient(125deg, #ffffff2e 0%, #ffffff0f 18%, transparent 38%), radial-gradient(circle at top left, color-mix(in srgb, var(--expertise-overlay-brand) 28%, transparent) 0%, transparent 42%);opacity:.92;transform-origin:50%;inset:1px;transform:none}.expertise-tech-dialog-kicker{color:color-mix(in srgb, var(--expertise-overlay-brand) 88%, white);letter-spacing:.18em;text-transform:uppercase;text-shadow:0 6px 18px #0000006b;margin-bottom:12px;font-size:.72rem;font-weight:600}.expertise-tech-dialog h3{max-width:20ch;color:color-mix(in srgb, var(--expertise-overlay-brand) 54%, white);text-shadow:0 14px 28px #0000007a;margin-bottom:14px;font-size:clamp(1.74rem,3vw,2.4rem);line-height:.98}.expertise-tech-dialog-body{max-width:54ch;color:color-mix(in srgb, var(--expertise-overlay-brand) 18%, #f6f8fbf0);margin-bottom:20px;font-size:1rem;line-height:1.72}.expertise-tech-dialog-link{border:1px solid color-mix(in srgb, var(--expertise-overlay-brand) 46%, #ffffff1f);color:color-mix(in srgb, var(--expertise-overlay-brand) 74%, white);background:color-mix(in srgb, var(--expertise-overlay-brand) 10%, #ffffff05);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-self:start;align-items:center;margin:0 0 22px;padding:11px 16px;font-weight:600;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s,color .18s;display:inline-flex}.expertise-tech-dialog-link[hidden]{display:none}.expertise-tech-dialog-link:focus-visible{border-color:color-mix(in srgb, var(--expertise-overlay-brand) 68%, white);box-shadow:0 0 0 1px #ffffff14, 0 12px 28px color-mix(in srgb, var(--expertise-overlay-brand) 18%, transparent);color:color-mix(in srgb, var(--expertise-overlay-brand) 92%, white);transform:translateY(-1px)}@media (hover:hover) and (pointer:fine){.expertise-tech-overlay-backdrop{backdrop-filter:blur(18px)saturate(1.08)}.expertise-tech-dialog{background:linear-gradient(155deg, #ffffff14 0%, #c2d2de0a 22%, #0a101a61 100%), radial-gradient(circle at top right, rgb(var(--brand-cyan-rgb) / .12) 0%, transparent 36%), radial-gradient(circle at 18% 16%, #ffffff0f 0%, transparent 32%), linear-gradient(180deg, #080e1870 0%, #060a1285 100%);backdrop-filter:blur(36px)saturate(1.4)brightness(.92)}.is-expertise-active .expertise-tech-stack:hover .expertise-tech-badge-inner{animation-play-state:paused}.expertise-tech-badge:hover,.expertise-tech-button:hover{opacity:1}.expertise-tech-button:hover .expertise-tech-orb{border-color:var(--tech-brand,#ffffff8a);transform:scale(1.04)}.expertise-tech-button:hover .expertise-tech-name{color:color-mix(in srgb, var(--tech-brand,#fff) 56%, white)}.expertise-tech-dialog-link:hover{border-color:color-mix(in srgb, var(--expertise-overlay-brand) 68%, white);box-shadow:0 0 0 1px #ffffff14, 0 12px 28px color-mix(in srgb, var(--expertise-overlay-brand) 18%, transparent);color:color-mix(in srgb, var(--expertise-overlay-brand) 92%, white);transform:translateY(-1px)}}@media (pointer:coarse){.expertise-tech-dialog-link{min-height:44px}.expertise-tech-badge-inner{animation:none}}.expertise-tech-dialog-points{gap:12px;margin:0;padding:0;list-style:none;display:grid}.expertise-tech-dialog-points li{color:color-mix(in srgb, var(--expertise-overlay-brand) 28%, #f1f5f9eb);padding-left:18px;font-size:.94rem;line-height:1.68;position:relative}.expertise-tech-dialog-points li:before{content:"";background:var(--expertise-overlay-brand);width:6px;height:6px;box-shadow:0 0 16px var(--expertise-overlay-brand);border-radius:999px;position:absolute;top:.8em;left:0}.expertise-tech-dialog-brand{justify-items:center;gap:14px;display:grid}.expertise-tech-dialog-logo-frame{border:1px solid color-mix(in srgb, var(--expertise-overlay-brand) 18%, #ffffff14);background:radial-gradient(circle at 30% 26%, color-mix(in srgb, var(--expertise-overlay-brand) 18%, transparent) 0%, transparent 54%), linear-gradient(160deg, #ffffff0d 0%, #0a0e1675 44%, #05080ebd 100%);border-radius:999px;place-items:center;width:clamp(184px,18vw,244px);height:clamp(184px,18vw,244px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 64px #00000047,inset 0 1px #ffffff14,inset 0 0 0 1px #ffffff08}.expertise-tech-dialog-logo{box-sizing:border-box;object-fit:contain;filter:drop-shadow(0 16px 30px #00000042);width:100%;height:100%;padding:32px}.expertise-tech-dialog-logo-text{box-sizing:border-box;color:#eef4fb;letter-spacing:.02em;text-align:center;width:100%;height:100%;text-shadow:0 0 24px color-mix(in srgb, var(--expertise-overlay-brand) 45%, transparent);place-items:center;padding:24px;font-size:2.2rem;font-weight:700;line-height:1;display:grid}.expertise-tech-dialog-logo-text[hidden],.expertise-tech-dialog-logo[hidden]{display:none}.expertise-tech-dialog-brand-label{color:color-mix(in srgb, var(--expertise-overlay-brand) 66%, #f6f8fbe0);letter-spacing:.2em;text-transform:uppercase;font-size:.76rem;font-weight:700}.expertise-tech-overlay[data-overlay-tech-key=zephyr] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=stm32] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=nbiot] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=ltem] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=yocto] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=buildroot] .expertise-tech-dialog-logo,.expertise-tech-overlay[data-overlay-tech-key=nfc] .expertise-tech-dialog-logo{padding:48px 22px}.expertise-tech-overlay[data-overlay-tech-key=yocto] .expertise-tech-dialog-logo{filter:brightness(0)invert()drop-shadow(0 16px 30px #00000057)}.expertise-tags{flex-wrap:wrap;gap:8px 18px;margin-top:2px;display:flex}.expertise-tags li{color:#f0f4f8d6;letter-spacing:.16em;text-transform:uppercase;background:0 0;border:0;align-items:center;padding:0;font-size:.66rem;font-weight:600;display:inline-flex;position:relative}.expertise.is-expertise-reveal-ready .expertise-band .expertise-tags li{transition:opacity .42s,transform .56s cubic-bezier(.2,.9,.2,1)}.expertise.is-expertise-reveal-ready .expertise-band:not(.is-expertise-band-visible) .expertise-tags li{transform:translateY(18px)}.expertise.is-expertise-reveal-ready .expertise-band .expertise-tags li:first-child{transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + .2s)}.expertise.is-expertise-reveal-ready .expertise-band .expertise-tags li:nth-child(2){transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + .25s)}.expertise.is-expertise-reveal-ready .expertise-band .expertise-tags li:nth-child(3){transition-delay:calc((var(--expertise-reveal-index,0) * 60ms) + .3s)}.expertise-tags li:before{content:"";background:rgb(var(--brand-cyan-rgb));border-radius:999px;flex:none;width:6px;height:6px;margin-right:10px}.expertise.is-expertise-reveal-ready .expertise-band.is-expertise-band-visible .expertise-index,.expertise.is-expertise-reveal-ready .expertise-band.is-expertise-band-visible .expertise-band-copy h3,.expertise.is-expertise-reveal-ready .expertise-band.is-expertise-band-visible .expertise-band-copy p,.expertise.is-expertise-reveal-ready .expertise-band.is-expertise-band-visible .expertise-tags li{opacity:1;transform:translate(0,0)}.expertise.is-expertise-reveal-ready .expertise-band.is-expertise-band-visible .expertise-index:before{opacity:1;transform:translate(-50%,-50%)scale(1)}@keyframes expertise-tech-float{0%,to{transform:translate(0,0)}28%{transform:translate(4px,-18px)}55%{transform:translate(-3px,-6px)}78%{transform:translate(2px,10px)}}@media (width<=1200px){.expertise{padding:110px 0 120px}.expertise-shell{grid-template-columns:1fr;gap:34px}.expertise-intro,.expertise-list{grid-column:auto}.expertise-shell-spacer{display:none}.expertise-intro{max-width:38rem;position:relative;top:auto}.expertise h2{max-width:12ch;font-size:clamp(2.7rem,7vw,5rem)}.expertise-list{width:100%}.expertise-list:before{left:18px}.expertise-band{grid-template-columns:var(--expertise-index-column) minmax(0, 1fr);width:100%}.expertise-tech-stack{grid-column:2;justify-self:start;width:min(100%,clamp(340px,38vw,440px));max-width:440px;min-height:344px}.expertise-tech-dialog{width:min(100%,64rem)}.expertise-tech-dialog-shell{grid-template-columns:minmax(0,1fr) 220px;gap:24px}.expertise-tech-dialog-logo-frame{width:188px;height:188px}}@media (width<=760px){.expertise{background-position:58% 54%;padding:84px 0 92px}.expertise-shell{width:calc(100vw - 24px)}.expertise h2{max-width:12ch;font-size:clamp(2.3rem,10.4vw,3.8rem)}.expertise-lede{max-width:44ch}.expertise-list:before{display:none}.expertise-band{grid-template-columns:1fr;gap:16px;padding-bottom:20px}.expertise-index{min-width:0;padding-left:0;font-size:clamp(2.3rem,9vw,3.6rem)}.expertise-index:before{display:none}.expertise-band-copy p{font-size:.94rem;line-height:1.64}.expertise-tech-stack{contain:none;flex-wrap:wrap;grid-column:auto;align-content:flex-start;justify-self:start;gap:14px 8px;width:100%;max-width:100%;min-height:auto;display:flex}.expertise-tech-badge{width:100px;position:static;transform:none}.expertise-tech-badge-inner{animation:none}.expertise-tech-orb{width:80px;height:80px}.expertise-tech-dialog{border:0;border-radius:0}.expertise-tech-dialog-shell{grid-template-columns:1fr;gap:22px}.expertise-tech-dialog-brand{order:-1}.expertise-tech-dialog-logo-frame{width:148px;height:148px}.expertise-tech-dialog-logo{padding:24px}.expertise-tech-dialog-link{margin-bottom:18px;font-size:.74rem}.expertise-tech-dialog h3{max-width:16ch;font-size:clamp(1.46rem,7vw,2rem)}.expertise-tags{gap:8px 14px}}