/* One shipped platform, three concrete applications. Only Progress is affected. */
#progress {
  --progress-lilac: #c9b7dc;
  --progress-mint: #b9dbca;
  --progress-branch: #5c4d69;
}
#progress .pitch-heading { margin-bottom: clamp(32px, 3.2vw, 44px); }
#progress .pitch-progress-network {
  display: grid;
  grid-template-columns: minmax(150px, .9fr) minmax(0, 4fr);
  align-items: center;
  gap: clamp(58px, 7vw, 96px);
}
#progress .pitch-progress-platform { position: relative; text-align: center; }
#progress .pitch-progress-ab {
  display: block;
  color: var(--progress-lilac);
  font-size: clamp(44px, 4.4vw, 62px);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -.07em;
}
#progress .pitch-progress-platform h3 {
  margin: 18px 0 0;
  font-size: clamp(18px, 1.55vw, 23px);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -.025em;
}
#progress .pitch-progress-shipped { margin-top: 12px; color: var(--progress-lilac); font-size: 14px; line-height: 1.4; }
#progress .pitch-progress-components { margin-top: 20px; color: var(--pitch-soft); font-size: 13px; line-height: 1.8; }
#progress .pitch-progress-components > span { display: block; }
#progress .pitch-progress-apps {
  position: relative;
  display: grid;
  grid-template-rows: 110px 210px 110px;
}
#progress .pitch-progress-apps::before {
  content: '';
  position: absolute;
  left: -30px;
  top: 55px;
  bottom: 55px;
  width: 1px;
  background: linear-gradient(var(--progress-branch), #8b78a2 50%, var(--progress-branch));
}
#progress .pitch-progress-apps::after {
  content: '';
  position: absolute;
  left: calc(-1 * clamp(58px, 7vw, 96px));
  top: 50%;
  width: calc(clamp(58px, 7vw, 96px) - 30px);
  height: 1px;
  background: var(--progress-branch);
}
#progress .pitch-progress-app {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) minmax(200px, .65fr);
  gap: 20px;
  align-items: center;
  min-width: 0;
  padding: 18px 0 18px 8px;
}
#progress .pitch-progress-app::before {
  content: '';
  position: absolute;
  left: -30px;
  top: 50%;
  width: 21px;
  height: 1px;
  background: var(--progress-branch);
}
#progress .pitch-progress-icon {
  display: block;
  width: 30px;
  height: 30px;
  flex: none;
  color: var(--progress-lilac);
  background: currentColor;
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
}
#progress .pitch-progress-icon--microscope { mask-image: url('/assets/pitch-20261029/progress/microscope.svg'); }
#progress .pitch-progress-icon--trees { mask-image: url('/assets/pitch-20261029/progress/trees.svg'); }
#progress .pitch-progress-icon--search { mask-image: url('/assets/pitch-20261029/progress/search.svg'); }
#progress .pitch-progress-icon--user-round { mask-image: url('/assets/pitch-20261029/progress/user-round.svg'); }
#progress .pitch-progress-product h3 { margin: 0; color: var(--ink); font-size: clamp(21px, 1.9vw, 27px); line-height: 1.25; letter-spacing: -.025em; font-weight: 400; }
#progress .pitch-progress-product h3 a { display: flex; align-items: center; gap: 10px; width: fit-content; min-height: 44px; color: inherit; text-decoration: none; }
#progress .pitch-progress-product h3 a:hover { color: var(--progress-lilac); }
#progress .pitch-progress-product h3 .arrow { width: 13px; height: 13px; color: var(--pitch-soft); }
#progress .pitch-progress-product > p:not(.pitch-progress-live):not(.pitch-progress-category) { margin-top: 7px; color: var(--pitch-text); font-size: 15px; line-height: 1.5; }
#progress .pitch-progress-evidence { align-self: center; }
#progress .pitch-progress-evidence strong { color: var(--progress-lilac); font-size: 15px; line-height: 1.5; font-weight: 500; }
#progress .pitch-progress-evidence p { margin-top: 7px; color: var(--pitch-soft); font-size: 13px; line-height: 1.55; }
#progress .pitch-progress-evidence p > span { display: block; }
#progress .pitch-progress-gogreen {
  border-top: 1px solid #33453c;
  border-bottom: 1px solid #33453c;
  background: linear-gradient(90deg, transparent 35%, rgb(185 219 202 / 3%));
}
#progress .pitch-progress-gogreen > .pitch-progress-icon { color: var(--progress-mint); }
#progress .pitch-progress-category { margin: 0 0 8px; color: var(--pitch-soft); font-size: 11px; line-height: 1.4; letter-spacing: .1em; text-transform: uppercase; }
#progress .pitch-progress-gogreen h3 { font-size: clamp(31px, 2.9vw, 40px); }
#progress .pitch-progress-gogreen .pitch-progress-product > p:not(.pitch-progress-live):not(.pitch-progress-category) { font-size: clamp(16px, 1.5vw, 20px); line-height: 1.4; }
#progress .pitch-progress-live { display: flex; align-items: center; gap: 8px; margin-top: 14px; color: var(--progress-mint); font-size: 14px; line-height: 1.5; }
#progress .pitch-progress-live > span { width: 5px; height: 5px; flex: none; border-radius: 50%; background: currentColor; }
#progress .pitch-progress-contract { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
#progress .pitch-progress-contract strong { color: var(--progress-mint); font-size: clamp(38px, 4.1vw, 58px); line-height: 1; font-weight: 300; letter-spacing: -.045em; font-variant-numeric: tabular-nums; }
#progress .pitch-progress-contract > span { color: var(--ink); font-size: 17px; line-height: 1.4; }
#progress .pitch-progress-contract p { max-width: 22ch; color: var(--pitch-soft); font-size: 13px; line-height: 1.5; }
#progress .pitch-progress-scale { display: flex; align-items: center; gap: 16px; margin-top: 30px; padding-top: 26px; border-top: 1px solid var(--pitch-hair); }
#progress .pitch-progress-scale p { color: var(--ink); font-size: 16px; line-height: 1.5; }
#progress .pitch-progress-scale strong { font-weight: 500; }
#progress .pitch-progress-scale > span:last-child { margin-left: auto; color: var(--pitch-soft); font-size: 14px; line-height: 1.5; }
@media (max-width: 1000px) {
  #progress .pitch-progress-network { grid-template-columns: 146px minmax(0, 1fr); gap: 48px; }
  #progress .pitch-progress-apps::after { left: -48px; width: 18px; }
  #progress .pitch-progress-app { grid-template-columns: 27px minmax(0, 1fr) 174px; gap: 14px; }
  #progress .pitch-progress-product h3 { font-size: 20px; }
  #progress .pitch-progress-gogreen h3 { font-size: 31px; }
  #progress .pitch-progress-contract strong { font-size: 38px; }
  #progress .pitch-progress-contract > span { font-size: 15px; }
  #progress .pitch-progress-icon { width: 27px; height: 27px; }
}
@media (max-width: 760px) {
  #progress .pitch-progress-network { grid-template-columns: 1fr; gap: 30px; }
  #progress .pitch-progress-platform { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 3px 18px; padding-bottom: 26px; border-bottom: 1px solid var(--pitch-hair); text-align: left; }
  #progress .pitch-progress-ab { grid-row: 1 / 3; font-size: 44px; }
  #progress .pitch-progress-platform h3 { grid-column: 2; margin: 0; font-size: 18px; }
  #progress .pitch-progress-platform h3 br { display: none; }
  #progress .pitch-progress-shipped { grid-column: 2; margin: 0; font-size: 12px; }
  #progress .pitch-progress-components { grid-column: 3; grid-row: 1 / 3; margin: 0; font-size: 11px; line-height: 1.7; }
  #progress .pitch-progress-apps { grid-template-rows: auto auto auto; gap: 0; padding-left: 22px; }
  #progress .pitch-progress-apps::before { top: 58px; bottom: 58px; left: 0; background: var(--progress-branch); }
  #progress .pitch-progress-apps::after { display: none; }
  #progress .pitch-progress-app { grid-template-columns: 27px minmax(0, 1fr) 164px; min-height: 116px; padding: 18px 0; gap: 12px; }
  #progress .pitch-progress-app::before { left: -22px; width: 14px; }
  #progress .pitch-progress-product > p:not(.pitch-progress-live):not(.pitch-progress-category) { font-size: 13px; }
  #progress .pitch-progress-evidence strong { font-size: 13px; }
  #progress .pitch-progress-evidence p { font-size: 12px; }
  #progress .pitch-progress-gogreen { min-height: 210px; }
  #progress .pitch-progress-contract p { font-size: 12px; }
  #progress .pitch-progress-scale { gap: 12px; margin-top: 20px; padding-top: 24px; }
  #progress .pitch-progress-scale p { font-size: 14px; }
  #progress .pitch-progress-scale > span:last-child { font-size: 12px; }
}
@media (max-width: 520px) {
  #progress .pitch-progress-platform { grid-template-columns: auto 1fr; gap: 3px 16px; }
  #progress .pitch-progress-platform h3 br { display: initial; }
  #progress .pitch-progress-components { grid-column: 1 / -1; grid-row: auto; margin-top: 15px; font-size: 11px; }
  #progress .pitch-progress-components > span { display: inline; }
  #progress .pitch-progress-components > span + span::before { content: ' · '; }
  #progress .pitch-progress-app { grid-template-columns: 24px minmax(0, 1fr); gap: 4px 10px; align-content: center; padding: 21px 0; }
  #progress .pitch-progress-icon { width: 24px; height: 24px; }
  #progress .pitch-progress-app > .pitch-progress-icon { align-self: start; margin-top: 10px; }
  #progress .pitch-progress-product h3 { font-size: 21px; }
  #progress .pitch-progress-evidence { grid-column: 2; margin-top: 10px; }
  #progress .pitch-progress-evidence p > span { display: inline; }
  #progress .pitch-progress-evidence p > span + span::before { content: ' · '; }
  #progress .pitch-progress-gogreen { padding-block: 26px; }
  #progress .pitch-progress-gogreen > .pitch-progress-icon { margin-top: 25px; }
  #progress .pitch-progress-gogreen h3 { font-size: 33px; }
  #progress .pitch-progress-gogreen .pitch-progress-product > p:not(.pitch-progress-live):not(.pitch-progress-category) { font-size: 17px; }
  #progress .pitch-progress-contract { grid-column: 2; gap: 7px; margin-top: 22px; }
  #progress .pitch-progress-contract strong { font-size: 42px; }
  #progress .pitch-progress-contract > span { font-size: 15px; }
  #progress .pitch-progress-scale { flex-wrap: wrap; gap: 7px 10px; }
  #progress .pitch-progress-scale > span:last-child { flex-basis: calc(100% - 34px); margin-left: 34px; }
}
@media print {
  #progress .pitch-progress-apps, #progress .pitch-progress-gogreen { break-inside: avoid; }
  #progress .pitch-progress-gogreen { background: transparent; }
}
