.testimonials { columns: 2; column-gap: var(--measure-md); }
.testimonial {
  break-inside: avoid; margin: 0 0 var(--measure-md); padding: var(--measure-2xl); display: flex; flex-direction: column; gap: var(--measure-lg);
  background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg);
  transition: transform 0.35s var(--ease), box-shadow 0.35s;
}
.testimonial:hover { transform: translateY(-5px) rotate(-0.4deg); box-shadow: var(--shadow-paper); }
.testimonial--primary { background: var(--color-primary); color: var(--color-on-primary); border-color: var(--color-primary); }
.testimonial--accent { background: var(--color-accent); color: var(--color-on-accent); border-color: var(--color-accent); }
.testimonial blockquote { margin: 0; font-size: var(--text-lg); line-height: var(--leading-snug); }
.testimonial figcaption { display: flex; gap: var(--measure-sm); align-items: center; }
.testimonial img { width: 52px; height: 52px; border-radius: var(--radius-round); object-fit: cover; }
.testimonial__role { font-size: var(--text-sm); opacity: 0.8; }

.case-meta { margin: 0; display: grid; gap: var(--measure-md); font-size: var(--text-sm); }
.case-meta dt { color: var(--color-muted); }
.case-meta dd { margin: 0; font-weight: var(--weight-semibold); }
.case-shot { padding-bottom: var(--space-section); }
.case-shot .shot { --shot-max: 50cqi; }
.case-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--measure-md); padding-bottom: var(--space-section); }
.case-stats .card { padding: var(--measure-2xl); }
.case-stats strong { display: block; font-size: var(--text-4xl); font-weight: var(--weight-bold); letter-spacing: var(--tracking-numeral); color: var(--color-primary); line-height: var(--leading-none); }
.case-stats p { color: var(--color-muted); margin-top: var(--measure-xs); }
.case-story { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: var(--space-layout); align-items: start; padding-bottom: var(--space-section); }
.case-story > div:last-child { display: grid; gap: var(--measure-lg); font-size: var(--text-lg); }

.day-picker { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--measure-sm); }
.day {
  font: inherit; color: inherit; text-align: left; cursor: pointer; display: flex; flex-direction: column; gap: var(--measure-xs);
  background: var(--color-surface); border: 1.5px solid var(--color-line); border-radius: var(--radius-lg); padding: var(--measure-xl); min-height: 200px;
  transition: all 0.35s var(--ease);
}
.day:hover { border-color: var(--color-ink); }
.day[aria-pressed="true"] { background: var(--color-dark); color: var(--color-on-dark); border-color: var(--color-dark); }
@media (min-width: 961px) {
  .day[aria-pressed="true"] { transform: translateY(-6px); }
}
.day strong { font-size: var(--text-xl); letter-spacing: var(--tracking-heading); }
.day span { color: var(--color-muted); font-size: var(--text-sm); }
.day[aria-pressed="true"] span { color: var(--color-dark-muted); }

.sprint-bar { display: flex; height: 96px; border-radius: var(--radius-lg); overflow: hidden; gap: var(--measure-2xs); }
.sprint-bar button {
  font: inherit; cursor: pointer; border: 0; text-align: left; padding: var(--measure-lg) var(--measure-xl); display: flex; flex-direction: column; justify-content: space-between;
  font-weight: var(--weight-semibold); color: var(--color-ink); background: var(--color-tint); transition: background 0.3s, color 0.3s;
}
.sprint-bar button:first-child { flex: 4; }
.sprint-bar button:last-child { flex: 1; background: var(--color-accent-soft); }
.sprint-bar button strong { font-size: var(--text-2xl); letter-spacing: var(--tracking-heading); }
.sprint-bar button[aria-selected="true"] { background: var(--color-primary); color: var(--color-on-primary); }
.sprint-bar button:last-child[aria-selected="true"] { background: var(--color-accent); color: var(--color-on-accent); }
.sprint-panel { margin-top: var(--measure-lg); padding: var(--space-panel); display: grid; grid-template-columns: 1fr 1.4fr; gap: var(--measure-3xl); }
.sprint-panel p { font-size: var(--text-lg); }
.sprint-panel:not([hidden]), .systems-panel:not([hidden]) { animation: swap-in 0.45s var(--ease) both; }

