/* Mobile-first approved refinements, 5 September. No copy/offer logic here. */
.case-story p { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; }
.case-story .case-story-mark { width: 28px; height: 28px; font-size: 30px; line-height: 28px; }
.case-story-check img { display: block; width: 26px; height: 26px; object-fit: contain; }
.format-copy > .eyebrow {
  font-size: clamp(20px, 5.6vw, 26px);
  line-height: 1.25;
  letter-spacing: .015em;
  text-transform: uppercase;
  max-width: 100%;
  margin-bottom: 22px;
}
.offer-copy .offer-guarantee {
  margin-top: 36px;
  padding: 22px 0 0;
  border-top: 1px solid rgba(9, 11, 12, .2);
}
.offer-guarantee > strong {
  display: block;
  margin-bottom: 14px;
  font-size: clamp(32px, 9vw, 48px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -.035em;
  color: var(--ink);
}
.offer-copy > .cta[data-cta-source="site_offer"],
#final .final-copy-flow .day-zero-action .day-zero-cta {
  display: flex;
  width: 100%;
  max-width: 700px;
  min-height: 84px;
  padding: 22px;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  white-space: normal;
}
.offer-copy > .cta[data-cta-source="site_offer"] > span:first-child,
#final .final-copy-flow .day-zero-action .day-zero-cta > span:first-child {
  min-width: 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .035em;
  line-height: 1.3;
  overflow-wrap: normal;
}
.offer-copy > .cta[data-cta-source="site_offer"] .arrow,
#final .final-copy-flow .day-zero-action .day-zero-cta .arrow { flex: 0 0 28px; width: 28px; height: 28px; }
.system-node.figma-support-ready { padding-right: 42px; }
.system-node.figma-support-ready::after { content: none; }
.system-node.figma-support-ready > .fs-icon {
  position: absolute;
  right: 6px;
  top: calc(50% - 16px);
  width: 26px;
  height: 32px;
}
.system-node.figma-support-ready .fs-cross { font-size: 30px; line-height: 30px; }
.system-node.figma-support-ready:not(.is-complete) .fs-cross { animation: none; opacity: 1; scale: 1; }
.system-node.figma-support-ready:not(.is-complete) .fs-check { animation: none; opacity: 0; scale: .72; }
.system-node.figma-support-ready.is-complete .fs-cross,
.system-node.figma-support-ready.is-complete .fs-check { animation-play-state: running; }
#offer .fs-dot { position: relative; }
#offer .fs-dot-wave { display: block; position: absolute; inset: 0; margin: 0; border-radius: 50%; background: #4aff8a; box-shadow: 0 0 9px rgba(74,255,138,.65); visibility: hidden; }
#offer .is-wave-ready .fs-dot-wave { visibility: visible; }
#offer .is-wave-ready .fs-dot { background: transparent !important; box-shadow: none !important; }
@supports (overflow: clip) {
  /* Unlike hidden, clip doesn't become the sticky ring's scroll container. */
  body.offer-popup-open { overflow: clip; }
}
@media (max-width: 374px) {
  #outcome-ring-stage .final-ring-a .day-zero-modules span { padding: 2px 5px; line-height: 1.05; }
}
@media (prefers-reduced-motion: reduce) {
  .system-node.figma-support-ready .fs-cross { animation: none !important; opacity: 0 !important; }
  .system-node.figma-support-ready .fs-check { animation: none !important; opacity: 1 !important; scale: 1 !important; }
}
@media (min-width: 821px) {
  .format-copy > .eyebrow { font-size: 26px; }
  .offer-copy > .cta[data-cta-source="site_offer"],
  #final .final-copy-flow .day-zero-action .day-zero-cta { min-height: 96px; padding: 26px 30px; }
  .offer-copy > .cta[data-cta-source="site_offer"] > span:first-child,
  #final .final-copy-flow .day-zero-action .day-zero-cta > span:first-child { font-size: 18px; }
}
