.read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:150;pointer-events:none;background:transparent}.read-progress span{display:block;height:100%;width:0;background:var(--grad-brand);box-shadow:0 0 12px rgba(31,168,196,.55);transition:width .1s linear}.tech-bg{position:relative;isolation:isolate}.tech-bg::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(120% 80% at 60% 0%,#000 0%,transparent 72%);mask-image:radial-gradient(120% 80% at 60% 0%,#000 0%,transparent 72%);opacity:.55}.tech-bg::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(420px circle at var(--mx,70%) var(--my,20%),rgba(63,196,221,.20),transparent 65%);transition:background .2s var(--ease)}.kpi strong{font-variant-numeric:tabular-nums}.kpi{position:relative}.kpi[data-count]::after{content:"";position:absolute;left:50%;bottom:-.4rem;width:0;height:2px;border-radius:2px;background:var(--grad-brand);transform:translateX(-50%);transition:width .6s var(--ease) .3s}.kpi.is-in[data-count]::after{width:36px}[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .55s var(--ease),transform .55s var(--ease)}[data-reveal].is-in{opacity:1;transform:none}.card,.plan,.path,.step,.pole{position:relative}.spotlight::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s var(--ease);background:radial-gradient(280px circle at var(--cx,50%) var(--cy,50%),rgba(63,196,221,.14),transparent 70%)}.spotlight:hover::after{opacity:1}.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;gap:1rem;width:max-content;animation:defile 38s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-item{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);font-size:var(--fs-sm);font-weight:600;color:var(--gray-700);white-space:nowrap}.marquee-item .dot{width:7px;height:7px;border-radius:50%;background:var(--grad-brand);flex-shrink:0}@keyframes defile{from{transform:translateX(0)}to{transform:translateX(-50%)}}.tabs{display:flex;flex-wrap:wrap;gap:.4rem;padding:5px;border-radius:var(--radius-pill);background:var(--gray-100);width:max-content;max-width:100%;margin-bottom:2rem}.tab{padding:.6rem 1.2rem;border-radius:var(--radius-pill);font-size:var(--fs-sm);font-weight:600;color:var(--gray-700);transition:.2s var(--ease);white-space:nowrap}.tab[aria-selected="true"]{background:var(--card);color:var(--cyan-600);box-shadow:var(--shadow-xs)}.tab-panel[hidden]{display:none}.tab-panel{animation:apparait .35s var(--ease)}@keyframes apparait{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}.chip{padding:.5rem 1rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);font-size:var(--fs-sm);font-weight:500;color:var(--gray-700);transition:.18s var(--ease)}.chip:hover{border-color:var(--cyan-300);color:var(--cyan-600)}.chip[aria-pressed="true"]{background:var(--grad-brand);border-color:transparent;color:#fff;box-shadow:var(--shadow-brand)}.chip-count{font-size:var(--fs-xs);color:var(--gray-500);margin-left:.35rem}.chip[aria-pressed="true"] .chip-count{color:rgba(255,255,255,.8)}[data-filterable].is-hidden,[data-filter-group].is-hidden{display:none}.filter-empty{padding:2rem;text-align:center;color:var(--gray-500);font-size:var(--fs-sm)}.engagement{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.75rem}.engagement .switch button{transition:.2s var(--ease)}.engagement-note{font-size:var(--fs-xs);color:var(--gray-500)}.plan-price .amount{transition:opacity .2s var(--ease)}.plan-price.is-updating .amount{opacity:.35}.hub{position:relative;overflow:hidden}.hub-center{position:relative}.hub-center::after{content:"";position:absolute;inset:-10px;border-radius:calc(var(--radius-lg)+10px);border:1px solid rgba(63,196,221,.45);animation:pulse-anneau 3s ease-out infinite}@keyframes pulse-anneau{0%{transform:scale(.96);opacity:.9}70%{transform:scale(1.08);opacity:0}100%{opacity:0}}.hub-node{position:relative;overflow:hidden}.hub-node::after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(63,196,221,.18),transparent);animation:balayage 4.5s ease-in-out infinite}.hub-col .hub-node:nth-child(2)::after{animation-delay:.5s}.hub-col .hub-node:nth-child(3)::after{animation-delay:1s}.hub-col .hub-node:nth-child(4)::after{animation-delay:1.5s}@keyframes balayage{0%,60%{left:-100%}85%,100%{left:100%}}.live-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .75rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:#0a7a68;font-size:var(--fs-xs);font-weight:700}.live-dot{width:7px;height:7px;border-radius:50%;background:#12d3b6;position:relative}.live-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:pulse-point 1.8s ease-out infinite}@keyframes pulse-point{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.6);opacity:0}}.plan{transition:transform .24s var(--ease),box-shadow .24s var(--ease),border-color .24s var(--ease)}.plan:hover{transform:translateY(-4px)}.rotator{display:inline-grid}.rotator span{grid-area:1/1;opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.rotator span.is-on{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.marquee-track,.hub-center::after,.hub-node::after,.live-dot::after{animation:none}.read-progress{display:none}[data-reveal]{opacity:1;transform:none}.tech-bg::after{display:none}.rotator span{position:static;opacity:1;transform:none}.rotator span:not(:first-child){display:none}}