.systems { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--measure-sm); }
.system { padding: var(--measure-xl); display: grid; gap: var(--measure-2xs); }
.system strong { font-size: var(--text-lg); }
.system span { color: var(--color-muted); font-size: var(--text-sm); }
.flow { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: var(--measure-lg); align-items: stretch; }
.flow__node { border-radius: var(--radius-lg); padding: var(--measure-2xl); display: flex; flex-direction: column; gap: var(--measure-xs); }
.flow__node--primary { background: var(--color-primary); color: var(--color-on-primary); }
.flow__node--dark { background: var(--color-dark); color: var(--color-on-dark); }
.flow__node strong { font-size: var(--text-2xl); letter-spacing: var(--tracking-heading); }
.flow__node span { opacity: 0.85; }
.flow__link { align-self: center; display: grid; justify-items: center; gap: var(--measure-2xs); font-weight: var(--weight-semibold); color: var(--color-accent-text); font-size: var(--text-sm); }
.flow__link svg { width: 40px; height: 40px; }

.suggest-box { padding: var(--measure-3xl); display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--measure-3xl); align-items: center; }
.price-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--measure-md); align-items: stretch; padding-block: var(--measure-3xl) var(--space-section); }
.price-tier {
  background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-xl); padding: var(--measure-3xl);
  display: flex; flex-direction: column; gap: var(--measure-sm); transition: all 0.45s var(--ease);
}
.price-tier.is-suggested { background: var(--color-primary); color: var(--color-on-primary); border-color: var(--color-primary); transform: translateY(-10px); box-shadow: var(--shadow-paper-primary); }
.price-tier__head { display: flex; justify-content: space-between; align-items: center; gap: var(--measure-sm); }
.price-tier__name { font-size: var(--text-xl); }
.price-tier__flag { display: none; background: var(--color-accent); color: var(--color-on-accent); }
.price-tier.is-suggested .price-tier__flag { display: inline-block; animation: swap-in 0.4s var(--ease) both; }
.price-tier__price { font-size: var(--text-5xl); font-weight: var(--weight-bold); letter-spacing: var(--tracking-numeral); line-height: var(--leading-none); }
.price-tier__price small { display: inline-block; font-size: var(--text-lg); letter-spacing: var(--tracking-normal); opacity: 0.7; }
.price-tier__meta { opacity: 0.75; }
.price-tier .ticks li { border-color: color-mix(in srgb, currentcolor 14%, transparent); }
.price-tier.is-suggested .ticks svg { color: var(--color-accent); }
.price-tier .btn { margin-top: auto; align-self: flex-start; }
.price-tier .btn--accent { display: none; }
.price-tier.is-suggested .btn--accent { display: inline-flex; }
.price-tier.is-suggested .btn--secondary { display: none; }

.policy-cards { padding-bottom: var(--space-section); }
.policy-cards .card { padding: var(--measure-xl); }
.policy-cards p { color: var(--color-muted); margin-top: var(--measure-xs); font-size: var(--text-sm); }

.underline-tabs { display: flex; flex-wrap: wrap; gap: var(--measure-2xs) var(--measure-xl); border-bottom: 1px solid var(--color-line); margin: var(--measure-xl) 0 var(--measure-xs); }
.underline-tabs button {
  font: inherit; cursor: pointer; background: none; border: 0; border-bottom: 3px solid transparent;
  padding: var(--measure-md) var(--measure-2xs); font-size: var(--text-lg); font-weight: var(--weight-semibold); color: var(--color-muted); transition: color 0.25s, border-color 0.25s;
}
.underline-tabs button:hover { color: var(--color-ink); }
.underline-tabs button[aria-selected="true"] { color: var(--color-ink); border-color: var(--color-primary); }
.price-table { width: 100%; border-collapse: collapse; font-size: var(--text-md); }
.price-table:not([hidden]) { animation: swap-in 0.45s var(--ease) both; }
.price-table th, .price-table td { padding: var(--measure-lg) 0; border-top: 1px solid var(--color-line); text-align: left; font-weight: var(--weight-regular); }
.price-table td { text-align: right; font-weight: var(--weight-semibold); color: var(--color-primary-text); }
.price-table tr { transition: background 0.2s; }
.price-table tr:hover { background: color-mix(in srgb, var(--color-tint) 50%, transparent); }
.price-table caption { caption-side: bottom; text-align: left; color: var(--color-muted); font-size: var(--text-sm); padding-top: var(--measure-md); }

.method { padding-bottom: var(--space-section); }
.method__step {
  position: sticky; display: grid; grid-template-columns: 200px minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-block); align-items: start;
  border-radius: var(--radius-xl); padding: var(--space-panel-lg); min-height: 300px; margin-bottom: var(--measure-xl);
  border: 1px solid var(--color-line); box-shadow: var(--shadow-stack);
}
.method__step:nth-child(1) { top: 96px; background: var(--color-surface); }
.method__step:nth-child(2) { top: 118px; background: var(--color-tint); }
.method__step:nth-child(3) { top: 140px; background: var(--color-surface); }
.method__step:nth-child(4) { top: 162px; background: var(--color-primary); color: var(--color-on-primary); border-color: var(--color-primary); }
.method__step:nth-child(5) { top: 184px; background: var(--color-tint); }
.method__step:nth-child(6) { top: 206px; background: var(--color-dark); color: var(--color-on-dark); border-color: var(--color-dark); }
.method__num { font-size: clamp(5.625rem, 10vw, 9.375rem); line-height: var(--leading-numeral); font-weight: var(--weight-bold); letter-spacing: -0.06em; color: var(--color-primary); }
.method__step:nth-child(4) .method__num, .method__step:nth-child(6) .method__num { color: var(--color-accent); }
.method__step p { font-size: var(--text-lg); opacity: 0.85; }

