/* Trayectoria: self-contained presentation layer, preserving the historical source. */
.vxlib{--vx-paper:#fbfaf7;--vx-ink:#26212b;--vx-muted:#514a55;--vx-purple:#652489;--vx-line:#ded6e2;--vx-lavender:#f1eaf5}
.vxlib .vxlib-wrap{max-width:1360px;padding-left:clamp(22px,4.5vw,64px);padding-right:clamp(22px,4.5vw,64px)}
.vxlib .vxlib-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:end;padding-top:clamp(48px,6vw,90px);padding-bottom:clamp(54px,6vw,86px)}
.vxlib .vxlib-intro h1{font-size:clamp(2.6rem,4.8vw,4.7rem);margin:14px 0 22px;max-width:700px}
.vxlib .vxlib-intro .vxlib-lead{max-width:560px;margin-bottom:24px}
.vxlib .history-context{font-size:.67rem;letter-spacing:.13em;font-weight:700;color:#665c6b;margin:0}
.vxlib .history-chooser{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.vxlib .history-chooser a{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:260px;padding:24px;text-decoration:none;border-radius:8px;border:1px solid #d9cadd;background:#eee6f2;color:#321a3c;transition:transform .2s ease,box-shadow .2s ease}
.vxlib .history-chooser a:nth-child(2){background:#572076;border-color:#572076;color:#fff}
.vxlib .history-chooser a:hover,.vxlib .history-chooser a:focus-visible{transform:translateY(-4px);box-shadow:0 12px 26px #3b204123}
.vxlib .history-chooser a:nth-child(2):hover{color:#fff;background:#46145f}
.vxlib .history-chooser strong{font-family:'Manrope',Arial,sans-serif;letter-spacing:-.04em;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.1;margin:32px 0 12px}
.vxlib .history-chooser a>span:not(.history-card-number){font-size:.85rem;line-height:1.45;max-width:230px}
.vxlib .history-card-number{font-size:.66rem;letter-spacing:.12em;font-weight:700}
.vxlib .history-chooser b{position:relative;display:block;width:22px;height:22px;flex:none;font-size:0;line-height:0;margin-top:auto;align-self:flex-end}
.vxlib .history-chooser b::before{content:"";position:absolute;left:1px;top:10px;width:20px;height:0;border-top:2px solid currentColor;transform:rotate(45deg)}
.vxlib .history-chooser b::after{content:"";position:absolute;right:3px;bottom:3px;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor}
.vxlib .vxlib-program{padding-top:clamp(44px,5vw,68px);padding-bottom:clamp(48px,5vw,70px)}
.vxlib .vxlib-program-heading{gap:20px;align-items:flex-start;margin-bottom:30px}
.vxlib .vxlib-program-number{display:grid;place-items:center;width:50px;height:50px;min-width:50px;border:1px solid #b9a1c4;border-radius:50%;font-size:.8rem;font-weight:700;color:#652489}
.vxlib .vxlib-program-heading h2{font-size:clamp(2.2rem,4vw,3.6rem);margin:2px 0 10px}
.vxlib .vxlib-program-heading .vxlib-lead{font-size:1.05rem}
.vxlib .vxlib-program-grid{grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.vxlib .vxlib-program-grid figure img{width:100%;height:clamp(240px,28vw,360px);max-height:none;object-fit:cover;border-radius:8px}
.vxlib .vxlib-program-grid figcaption{font-size:.76rem}
.vxlib .vxlib-history-facts,.vxlib .vxlib-editions{gap:14px;margin:34px 0 0}
.vxlib .vxlib-history-facts article,.vxlib .vxlib-editions article{display:flex;flex-direction:column;padding:22px 24px;border-radius:8px;background:#f3eef5;border-color:#e7dce9}
.vxlib #sprint-fast .vxlib-editions article{background:#f8f3e9;border-color:#ede1c9}
.vxlib .vxlib-history-facts h3,.vxlib .vxlib-editions h3{font-size:1.16rem;margin:5px 0 10px}
.vxlib .vxlib-history-facts p,.vxlib .vxlib-editions p{margin-bottom:12px}
.vxlib .vxlib-history-facts a,.vxlib .vxlib-editions a{margin-top:auto;font-weight:700}
.vxlib .history-milestone-grid summary::-webkit-details-marker{display:none}
.vxlib .history-milestone-grid summary:after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.5rem;font-weight:400;color:#652489}
.vxlib .history-milestone-grid details[open] summary:after{content:'−'}
.vxlib .vxlib-bridge{background:#392046;color:white;max-width:none;padding-top:clamp(48px,5vw,70px);padding-bottom:clamp(48px,5vw,70px);padding-left:max(clamp(22px,4.5vw,64px),calc((100vw - 1232px)/2));padding-right:max(clamp(22px,4.5vw,64px),calc((100vw - 1232px)/2))}
.vxlib .vxlib-bridge .vxlib-eyebrow,.vxlib .vxlib-bridge em{color:#e1c5f0}
.vxlib .vxlib-bridge .vxlib-lead,.vxlib .vxlib-bridge p{color:#f2edf4}
.vxlib .vxlib-bridge .vxlib-inline-link{color:white!important}
.vxlib .vxlib-bridge .vxlib-button{background:#fff;color:#4b1a65!important}
.vxlib .vxlib-history-extras{padding-top:clamp(52px,6vw,80px);padding-bottom:clamp(60px,7vw,90px)}
.vxlib .history-archive-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;align-items:end;margin-bottom:28px}
.vxlib .history-archive-heading .vxlib-eyebrow{grid-column:1/-1}
.vxlib .history-archive-heading h2{margin:0;font-size:clamp(2rem,3.5vw,3.3rem)}
.vxlib .history-archive-heading>p:last-child{margin:0;max-width:510px;color:#514a55}
.vxlib .history-milestone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vxlib .history-milestone-grid details{min-width:0;margin:0;padding:0 20px;background:#fff;border:1px solid #ded6e2;border-radius:7px}
.vxlib .history-milestone-grid details[open]{grid-column:1/-1;padding-bottom:24px;background:#faf6fb}
.vxlib .history-milestone-grid summary{position:relative;display:flex;align-items:center;min-height:104px;padding:20px 32px 20px 0;font-size:.95rem;line-height:1.4;font-weight:700;cursor:pointer;list-style:none;color:#3d2945}
.vxlib .history-milestone-grid summary:hover{color:#652489}
.vxlib .history-milestone-grid details>p,.vxlib .history-milestone-grid details>ul{max-width:900px}
.vxlib .history-milestone-grid figure{display:inline-block;vertical-align:top;width:min(100%,300px);margin:8px 16px 20px 0}
.vxlib .history-milestone-grid figure img{width:100%;height:180px;object-fit:contain;background:#f0eaf2;border-radius:4px}
.vxlib .history-milestone-grid figcaption{font-size:.75rem;line-height:1.45;color:#514a55;margin-top:8px}
.vxlib .history-milestone-grid .media-embed{width:min(100%,420px)}
.vxlib .history-milestone-grid .source-note{font-size:.78rem;color:#514a55}
.vxlib .history-milestone-grid details:target{scroll-margin-top:24px}
@media(max-width:800px){.vxlib .vxlib-intro,.vxlib .vxlib-program-grid,.vxlib .history-archive-heading{grid-template-columns:1fr}.vxlib .vxlib-intro{gap:30px}.vxlib .history-archive-heading{gap:16px}.vxlib .history-milestone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vxlib .vxlib-history-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.vxlib .vxlib-program-grid figure img{height:300px}.vxlib .history-chooser a{min-height:220px}}
@media(max-width:560px){.vxlib .history-chooser{gap:10px}.vxlib .history-chooser a{padding:17px;min-height:190px}.vxlib .history-chooser strong{font-size:1.35rem;margin:23px 0 10px}.vxlib .history-chooser a>span:not(.history-card-number){font-size:.77rem}.vxlib .vxlib-history-facts,.vxlib .vxlib-editions{grid-template-columns:1fr}.vxlib .vxlib-history-facts article,.vxlib .vxlib-editions article{padding:18px}.vxlib .vxlib-program-grid figure img{height:220px}.vxlib .history-milestone-grid{grid-template-columns:1fr}.vxlib .history-milestone-grid summary{min-height:70px}.vxlib .vxlib-bridge{grid-template-columns:1fr;gap:18px}.vxlib .history-milestone-grid figure{display:block;width:100%;max-width:420px}.vxlib .history-milestone-grid figure img{height:auto;max-height:300px}}
@media(prefers-reduced-motion:reduce){.vxlib .history-chooser a{transition:none}}

/* The Trajectory header scrolls away, so these deep links need no sticky offset. */
html:has(:is(#lean-startup-motion,#sprint-fast,#sprint-fast-online-2021):target){scroll-padding-top:0}
.vxlib :is(#lean-startup-motion,#sprint-fast,#sprint-fast-online-2021):target{scroll-margin-top:0}

.vxlib .sprint-journey{
  --journey-deep:#351849;
  --journey-inset:clamp(16px,4.4vw,46px);
  margin-top:24px;
  border:1px solid var(--vx-line);
  border-radius:12px;
  background:var(--vx-paper);
}
.sprint-journey-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(96px,28%);
  gap:12px;
  padding:var(--journey-inset);
  border-bottom:1px solid var(--vx-line);
  border-radius:11px 11px 0 0;
  background:linear-gradient(115deg,#f2e9f4,#f7f0ef 68%,#f9f3e9);
}
.vxlib .sprint-journey-hero h3{
  margin:10px 0 12px;
  font-size:clamp(1.85rem,4.2vw,3.55rem);
  line-height:1.06;
}
.vxlib .sprint-journey-hero h3 em{white-space:nowrap}
.sprint-journey-hero p:not(.vxlib-eyebrow){max-width:55ch;color:var(--vx-muted);margin:0}
.sprint-journey-facts{
  display:flex;
  flex-wrap:wrap;
  gap:6px 18px;
  padding:0;
  margin:16px 0 0;
  list-style:none;
  color:var(--vx-muted);
}
.sprint-journey-facts strong{color:var(--journey-deep);font-size:1.15em}
.sprint-journey-art{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  align-self:center;
  justify-self:end;
  width:100%;
  max-width:220px;
  aspect-ratio:3/2;
}
.sprint-journey-art span{background:#8249a4;clip-path:polygon(0 0,100% 50%,0 100%)}
.sprint-journey-art span:nth-child(even){transform:rotate(180deg)}
.sprint-journey-art span:nth-child(2){background:#c39bcc}
.sprint-journey-art span:nth-child(3){background:#e1b776}
.sprint-journey-art span:nth-child(4){background:#b684be}
.sprint-journey-art span:nth-child(5){background:#552271}
.sprint-journey-art span:nth-child(6){background:#e5c9d8}
.sprint-journey-content{padding:clamp(16px,3vw,30px) var(--journey-inset) 16px}
.sprint-journey-content fieldset{display:none;min-inline-size:0;padding:0;border:0}
.sprint-journey-content legend,.sprint-journey-content input[type=radio]{
  position:absolute;
  width:1px;
  height:1px;
  clip-path:inset(50%);
  overflow:hidden;
  white-space:nowrap;
}
.sprint-journey-content label{cursor:pointer}
.sprint-journey-content label:has(:focus-visible){outline:3px solid var(--vx-purple);outline-offset:2px}
.sprint-journey-panel + .sprint-journey-panel{margin-top:16px}
.sprint-journey-content .sprint-journey-views{
  flex-wrap:wrap;
  gap:0 18px;
  margin:0 0 16px;
  border-bottom:1px solid var(--vx-line);
}
.sprint-journey-views label{
  display:grid;
  align-items:center;
  min-height:44px;
  border-bottom:2px solid transparent;
  font-weight:700;
  color:var(--vx-muted);
  font-size:.9rem;
}
.sprint-journey-views label:has(:checked){border-color:var(--vx-purple);color:var(--vx-purple)}
.sprint-journey-phases{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
.sprint-journey-phases label{
  position:relative;
  display:grid;
  gap:6px;
  align-content:start;
  padding:11px;
  border:1px solid var(--vx-line);
  border-radius:8px;
  background:#fffdfb;
  font-weight:700;
  line-height:1.3;
}
.sprint-journey-phases label::after{content:"→";position:absolute;top:8px;right:11px}
.sprint-journey-phases label:hover{background:var(--vx-lavender)}
.sprint-journey-phases label:has(:checked){background:var(--journey-deep);border-color:var(--journey-deep);color:white}
.sprint-journey-phases label:has(:checked) .sprint-phase-index{color:#e8cbed}
.sprint-phase-index{color:var(--vx-purple);font-size:.75rem;font-weight:700}
.sprint-phase-detail{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:clamp(12px,3vw,24px);
  padding:clamp(12px,2.5vw,24px);
  border-radius:8px;
  background:var(--vx-lavender);
}
.sprint-phase-detail + .sprint-phase-detail{margin-top:8px}
.sprint-phase-number{color:var(--vx-purple);font-size:clamp(2rem,6vw,4.5rem);line-height:1;font-weight:300}
.sprint-journey-content h4,.sprint-journey-content h5{margin:0 0 4px;line-height:1.2}
.sprint-journey-content h4{font-family:'Manrope',Arial,sans-serif;font-size:clamp(1.15rem,2.5vw,1.6rem);letter-spacing:-.035em}
.sprint-journey-content h5{font-size:1rem;margin-top:4px}
.sprint-journey-content p{margin:0;color:var(--vx-muted)}
.sprint-journey-content .vxlib-eyebrow{color:var(--vx-purple);margin-bottom:4px}
.sprint-step-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
  list-style:none;
  counter-reset:sprint-step;
  padding:0;
  margin:10px 0;
}
.sprint-step-list>li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-content:start;
  gap:9px;
  padding:8px 0;
  border-top:1px solid var(--vx-line);
  counter-increment:sprint-step;
}
.sprint-step-list>li::before{content:counter(sprint-step,decimal-leading-zero);color:var(--vx-purple);font-weight:700}
.sprint-step-list ul{padding-left:18px;margin:6px 0 0;color:var(--vx-muted)}
.sprint-journey-content summary{cursor:pointer}
.sprint-journey-disclosure{padding:10px 0;border-top:1px solid var(--vx-line)}
.sprint-journey-disclosure summary{font-weight:700;color:var(--vx-purple)}
.sprint-journey-disclosure figure{margin:12px 0 0;max-width:420px}
.sprint-journey-disclosure img{border:1px solid var(--vx-line);border-radius:6px}
.sprint-journey-disclosure figcaption{font-size:.82rem;color:var(--vx-muted);margin-top:6px}
.sprint-journey-disclosure p{margin-top:8px}
.sprint-learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.sprint-learning-grid article{padding:13px;border-radius:8px;background:var(--vx-lavender)}
.sprint-journey-content .sprint-learning-time{margin:12px 0 8px}
.sprint-journey-footer{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:2px 12px;
  margin-top:16px;
  padding-top:9px;
  border-top:1px solid var(--vx-line);
  font-size:.8rem;
  color:var(--vx-muted);
}
@supports selector(:has(*)){
  .sprint-journey-content .sprint-journey-views{display:flex}
  .sprint-journey-content .sprint-journey-phases{display:grid}
  .sprint-journey-panel,.sprint-phase-detail{display:none}
  .sprint-journey-content:has(#sprint-view-map:checked) #sprint-map,
  .sprint-journey-content:has(#sprint-view-steps:checked) #sprint-steps,
  .sprint-journey-content:has(#sprint-view-learning:checked) #sprint-learning{display:block;margin-top:0}
  #sprint-map:has(#sprint-phase-1:checked) #sprint-phase-detail-1,
  #sprint-map:has(#sprint-phase-2:checked) #sprint-phase-detail-2,
  #sprint-map:has(#sprint-phase-3:checked) #sprint-phase-detail-3,
  #sprint-map:has(#sprint-phase-4:checked) #sprint-phase-detail-4{display:grid;margin-top:0}
}
@media(max-width:640px){
  .sprint-journey-phases{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sprint-step-list,.sprint-learning-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .sprint-journey-hero{grid-template-columns:1fr}
  .sprint-journey-art{display:none}
  .sprint-journey-views{gap:0 12px}
  .sprint-phase-detail{grid-template-columns:1fr}
  .sprint-phase-number{display:none}
}
