/* Pulso product story. All copy and native controls remain usable without JS. */
.p-story-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:32px}
.p-story-heading h2{margin-bottom:0;max-width:26ch}
.p-story-heading .p-marketing-eyebrow{margin-bottom:16px}
.p-marketing .p-story-caption{max-width:24ch;flex-shrink:0;display:flex;align-items:center;gap:12px;margin:0 0 4px;font-size:13px;line-height:1.6;color:var(--p-text-muted)}
.p-story-spark{font-size:40px;line-height:1;color:var(--p-emphasis)}
.p-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.p-story-feature{min-width:0;background:var(--p-surface);border:1px solid color-mix(in srgb,var(--p-border) 70%,transparent);border-radius:24px;overflow:hidden;box-shadow:0 4px 16px color-mix(in srgb,var(--p-text) 2%,transparent);transition:border-color var(--p-motion-fast),box-shadow var(--p-motion-enter)}
.p-story-mini-badge{flex-shrink:0;padding:3px 7px;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:6px;font-size:8px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;line-height:1.5}

.p-story-bars{height:100%;display:flex;align-items:flex-end;gap:12px;padding:28px 6px 0}
.p-story-bars i{display:block;flex:1;min-width:0;height:var(--bar);transform-origin:bottom;border-radius:5px 5px 0 0;background:var(--p-color-cobalt-200);position:relative}
.p-story-bars i:nth-child(2n){background:var(--p-color-cobalt-400)}
.p-story-bars i:nth-last-child(2){background:var(--p-color-cobalt-700)}

.p-story-orbit{position:relative;width:108px;height:108px;flex-shrink:0;display:grid;place-items:center}
.p-story-orbit svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-width:4;transform:rotate(-90deg)}
.p-story-ring-track{stroke:var(--p-color-ink-700)}
.p-story-ring-value{stroke:var(--p-color-lime-300);stroke-linecap:round}
.p-story-orbit b{font-size:32px;letter-spacing:-.065em;font-variant-numeric:tabular-nums;color:var(--p-color-white)}
.p-story-orbit b span{font-size:20px;color:inherit}