.calendar { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--measure-2xs); margin-top: var(--measure-lg); }
.calendar span {
  height: 64px; border-radius: var(--radius-sm); background: var(--color-tint);
  display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start;
  padding: var(--measure-xs); font-size: var(--text-2xs); color: var(--color-muted);
}
.calendar span i { display: flex; gap: var(--measure-2xs); }
.calendar span b { width: 9px; height: 9px; border-radius: var(--radius-round); background: var(--color-accent); }
.calendar span.is-hit { color: var(--color-ink); font-weight: var(--weight-semibold); }
.calendar-total { margin-top: var(--measure-xl); color: var(--color-muted); }
.calendar-total strong { display: block; font-size: var(--text-5xl); line-height: var(--leading-none); letter-spacing: var(--tracking-numeral); color: var(--color-accent); }
.calendar-panel:not([hidden]) { animation: swap-in 0.45s var(--ease) both; }
.calendar-panel p { margin-top: var(--measure-md); color: var(--color-muted); }


.owner-box { padding: var(--space-panel-lg); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: var(--space-block); }
.owner-box .ticks { font-size: var(--text-lg); }

.founder { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: var(--space-layout); align-items: center; padding-bottom: var(--space-section); }
.founder__role { color: var(--color-accent-text); font-weight: var(--weight-semibold); margin-top: var(--measure-xs); }
.difference { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--measure-md); }
.difference div { border-top: 2px solid var(--color-accent); padding-top: var(--measure-lg); }
.difference p { margin-top: var(--measure-xs); font-size: var(--text-sm); color: var(--color-muted); }
.values .box { padding: var(--measure-2xl); display: grid; gap: var(--measure-xs); align-content: start; }
.values p { color: var(--color-muted); }
.values__num { font-family: var(--font-mono); font-size: var(--text-xs); color: var(--color-accent-text); }

.newsletter-card { padding: var(--measure-3xl); }
@media (min-width: 961px) {
  .box.newsletter-card { position: sticky; top: calc(var(--header-h) + 40px); }
}
.newsletter-card h2 + p { margin-block: var(--measure-xs) var(--measure-lg); }
.newsletter-card__field { display: grid; gap: var(--measure-xs); }
.newsletter-card label { font-size: var(--text-xs); font-weight: var(--weight-semibold); }
.newsletter-card input[type="email"] {
  font: inherit; font-size: var(--text-md); color: var(--color-ink); background: var(--color-surface);
  border: 1px solid var(--color-line); border-radius: var(--radius-sm); padding: var(--measure-md); width: 100%;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.topics { display: grid; gap: var(--measure-sm); margin-top: var(--space-block); }
.topic { padding: var(--measure-xl); display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: var(--measure-xl); transition: border-color 0.3s, transform 0.3s var(--ease); }
.topic:hover { border-color: var(--color-primary); transform: translateX(6px); }
.topic p { color: var(--color-muted); }

.prose { max-width: 760px; display: grid; gap: var(--measure-md); padding-bottom: var(--space-section); }
.prose h2 { margin-top: var(--measure-xl); }
.prose ul { padding-left: var(--measure-xl); display: grid; gap: var(--measure-xs); }
.prose a { color: var(--color-primary-text); }

@media (max-width: 960px) {
  .testimonials { columns: 1; }
  .case-stats, .day-picker, .systems { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-story, .sprint-panel, .suggest-box, .owner-box, .founder, .topic, .flow { grid-template-columns: 1fr; }
  .price-tiers { grid-template-columns: minmax(0, 1fr); }
  .suggest-box, .owner-box, .sprint-panel { gap: var(--measure-xl); }
  .method__step { grid-template-columns: 1fr; gap: var(--measure-md); position: relative; top: auto !important; }
  .difference { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .calendar { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .flow__link::before { content: ""; width: 2.5px; height: var(--measure-lg); border-radius: var(--radius-round); background: currentColor; }
  .flow__link svg { order: 1; transform: rotate(90deg); }
}

@media (max-width: 600px) {
  .case-stats, .day-picker, .systems, .difference { grid-template-columns: 1fr; }
  .sprint-bar { height: auto; flex-direction: column; }
}

.values { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--measure-2xl); }
.values > * { grid-column: span 2; }
.values > :nth-child(4), .values > :nth-child(5) { grid-column: span 3; }
@media (max-width: 960px) {
  .values { grid-template-columns: 1fr 1fr; }
  .values > *, .values > :nth-child(4), .values > :nth-child(5) { grid-column: auto; }
}
@media (max-width: 600px) {
  .values { grid-template-columns: 1fr; }
}

.founder__photo { aspect-ratio: 2 / 3; }
.founder__photo img { object-position: center top; }
.founder__bio { display: grid; gap: var(--measure-md); margin-top: var(--measure-lg); }
.founder__bio p:not(.lede) { color: var(--color-muted); font-size: var(--text-lg); }

.talks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--measure-3xl) var(--measure-2xl); }
.talk-card { display: flex; flex-direction: column; gap: var(--measure-xs); }
.talk-card__event { font-family: var(--font-mono); font-size: var(--text-xs); color: var(--color-accent-text); margin-top: var(--measure-xs); }
.talk-card__play { display: block; width: 100%; height: 100%; padding: 0; border: 0; cursor: pointer; background: none; }
.talk-card__play img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.8s var(--ease), filter 0.4s; }
.talk-card__play:hover img { transform: scale(1.04); filter: brightness(0.85); }
.talk-card__icon {
  position: absolute; left: var(--measure-lg); bottom: var(--measure-lg); width: 64px; height: 64px; border-radius: var(--radius-round);
  display: grid; place-items: center; background: var(--color-accent); color: var(--color-on-accent);
  box-shadow: var(--shadow-float); transition: transform 0.35s var(--ease);
}
.talk-card__play:hover .talk-card__icon { transform: scale(1.1); }
.talk-card__play:focus-visible { outline: none; }
.talk-card__media:has(.talk-card__play:focus-visible) { outline: 3px solid var(--color-accent-text); outline-offset: 3px; }
.talk-card__media--text { display: grid; place-items: center; background: var(--color-primary); }
.talk-card__media--text span { color: var(--color-on-primary); font-size: var(--text-6xl); font-weight: var(--weight-bold); letter-spacing: var(--tracking-display); }

