.fw-figure{border:1px solid var(--ge-border);background:radial-gradient(ellipse 60% 60% at 50% 50%, color-mix(in oklch, var(--ge-accent-warm) 12%, transparent), transparent 75%), var(--ge-surface);max-width:1280px;color:var(--ge-text-cream);font-family:var(--font-sans);border-radius:20px;flex-direction:column;margin:0 auto;padding:40px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d,0 40px 80px -30px #000000d9;box-shadow:inset 0 1px lab(100% 0 0/.05),0 40px 80px -30px lab(0% 0 0/.85)}.fw-figure:before{content:"";background:linear-gradient(180deg, transparent, var(--ge-bg) 98%);pointer-events:none;opacity:.4;z-index:0;position:absolute;inset:0}.fw-figure:after{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#ffffff05 1px,#0000 1px);background-image:linear-gradient(90deg,lab(100% 0 0/.018) 1px,#0000 1px),linear-gradient(lab(100% 0 0/.018) 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(100% 70% at 50% 0,#000 30%,#0000 80%);mask-image:radial-gradient(100% 70% at 50% 0,#000 30%,#0000 80%)}.fw-stage{z-index:1;aspect-ratio:1240/720;background:var(--ge-bg);border:1px solid var(--ge-border);border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 24px 48px -24px #000000b3;box-shadow:inset 0 1px lab(100% 0 0/.04),0 24px 48px -24px lab(0% 0 0/.7)}.fw-svg{width:100%;height:100%;display:block;position:absolute;inset:0}.fw-arc{stroke:color-mix(in oklch, var(--ge-accent-warm) 30%, transparent);transition:stroke .38s,filter .38s}.fw-arc.is-active{stroke:var(--ge-accent-warm);filter:drop-shadow(0 0 10px color-mix(in oklch, var(--ge-accent-warm) 50%, transparent))}.fw-dot{fill:color-mix(in oklch, var(--ge-accent-warm) 40%, transparent);filter:blur(2px)}.fw-dot-core{fill:#ffedb9;fill:lab(95.4566% 14.5492 64.3321);filter:drop-shadow(0 0 12px color-mix(in oklch, var(--ge-accent-warm) 70%, transparent))}.fw-arc-num{font-family:var(--font-mono);letter-spacing:.08em;fill:color-mix(in oklch, var(--ge-accent-warm) 50%, var(--ge-text-faint));font-size:22px;font-weight:700;transition:fill .38s}.fw-arc-num.is-active{fill:var(--ge-accent-warm)}.fw-hub-tag{font-family:var(--font-mono);letter-spacing:.28em;fill:var(--ge-accent-warm);font-size:13px;font-weight:600}.fw-hub-title{font-family:var(--font-serif);fill:var(--ge-text-cream);letter-spacing:.005em;font-size:26px}.fw-callouts{pointer-events:none;z-index:3;position:absolute;inset:0}.fw-callout{border:1px solid var(--ge-border-soft);background:color-mix(in oklch, var(--ge-surface-2) 80%, var(--ge-bg));border-radius:10px;flex-direction:column;gap:4px;padding:10px 16px;transition:border-color .32s,background-color .32s,transform .32s,box-shadow .32s;display:flex;position:absolute}.fw-callout--top{top:6%;left:50%;transform:translate(-50%)}.fw-callout--left{top:50%;left:6%;transform:translateY(-50%)}.fw-callout--right{top:50%;right:6%;transform:translateY(-50%)}.fw-callout.is-active{border-color:var(--ge-accent-warm);background:color-mix(in oklch, var(--ge-accent-warm) 14%, transparent);box-shadow:0 0 24px -6px color-mix(in oklch, var(--ge-accent-warm) 60%, transparent)}.fw-callout--top.is-active{transform:translate(-50%)translateY(-4px)}.fw-callout--left.is-active{transform:translateY(-50%)translate(-4px)}.fw-callout--right.is-active{transform:translateY(-50%)translate(4px)}.fw-callout-label{font-family:var(--font-serif);color:var(--ge-text-cream);letter-spacing:.005em;font-size:18px}.fw-callout.is-active .fw-callout-label{color:color-mix(in oklch, var(--ge-accent-warm) 85%, white)}.fw-callout-sub{font-family:var(--font-mono);letter-spacing:.16em;color:var(--ge-text-mute);text-transform:uppercase;font-size:10.5px}.fw-step-card{border:1px solid var(--ge-border);background:linear-gradient(180deg, var(--ge-surface-2), var(--ge-surface));z-index:4;border-radius:12px;width:320px;padding:18px 22px;animation:.38s cubic-bezier(.2,.7,.3,1) both fw-step-card-in;position:absolute;bottom:6%;right:4%;box-shadow:0 18px 36px -18px #000000b3;box-shadow:0 18px 36px -18px lab(0% 0 0/.7)}@keyframes fw-step-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fw-step-num{font-family:var(--font-mono);letter-spacing:.22em;color:var(--ge-accent-warm);margin-bottom:8px;font-size:12px;font-weight:700}.fw-step-title{font-family:var(--font-serif);color:var(--ge-text-cream);letter-spacing:-.005em;margin:0 0 8px;font-size:20px;font-weight:400;line-height:1.2}.fw-step-body{font-family:var(--font-sans);color:var(--ge-text-soft);margin:0 0 14px;font-size:13.5px;line-height:1.5}.fw-step-progress{gap:6px;display:flex}.fw-step-tick{background:var(--ge-border-soft);border-radius:2px;flex:1;height:3px;transition:background-color .32s}.fw-step-tick.is-done{background:color-mix(in oklch, var(--ge-accent-warm) 50%, transparent)}.fw-step-tick.is-active{background:var(--ge-accent-warm)}.fw-revenue{z-index:1;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:24px;display:flex;position:relative}.fw-rev-label{font-family:var(--font-mono);letter-spacing:.24em;color:var(--ge-text-mute);margin-right:6px;font-size:11px;font-weight:600}.fw-rev-pill{font-family:var(--font-mono);letter-spacing:.06em;border:1px solid var(--ge-border-soft);background:color-mix(in oklch, var(--ge-text-cream) 4%, transparent);color:var(--ge-text-soft);border-radius:999px;padding:6px 14px;font-size:11.5px;font-weight:500}.fw-figure .ge-footer{z-index:1;margin-top:20px;position:relative}@media (max-width:980px){.fw-figure{padding:22px 16px}.fw-step-card{width:auto;bottom:4%;left:4%;right:4%}}.fw-figure.fig-light .fw-arc{stroke:color-mix(in oklch, var(--ge-accent-warm) 50%, transparent)}.fw-figure.fig-light .fw-arc.is-active{filter:drop-shadow(0 0 10px color-mix(in oklch, var(--ge-accent-warm) 70%, transparent))}.fw-figure.fig-light .fw-dot{fill:color-mix(in oklch, var(--ge-accent-warm) 60%, transparent)}.fw-figure.fig-light .fw-dot-core{fill:#c86a00;fill:lab(55.0248% 40.1446 102.915);filter:drop-shadow(0 0 12px color-mix(in oklch, var(--ge-accent-warm) 90%, transparent))}.fw-figure.fig-light .fw-callout.is-active{background:color-mix(in oklch, var(--ge-accent-warm) 22%, transparent);box-shadow:0 0 24px -6px color-mix(in oklch, var(--ge-accent-warm) 80%, transparent)}.fw-figure.fig-light .fw-callout.is-active .fw-callout-label{color:color-mix(in oklch, var(--ge-accent-warm) 60%, black)}