.p-story-feature-copy{padding:30px}
.p-story-feature-index{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:10px;letter-spacing:.075em;font-weight:750;color:var(--p-text-muted);text-transform:uppercase}
.p-story-feature-icon{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border-radius:16px;background:var(--p-surface-raised);border:1px solid var(--p-border);color:var(--p-icon-accent);transition:color var(--p-motion-fast),background var(--p-motion-fast),border-color var(--p-motion-fast)}
.p-story-feature-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.p-story-feature h3{font-size:22px;line-height:1.35;letter-spacing:-.04em;margin:28px 0 12px}
.p-story-feature p{font-size:14px;line-height:1.8;color:var(--p-text-muted);margin-bottom:0}
.p-story-method{border-top:1px solid var(--p-border)}
.p-story-method .p-story-heading{align-items:center}
.p-story-method h2{max-width:20ch}
.p-marketing .p-story-method-intro{flex:0 1 470px;font-size:14px;line-height:1.85;color:var(--p-text-muted);margin:0}
.p-story-walkthrough{display:grid;grid-template-columns:1fr 1.08fr;gap:44px;align-items:center}
.p-story-steps{border:0;padding:0;margin:0;min-width:0}
.p-story-steps legend{padding:0 0 16px;font-size:11px;color:var(--p-text-muted)}
.p-story-step{position:relative;display:block;cursor:pointer;margin-bottom:12px}
.p-story-step:last-child{margin-bottom:0}
.p-story-step input{position:absolute;top:26px;left:24px;width:1px;height:1px;opacity:0}
.p-story-step-card{position:relative;display:grid;grid-template-columns:32px 1fr 16px;gap:14px;padding:22px;border:1px solid transparent;border-radius:16px;transition:background var(--p-motion-feedback),border-color var(--p-motion-feedback),box-shadow var(--p-motion-feedback)}
.p-story-step-number{font-size:13px;font-weight:750;color:var(--p-text-muted);line-height:24px}
.p-story-step-card strong{display:block;font-size:15px;letter-spacing:-.025em;line-height:24px}
.p-story-step-body{display:block;font-size:12px;color:var(--p-text-muted);line-height:1.8;margin-top:6px}
.p-story-step-arrow{font-size:18px;color:var(--p-emphasis);opacity:0;transform:translate(-4px,0);transition:opacity var(--p-motion-feedback),transform var(--p-motion-feedback)}
.p-story-step input:checked+.p-story-step-card{border-color:var(--p-border);background:var(--p-surface);box-shadow:0 5px 20px #14172106}
.p-story-step input:checked+.p-story-step-card .p-story-step-number{color:var(--p-emphasis)}
.p-story-step input:checked+.p-story-step-card .p-story-step-arrow{opacity:1;transform:none}
.p-story-step input:focus-visible+.p-story-step-card{outline:3px solid var(--p-focus);outline-offset:3px}
.p-story-stage{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;position:relative;overflow:hidden;min-width:0;border-radius:24px;padding:28px;background:radial-gradient(ellipse at 90% 0,var(--p-color-cobalt-900),transparent 55%),var(--p-color-ink-900);color:var(--p-text);box-shadow:0 18px 40px #14172110}
.p-story-stage-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:9px;letter-spacing:.07em;color:var(--p-color-ink-200);padding-bottom:20px;border-bottom:1px solid var(--p-color-ink-700)}
.p-story-stage-heading>span:first-child{display:flex;align-items:center;gap:7px}
.p-story-status-dot{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--p-color-lime-300);box-shadow:0 0 14px #d8ff3e55}
.p-story-preview{grid-area:2 / 1;min-height:348px;padding:22px 0 0}
.p-story-preview-title{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--p-color-ink-200);gap:12px}
.p-story-preview-title>span:first-child{color:var(--p-color-lime-300);font-weight:650;text-transform:uppercase;letter-spacing:.075em}
.p-story-match{display:flex;justify-content:center;align-items:center;gap:40px;margin:22px 0 16px}
.p-story-match>div{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1}
.p-story-match strong{font-size:12px;font-weight:600;text-align:center}
.p-story-match-vs{font-size:11px;font-weight:600;color:var(--p-color-ink-400)}
.p-story-team{width:52px;height:56px;display:grid;place-items:center}
.p-story-team svg{width:38px;height:42px;fill:color-mix(in srgb,currentColor 8%,transparent);stroke:currentColor;stroke-width:1.4}
.p-story-team-home{color:var(--p-color-cobalt-300)}
.p-story-team-away{color:var(--p-color-lime-300)}
.p-story-field{max-width:400px;margin:0 auto;height:95px}
.p-story-field svg{display:block;width:100%;height:100%;stroke:var(--p-color-ink-700);fill:none;stroke-width:1}
.p-story-field .p-story-ball-path{stroke:var(--p-color-lime-300);stroke-width:1.5;stroke-dasharray:100}
.p-story-field .p-story-field-point{fill:var(--p-color-lime-300);stroke:var(--p-color-ink-900);stroke-width:3}
.p-story-market-tags{display:flex;justify-content:center;gap:8px;margin-top:12px}
.p-story-market-tags span,.p-story-context-factors span{padding:5px 9px;border:1px solid var(--p-color-ink-700);border-radius:6px;color:var(--p-color-ink-200);font-size:10px}
.p-marketing .p-story-preview-note{font-size:11px;line-height:1.7;color:var(--p-color-ink-200);margin:16px 0 18px}
.p-story-stage-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:9px;color:var(--p-color-ink-300);border-top:1px solid var(--p-color-ink-700);padding-top:16px}
.p-story-progress{display:flex;gap:5px;flex-shrink:0}
.p-story-progress i{width:20px;height:3px;border-radius:2px;background:var(--p-color-ink-700)}
.p-story-context-head{display:flex;align-items:center;justify-content:space-between;margin-top:26px}
.p-story-context-head>div:first-child>span{font-size:11px;color:var(--p-color-ink-200)}
.p-story-context-head strong{display:block;font-size:48px;line-height:1.2;letter-spacing:-.055em;font-weight:600;margin-top:5px}
.p-story-context-head strong small{font-size:12px;letter-spacing:0;font-weight:400;margin-left:8px;color:var(--p-color-ink-200)}
.p-story-sample-stamp{padding:12px 16px;border-radius:12px;background:var(--p-color-ink-800);display:flex;align-items:center;gap:10px}
.p-story-sample-stamp b{font-size:28px;line-height:1.2;color:var(--p-color-lime-300)}
.p-story-sample-stamp span{font-size:10px;line-height:1.5;max-width:8ch;color:var(--p-color-ink-200)}
.p-story-context-chart{position:relative;height:108px;margin:14px 0 16px;border-bottom:1px solid var(--p-color-ink-700)}
.p-story-context-chart .p-story-bars{gap:8px;padding:0}
.p-story-context-chart .p-story-bars i{background:var(--p-color-cobalt-500)}
.p-story-context-chart .p-story-bars i:nth-child(3n){background:var(--p-color-cobalt-300)}
.p-story-chart-baseline{position:absolute;left:0;right:0;top:32%;border-top:1px dashed var(--p-color-lime-300)}
.p-story-context-factors{display:flex;flex-wrap:wrap;gap:8px}
.p-story-final-pick{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:32px 0}
.p-story-final-pick>div:first-child>span{font-size:11px;color:var(--p-color-ink-200)}
.p-story-final-pick strong{display:block;font-size:32px;line-height:1.5;letter-spacing:-.045em;color:var(--p-color-lime-300);margin-top:4px}
.p-marketing .p-story-final-pick p{font-size:12px;margin:4px 0 0;color:var(--p-color-ink-200)}
.p-story-final-pick .p-story-orbit{width:124px;height:124px}
.p-story-orbit>small{position:absolute;bottom:-16px;font-size:9px;color:var(--p-color-ink-200);white-space:nowrap}
.p-story-threshold{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:var(--p-color-ink-800);border-radius:12px;font-size:12px;color:var(--p-color-ink-200)}
.p-story-threshold strong{font-size:24px;color:var(--p-color-white);letter-spacing:-.04em}
.p-marketing .p-story-limits{margin-top:20px;margin-bottom:0;max-width:100ch;font-size:12px}
/* Radios are the source of truth: keyboard navigation and no-script fallback are native. */
.p-story-preview~.p-story-preview{visibility:hidden;pointer-events:none}
.p-story-progress i:first-child{background:var(--p-color-lime-300)}
@supports selector(:has(*)){
  .p-story-walkthrough .p-story-preview{visibility:hidden;pointer-events:none}
  .p-story-walkthrough:has(#story-step-1:checked) #story-preview-1,.p-story-walkthrough:has(#story-step-2:checked) #story-preview-2,.p-story-walkthrough:has(#story-step-3:checked) #story-preview-3{visibility:visible;pointer-events:auto}
  .p-story-walkthrough .p-story-progress i{background:var(--p-color-ink-700)}
  .p-story-walkthrough:has(#story-step-1:checked) .p-story-progress i:nth-child(1),.p-story-walkthrough:has(#story-step-2:checked) .p-story-progress i:nth-child(-n+2),.p-story-walkthrough:has(#story-step-3:checked) .p-story-progress i{background:var(--p-color-lime-300)}
}
@media(hover:hover){
  .p-story-feature:hover{border-color:color-mix(in srgb,var(--p-emphasis) 32%,var(--p-border));box-shadow:0 8px 24px color-mix(in srgb,var(--p-text) 5%,transparent)}
  .p-story-feature:hover .p-story-feature-icon{background:var(--p-color-cobalt-700);border-color:var(--p-color-cobalt-700);color:var(--p-color-white)}
  .p-story-step:hover .p-story-step-card{background:color-mix(in srgb,var(--p-surface) 65%,transparent)}
}
@keyframes p-story-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes p-story-feature-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes p-story-bar{from{transform:scaleY(.15)}to{transform:scaleY(1)}}
@keyframes p-story-draw{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:no-preference){
  [data-story-reveal].is-in-view{animation:p-story-enter calc(var(--p-motion-page) + 160ms) var(--p-ease-enter) both}
  .p-story-feature[data-story-reveal].is-in-view{animation-name:p-story-feature-enter;animation-duration:var(--p-motion-enter)}
  .p-story-grid>.is-in-view:nth-child(2){animation-delay:80ms}.p-story-grid>.is-in-view:nth-child(3){animation-delay:160ms}
  :is(.p-story-walkthrough.is-in-view:has(#story-step-1:checked) #story-preview-1,.p-story-walkthrough.is-in-view:has(#story-step-2:checked) #story-preview-2,.p-story-walkthrough.is-in-view:has(#story-step-3:checked) #story-preview-3){animation:p-story-enter var(--p-motion-page) var(--p-ease-enter)}
  :is(.p-story-walkthrough.is-in-view:has(#story-step-1:checked) #story-preview-1,.p-story-walkthrough.is-in-view:has(#story-step-2:checked) #story-preview-2,.p-story-walkthrough.is-in-view:has(#story-step-3:checked) #story-preview-3) :is(.p-story-ball-path,.p-story-ring-value){animation:p-story-draw 700ms var(--p-ease-enter)}
  :is(.p-story-walkthrough.is-in-view:has(#story-step-1:checked) #story-preview-1,.p-story-walkthrough.is-in-view:has(#story-step-2:checked) #story-preview-2,.p-story-walkthrough.is-in-view:has(#story-step-3:checked) #story-preview-3) .p-story-bars i{animation:p-story-bar 480ms var(--p-ease-enter) var(--delay) both}
}
@media(prefers-reduced-motion:reduce){.p-story-feature,.p-story-feature-icon,.p-story-step-card,.p-story-step-arrow{transition:none}}
@media(max-width:1100px){.p-story-feature-copy{padding:22px}.p-story-orbit{width:94px;height:94px}.p-story-walkthrough{gap:24px}.p-story-stage{padding:24px}.p-story-heading{gap:28px}}
@media(max-width:900px) and (min-width:761px){.p-story-grid{gap:12px}.p-story-orbit{width:78px;height:78px}.p-story-orbit b{font-size:26px}.p-story-feature h3{font-size:18px}.p-story-feature-copy{padding:20px}.p-story-step-card{padding:16px;gap:8px}.p-story-final-pick strong{font-size:26px}}
@media(max-width:760px){
  .p-story-heading{display:block;margin-bottom:28px}.p-story-heading h2{max-width:24ch}.p-marketing .p-story-caption{max-width:none;margin-top:20px;font-size:12px}.p-story-spark{font-size:26px}
  .p-story-grid{grid-template-columns:1fr;gap:16px}.p-story-feature-copy{padding:26px}
  .p-story-walkthrough{grid-template-columns:1fr;gap:16px}.p-marketing .p-story-method-intro{margin-top:20px;max-width:60ch}.p-story-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p-story-step{margin:0}.p-story-step-card{display:flex;flex-direction:column;gap:6px;padding:14px;height:100%;border-color:var(--p-border)}.p-story-step-card strong{font-size:13px;line-height:1.55}.p-story-step-number{line-height:1.5}.p-story-step-body,.p-story-step-arrow{display:none}.p-story-steps legend{padding-bottom:12px}.p-story-stage{padding:24px}.p-story-preview{min-height:340px}
}
@media(max-width:540px){
  .p-story-feature{display:block;border-radius:20px}.p-story-feature-copy{padding:24px}.p-story-feature h3{font-size:22px;margin-top:14px}.p-story-feature p{font-size:13px}.p-story-orbit{width:108px;height:108px}.p-story-stage{border-radius:20px;padding:22px}.p-story-stage-heading{font-size:8px;gap:6px}.p-story-stage-heading .p-story-mini-badge{font-size:7px}.p-story-step-card{padding:12px 10px;gap:6px}.p-story-step-card strong{font-size:11px}.p-story-final-pick strong{font-size:28px}.p-story-final-pick .p-story-orbit{width:106px;height:106px}.p-story-context-chart .p-story-bars{gap:5px}.p-story-sample-stamp{padding:10px}.p-story-match{gap:20px}.p-story-preview-title{font-size:9px}.p-story-threshold{font-size:11px}.p-story-market-tags span{font-size:9px}.p-story-stage-footer{font-size:8px}
}
@media(forced-colors:active){.p-story-step input:checked+.p-story-step-card{outline:2px solid Highlight}.p-story-step input{opacity:1;width:12px;height:12px;left:5px;top:5px}.p-story-bars i{background:Highlight}.p-story-ring-value,.p-story-field .p-story-ball-path{stroke:Highlight}}