@media (max-width: 760px) {
  .talks { grid-template-columns: 1fr; }
}

.kickoff { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: var(--space-block); align-items: start; }
.kickoff__intro { position: sticky; top: calc(var(--header-h) + var(--measure-3xl)); display: grid; gap: var(--measure-md); }
.kickoff__cta { display: grid; gap: var(--measure-xs); justify-items: start; margin-top: var(--measure-xs); }
.kickoff__cta .muted { font-size: var(--text-sm); }
.kickoff__paper { padding: var(--measure-3xl); }
.kickoff__meta { display: flex; flex-wrap: wrap; column-gap: var(--measure-md); justify-content: space-between; font-family: var(--font-mono); font-size: var(--text-xs); color: var(--color-muted); padding-bottom: var(--measure-md); border-bottom: 1px solid var(--color-line); margin-bottom: var(--measure-2xs); }
.kickoff__paper ul { list-style: none; }
.kickoff__paper li { display: grid; grid-template-columns: 30px 1fr auto; gap: var(--measure-md); align-items: start; padding: var(--measure-lg) var(--measure-xs); margin: 0 calc(-1 * var(--measure-xs)); border-bottom: 1px dashed var(--color-line); border-radius: var(--radius-sm); transition: background 0.25s; }
.kickoff__paper li:hover { background: color-mix(in srgb, var(--color-tint) 50%, transparent); }
.kickoff__paper li p { color: var(--color-muted); font-size: var(--text-sm); margin-top: var(--measure-2xs); }
.kickoff__tick { width: 24px; height: 24px; border-radius: var(--radius-sm); background: var(--color-primary); color: var(--color-on-primary); display: grid; place-items: center; margin-top: 2px; }
.kickoff__owners { display: grid; gap: var(--measure-2xs); justify-items: end; text-align: right; }
.kickoff__owners .tag { white-space: nowrap; }

@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    .kickoff__paper li { animation: rise linear both; animation-timeline: view(); animation-range: entry 0% entry 70%; }
  }
}

@media (max-width: 960px) {
  .kickoff { grid-template-columns: 1fr; gap: var(--measure-2xl); }
  .kickoff__intro { position: static; }
  .kickoff__paper { --paper-transform: none; padding: var(--measure-2xl) var(--measure-xl); }
  .kickoff__meta { font-size: var(--text-2xs); }
  .kickoff__paper li { grid-template-columns: 28px 1fr; }
  .kickoff__owners { grid-column: 2; justify-items: start; text-align: left; }
  .kickoff__owners .tag { white-space: normal; }
}
