.intake { display: grid; gap: var(--space-2); max-width: 34rem; }
.intake__label { font-weight: var(--fw-strong); font-size: var(--fs-body); }
.intake__row { display: grid; gap: var(--space-3); }
.intake__input { min-height: 56px; font-size: 1.1875rem; }
.intake__submit { min-height: 56px; font-size: 1.125rem; }
.intake.has-error .field__error { display: flex; }
@media (min-width: 600px) {
  .intake__row { grid-template-columns: 1fr auto; gap: 0; }
  .intake__input { border-right: 0; border-radius: var(--radius-control) 0 0 var(--radius-control); }
  .intake__input[aria-invalid="true"] { border-right: var(--border-control) solid var(--color-error-border); }
  .intake__submit { border-radius: 0 var(--radius-control) var(--radius-control) 0; }
}
.hero__or { margin-top: var(--space-5); display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); }
.three-steps { list-style: none; display: grid; gap: var(--space-5); counter-reset: step; }
.three-steps li { border-top: var(--rule-heavy) solid var(--color-heavy); padding-top: var(--space-4); counter-increment: step; }
.three-steps li::before { content: counter(step); display: block; font-family: var(--font-display); font-weight: var(--fw-mark); font-size: 2.5rem; line-height: .9; margin-bottom: var(--space-3); }
.three-steps h3 { font-size: var(--fs-h4); margin-bottom: var(--space-2); }
.three-steps p { color: var(--color-text-muted); }
@media (min-width: 900px) { .three-steps { grid-template-columns: repeat(3, 1fr); gap: var(--space-7); } }
.proof-line { margin-top: var(--space-7); padding: var(--space-5); background: var(--c-paper); border-left: 6px solid var(--color-heavy); max-width: 48rem; font-size: var(--fs-lead); line-height: 1.4; }
.proof-line strong { font-weight: var(--fw-strong); }
.dphone-stage { perspective: 1400px; display: flex; justify-content: center; padding: var(--space-4) 0 var(--space-6); }
.dphone {
  position: relative; width: min(17.5rem, 76vw); aspect-ratio: 9 / 17;
  background: var(--c-iron); border-radius: var(--radius-device); padding: 10px;
  transform: rotateY(-16deg) rotateX(5deg) rotateZ(1.5deg);
  box-shadow: 9px 10px 0 var(--c-iron-edge), 30px 44px 60px rgba(23, 34, 44, .22);
}
.dphone--flip { transform: rotateY(16deg) rotateX(5deg) rotateZ(-1.5deg); box-shadow: -9px 10px 0 var(--c-iron-edge), -30px 44px 60px rgba(23, 34, 44, .22); }
.dphone__screen { position: relative; height: 100%; border-radius: 29px; overflow: hidden; background: var(--c-paper); font-size: .8125rem; line-height: 1.35; color: var(--c-iron); display: flex; flex-direction: column; }
.dphone__screen::before { content: ""; position: absolute; top: 9px; left: 50%; width: 30%; height: 18px; margin-left: -15%; background: var(--c-iron); border-radius: 12px; z-index: 2; }
.dphone__bar { position: relative; z-index: 1; padding: 36px 14px 10px; background: var(--c-galvanized); border-bottom: 1px solid var(--c-rule); font-weight: var(--fw-strong); font-size: .8125rem; display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.dphone__bar span { font-weight: var(--fw-medium); color: var(--c-zinc); font-size: .75rem; }
.dphone__body { padding: 12px; display: grid; gap: 10px; align-content: start; flex: 1; }
.dphone figcaption, .demo-row .figure__caption { text-align: center; }
.mini-h { margin: 0; font-family: var(--font-display); font-weight: var(--fw-display); font-size: 1.5rem; line-height: 1; }
.mini-sub { margin: 0; color: var(--c-zinc); }
.mini-banner { background: var(--c-iron); color: var(--c-paper); padding: 10px 12px 12px; border-top: 3px solid var(--c-paper); box-shadow: 0 -1px 0 var(--c-iron); }
.mini-banner__row { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: .75rem; }
.mini-banner__btn { border: 2px solid var(--c-paper); border-radius: var(--radius-control); padding: 4px 8px; }
.est-field { border: 2px solid var(--c-zinc); border-radius: var(--radius-control); padding: 7px 9px; font-weight: var(--fw-medium); }
.est-field small { display: block; font-weight: var(--fw-medium); color: var(--c-zinc); font-size: .6875rem; }
.est-plan { width: 100%; height: auto; }
.est-plan .rp-line { stroke-width: 3; }
.est-plan .rp-trace { stroke-width: 5; stroke-dasharray: 900; stroke-dashoffset: 0; }
.est-result { background: var(--c-iron); color: var(--c-paper); border-radius: 6px; padding: 10px 12px; }
.est-result small { display: block; color: var(--c-on-iron-2); font-size: .6875rem; }
.est-result strong { display: block; font-family: var(--font-display); font-weight: var(--fw-mark); font-size: 1.375rem; line-height: 1.1; }
.lead-list { list-style: none; display: grid; gap: 8px; }
.lead-list li { background: var(--c-galvanized); border-left: 4px solid var(--c-rule); padding: 8px 10px; }
.lead-list li strong { display: block; }
.lead-list li span { color: var(--c-zinc); font-size: .75rem; }
.lead-list .lead-list__new { background: var(--c-paper); border: 2px solid var(--c-iron); border-left: 8px solid var(--c-iron); }
.lead-list__badge { float: right; border: 1.5px solid var(--c-iron); color: var(--c-iron); font-size: .6875rem; font-weight: var(--fw-strong); padding: 1px 6px; border-radius: var(--radius-control); }
.lead-list__actions { display: flex; gap: 6px; margin-top: 6px; }
.lead-list__actions b { border: 2px solid var(--c-iron); border-radius: var(--radius-control); padding: 2px 10px; font-size: .75rem; }
.call-card { background: var(--c-iron); color: var(--c-paper); border-radius: 8px; padding: 12px; display: grid; }
.call-card__num { font-weight: var(--fw-strong); font-size: 1rem; }
.call-card__status { display: grid; }
.call-card__status > span { grid-area: 1 / 1; color: var(--c-on-iron-2); font-size: .75rem; }
.call-card__status .s-first { opacity: 0; }
.dphone .bubble { font-size: .75rem; padding: 9px 11px; border-radius: 14px 14px 14px 4px; background: var(--c-galvanized); }
.dphone .bubble p { margin: 0 0 4px; }
.dphone .bubble__flag { padding-left: 6px; }
.demo-rows { display: grid; gap: var(--space-8); }
.demo-row { display: grid; gap: var(--space-5); align-items: center; }
.demo-row__tier { display: inline-block; font-size: var(--fs-small); font-weight: var(--fw-strong); border: 2px solid var(--c-iron); padding: 2px 10px; border-radius: var(--radius-control); margin-bottom: var(--space-4); }
.demo-row .h2 { font-size: var(--fs-row); margin-bottom: var(--space-4); }
.demo-row p { color: var(--color-text-muted); max-width: var(--measure-narrow); }
.demo-replay { display: inline-flex; align-items: center; min-height: var(--target-min); padding: 0 var(--space-3); margin-top: var(--space-2); background: none; border: 0; font: inherit; font-size: var(--fs-small); font-weight: var(--fw-strong); color: var(--c-iron); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; cursor: pointer; }
.js-no-motion .demo-replay, .no-js .demo-replay { display: none; }
@media (min-width: 900px) {
  .demo-row { grid-template-columns: 1fr 1fr; gap: var(--space-9); }
  .demo-row--flip .demo-row__art { order: -1; }
  .demo-rows { gap: var(--space-9); }
}
.dphone[data-demo="armed"] .est-field__value,
.dphone[data-demo="armed"] .est-result,
.dphone[data-demo="armed"] .est-plan .rp-facet--hi,
.dphone[data-demo="armed"] .lead-list__new,
.dphone[data-demo="armed"] .lead-list__badge,
.dphone[data-demo="armed"] .bubble,
.dphone[data-demo="armed"] .call-card__status .s-last { opacity: 0; }
.dphone[data-demo="armed"] .call-card__status .s-first { opacity: 1; }
.dphone[data-demo="armed"] .est-plan .rp-trace { stroke-dashoffset: 900; }
.dphone[data-demo="armed"] .lead-list { transform: translateY(calc(-1 * var(--push, 64px))); }
.dphone[data-demo="armed"] .lead-list__new { transform: translateY(0); }
@media (prefers-reduced-motion: no-preference) {
  .dphone[data-demo="playing"] .est-field__value { animation: d-fade 200ms var(--ease) 0ms both; }
  .dphone[data-demo="playing"] .est-plan .rp-trace { animation: d-draw 600ms var(--ease) 250ms both; }
  .dphone[data-demo="playing"] .est-plan .rp-facet--hi { animation: d-fade 150ms linear 850ms both; }
  .dphone[data-demo="playing"] .est-result { animation: d-rise 280ms var(--ease) 1000ms both; }
  .dphone[data-demo="playing"] .lead-list { animation: d-push 280ms var(--ease) 0ms both; }
  .dphone[data-demo="playing"] .lead-list__new { animation: d-fade 240ms var(--ease) 120ms both; }
  .dphone[data-demo="playing"] .lead-list__badge { animation: d-settle 180ms var(--ease) 420ms both; }
  .dphone[data-demo="playing"] .call-card__status .s-first { animation: d-out 180ms var(--ease) 400ms both; }
  .dphone[data-demo="playing"] .call-card__status .s-last { animation: d-fade 180ms var(--ease) 400ms both; }
  .dphone[data-demo="playing"] .bubble { animation: d-rise 280ms var(--ease) 800ms both; }
}
@keyframes d-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes d-out { from { opacity: 1; } to { opacity: 0; } }
@keyframes d-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes d-push { from { transform: translateY(calc(-1 * var(--push, 64px))); } to { transform: none; } }
@keyframes d-settle { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: none; } }
@keyframes d-draw { from { stroke-dashoffset: 900; } to { stroke-dashoffset: 0; } }
.founders { list-style: none; display: grid; gap: var(--space-5); }
.founders li { border-top: var(--rule-heavy) solid var(--color-heavy); padding-top: var(--space-4); }
.founders strong { display: block; font-size: var(--fs-h4); line-height: var(--lh-snug); }
.founders span { color: var(--color-text-muted); }
@media (min-width: 768px) { .founders { grid-template-columns: repeat(3, 1fr); gap: var(--space-6); } }
.bs { padding: var(--space-9) 0 var(--section-y); }
.bs__status { max-width: 22ch; margin-bottom: var(--space-5); }
.bs__lead { margin-bottom: var(--space-4); }
.bs .bs__elapsed { font-size: var(--fs-small); color: var(--color-text-muted); font-variant-numeric: tabular-nums; margin-bottom: var(--space-7); }
.bs__elapsed:empty { display: none; }
.bs__or { border-top: var(--rule-heavy) solid var(--color-heavy); padding-top: var(--space-5); max-width: 34rem; }
.bs__or p { color: var(--color-text-muted); }
.bs [hidden] { display: none; }
