/* Shared slide selection */
.slide-picker{position:relative;min-width:0;max-width:260px}
.slide-picker select{font-family:inherit;appearance:none;width:100%;padding:11px 34px 11px 13px;border:1px solid #7bb8d536;border-radius:8px;background:#0f2233;color:#bad4e7;font-size:11px;letter-spacing:1.2px;cursor:pointer}
.slide-picker select:focus-visible{outline:3px solid #73dded;outline-offset:3px}
.slide-picker option{background:#102337;color:#e8f4fc}
.slide-picker>svg{pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;fill:none;stroke:#94b9cf;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* Cooperation journey: four cumulative milestones */
.journey-stage{padding:0 9px;overflow:hidden}
.journey-head{position:relative;padding:34px 0 20px;flex:none}
.journey-head .eyebrow{font-size:12px;letter-spacing:1.8px}
.journey-head h1{font-size:clamp(36px,3.2vw,57px);font-weight:400;letter-spacing:-1.3px;line-height:1.07;margin:15px 0 17px;max-width:1000px}
.journey-head h1 span{color:#a5c6dd}
.journey-head p{margin:0;max-width:720px;font-size:17px;line-height:1.5;color:#97b2c7}
.journey-board{position:relative;flex:1;min-height:0;display:flex;align-items:center;padding:0 0 28px}
.journey-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:27px;width:100%}
.journey-cell{--tone:#3fe3da;min-width:0;display:flex;flex-direction:column;align-items:stretch}
.journey-cell[hidden]{display:flex!important;visibility:hidden}
.journey-node{position:relative;align-self:center;display:block;width:138px;height:144px;padding:0;border:0;background:none;color:var(--tone);outline-offset:2px}
.journey-node>svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 15px color-mix(in srgb,var(--tone) 12%,transparent))}
.journey-node .node-border{stroke:var(--tone);stroke-width:1.2;stroke-opacity:.65;transition:stroke-opacity .25s}
.journey-node:hover .node-border,.journey-node:focus-visible .node-border{stroke-opacity:1;stroke-width:1.8}
.journey-node .node-icon{fill:none;stroke:var(--tone);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.journey-node .node-number{font-family:'PT Sans',Arial,sans-serif;font-size:10px;letter-spacing:2px;fill:var(--tone)}
.journey-card{margin-top:25px;padding:23px 23px 24px;border:1px solid #ffffff0e;border-top:1px solid color-mix(in srgb,var(--tone) 50%,transparent);border-radius:12px;background:linear-gradient(130deg,color-mix(in srgb,var(--tone) 5%,transparent),#ffffff01)}
.journey-card .journey-step{display:block;color:var(--tone);font-size:10px;letter-spacing:1.8px;line-height:1.3;font-weight:700}
.journey-card h2{font-size:25px;font-weight:400;letter-spacing:-.4px;line-height:1.17;margin:12px 0 15px;color:#e9f4fc;text-wrap:pretty}
.journey-card p{color:#acc2d2;font-size:16px;line-height:1.55;margin:0;text-wrap:pretty}
.journey-price{display:inline-flex;align-items:center;gap:9px;margin-top:20px;padding:8px 11px;color:#d8f3ef;background:color-mix(in srgb,var(--tone) 6%,transparent);border:1px solid color-mix(in srgb,var(--tone) 25%,transparent);border-radius:7px;font-size:13px;line-height:1.2}
.journey-price strong{font-weight:700;font-size:17px;color:var(--tone)}
.journey-cell:last-child .journey-card{background:linear-gradient(130deg,#204e7029,#10233442);border-color:#75bfff38}
.journey-cell:last-child .journey-price{color:#bfddf3;font-size:13px}
.journey-cell.enter .journey-node{animation:milestone-in 1.05s cubic-bezier(.16,1,.3,1) both}
.journey-cell.enter .journey-card{animation:card-in .9s cubic-bezier(.16,1,.3,1) both;animation-delay:.25s}
@keyframes milestone-in{from{opacity:0;transform:translateY(22px) scale(.8);filter:blur(8px)}60%{opacity:1;filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1)}}
.journey-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.journey-wire{fill:none;stroke:var(--tone);stroke-width:1.4;stroke-linecap:round;opacity:.45;filter:drop-shadow(0 0 5px var(--tone))}
.journey-wire.enter{animation:wire-arrive 1s ease-out both}
.journey-pulse{fill:none;stroke:var(--tone);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:.06 .94;opacity:.85;filter:drop-shadow(0 0 4px var(--tone));animation:travel 4s linear infinite;animation-delay:var(--delay)}
.journey-cell.highlight .journey-card{border-color:var(--tone);box-shadow:0 0 22px color-mix(in srgb,var(--tone) 8%,transparent)}
.journey-footer .step .label{font-size:11px}

@media(min-width:901px) and (max-height:800px){
 .journey-head{padding:23px 0 14px}
 .journey-head .eyebrow{font-size:11px}
 .journey-head h1{font-size:39px;margin:12px 0 13px;line-height:1.04}
 .journey-head p{font-size:14px;line-height:1.4}
 .journey-board{padding-bottom:18px}
 .journey-node{width:104px;height:110px}
 .journey-grid{gap:20px}
 .journey-card{margin-top:16px;padding:17px 18px 18px}
 .journey-card h2{font-size:22px;margin:10px 0 12px}
 .journey-card p{font-size:14px;line-height:1.45}
 .journey-card .journey-step{font-size:9px}
 .journey-price{font-size:12px;margin-top:15px;padding:7px 9px}
 .journey-price strong{font-size:16px}
}
@media(max-width:1190px) and (min-width:901px){
 .journey-grid{gap:16px}
 .journey-card{padding:16px 15px 17px}
 .journey-card h2{font-size:20px}
 .journey-card p{font-size:13px;line-height:1.45}
 .journey-node{width:100px;height:106px}
 .journey-head h1{font-size:38px}
}
@media(max-width:900px){
 .topright{gap:8px;min-width:0}
 .slide-picker{max-width:190px}
 .slide-picker select{font-size:9px;letter-spacing:.2px;padding:10px 25px 10px 9px}
 .slide-picker>svg{right:8px;width:12px}
 .brandline{display:none}
 .journey-stage{padding:0 6px;overflow-y:auto;overflow-x:hidden}
 .journey-head{padding:25px 0 28px}
 .journey-head .eyebrow{font-size:10px}
 .journey-head h1{font-size:36px;margin:14px 0 18px;letter-spacing:-1px}
 .journey-head p{font-size:15px;line-height:1.5}
 .desktop-break{display:none}
 .journey-board{display:block;flex:none;padding:0 0 24px}
 .journey-grid{grid-template-columns:1fr;gap:24px}
 .journey-cell{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:start;gap:16px}
 .journey-cell[hidden]{display:none!important}
 .journey-node{width:76px;height:80px;align-self:start;margin-top:13px}
 .journey-card{margin:0;padding:18px 17px 20px}
 .journey-card h2{font-size:23px;margin:10px 0 13px}
 .journey-card p{font-size:14px;line-height:1.5}
 .journey-step{font-size:9px!important}
 .journey-price{font-size:12px;margin-top:16px;padding:7px 9px}
 .journey-price strong{font-size:16px}
 .journey-cell:last-child .journey-price{font-size:12px}
 .journey-footer .step .label{display:none}
}
@media(max-width:370px){.slide-picker select{font-size:8px}.slide-picker{max-width:168px}.journey-cell{grid-template-columns:62px minmax(0,1fr);gap:12px}.journey-node{width:62px;height:66px}.journey-card{padding:17px 14px}.journey-card h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.journey-pulse{display:none!important}.journey-cell.enter .journey-node,.journey-cell.enter .journey-card{animation:none}}

/* Full slide labels and the three possible routes after the recommendations. */
.slide-picker{width:310px;max-width:none;flex:0 0 310px}
.slide-picker select{padding:14px 45px 14px 18px;font-size:14px;letter-spacing:.5px;min-height:47px}
.slide-picker>svg{right:16px;width:16px;height:16px}
.journey-head{padding:29px 0 22px}
.journey-head h1{font-size:clamp(34px,2.65vw,48px);max-width:none;line-height:1.12;margin:13px 0 15px}
.journey-head p{max-width:1000px;font-size:16px}
.journey-head .desktop-break{display:none}
.journey-board{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(340px,1fr);column-gap:68px;align-items:center;padding-bottom:24px}
.journey-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;grid-column:1;grid-row:1;align-self:center}
.journey-cell:last-child .journey-card{background:linear-gradient(130deg,color-mix(in srgb,var(--tone) 5%,transparent),#ffffff01);border:1px solid #ffffff0e;border-top:1px solid color-mix(in srgb,var(--tone) 50%,transparent)}
.journey-cell:last-child .journey-price{font-size:13px;color:#d8f3ef}
.journey-node{width:120px;height:126px}
.journey-card{padding:20px 20px 21px;margin-top:21px}
.journey-card h2{font-size:24px}
.journey-card p{font-size:15px;line-height:1.5}
.journey-choices{grid-column:2;grid-row:1;position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;gap:13px;align-self:center}
.journey-choices[hidden]{display:flex!important;visibility:hidden}
.choices-heading{margin-bottom:3px}
.choices-heading>.journey-step{font-size:9px;color:#8caec7;letter-spacing:1.8px;font-weight:700}
.choices-heading h2{font-size:25px;font-weight:400;line-height:1.2;letter-spacing:-.4px;margin:8px 0 0;color:#e0eef9}
.journey-choice{position:relative;display:grid;grid-template-columns:29px minmax(0,1fr);gap:13px;align-items:start;padding:20px 20px 21px;border:1px solid #ffffff10;border-left:2px solid color-mix(in srgb,var(--tone) 55%,transparent);border-radius:11px;background:linear-gradient(125deg,color-mix(in srgb,var(--tone) 6%,#081321),#0c192a);min-width:0}
.choice-letter{display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);border-radius:50%;font-size:13px;color:var(--tone);margin-top:1px}
.journey-choice h3{font-size:23px;line-height:1.2;font-weight:400;letter-spacing:-.25px;margin:0 0 10px;color:#e4eff9}
.journey-choice p{font-size:15px;color:#adc1d1;line-height:1.5;margin:0;text-wrap:pretty}
.journey-choice:last-child{border-color:#8fc7ff42;background:linear-gradient(130deg,#17344b,#0f1f33)}
.journey-choices.enter .journey-choice{animation:card-in .85s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--choice-index,0)*.12s + .2s)}
.journey-choice:nth-of-type(2){--choice-index:1}.journey-choice:nth-of-type(3){--choice-index:2}
.journey-wire{opacity:.5}
@media(min-width:901px) and (max-height:800px){
 .journey-head{padding:20px 0 17px}
 .journey-head h1{font-size:34px;margin:11px 0 13px}
 .journey-head p{font-size:14px}
 .journey-board{column-gap:53px;padding-bottom:16px}
 .journey-node{width:94px;height:99px}
 .journey-grid{gap:17px}
 .journey-card{padding:16px 16px 17px;margin-top:16px}
 .journey-card h2{font-size:21px;margin:10px 0 12px}
 .journey-card p{font-size:13px;line-height:1.45}
 .journey-card .journey-step{font-size:8px}
 .journey-price{margin-top:14px}
 .journey-cell:last-child .journey-price{font-size:12px}
 .journey-choices{gap:10px}
 .choices-heading h2{font-size:22px;margin-top:7px}
 .choices-heading>.journey-step{font-size:8px}
 .journey-choice{padding:15px 16px;gap:10px;grid-template-columns:26px minmax(0,1fr)}
 .choice-letter{width:25px;height:25px;font-size:12px}
 .journey-choice h3{font-size:20px;margin-bottom:8px}
 .journey-choice p{font-size:13px;line-height:1.45}
}
@media(max-width:1190px) and (min-width:901px){
 .slide-picker{width:290px;flex-basis:290px}
 .slide-picker select{font-size:13px}
 .journey-board{grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);column-gap:42px}
 .journey-grid{gap:13px}
 .journey-card{padding:14px 13px 16px}
 .journey-card h2{font-size:19px}
 .journey-card p{font-size:12px;line-height:1.5}
 .journey-node{width:84px;height:89px}
 .journey-choice{padding:14px;gap:9px;grid-template-columns:24px minmax(0,1fr)}
 .choice-letter{width:23px;height:23px;font-size:11px}
 .journey-choice h3{font-size:19px}
 .journey-choice p{font-size:12px;line-height:1.45}
 .choices-heading h2{font-size:21px}
 .journey-head h1{font-size:33px}
}
@media(max-width:900px){
 .topbar{gap:8px}
 .topright{gap:8px}
 .slide-picker{width:clamp(160px,49vw,220px);max-width:none;flex:0 1 auto}
 .slide-picker select{font-size:12px;letter-spacing:0;padding:11px 29px 11px 10px;min-height:40px}
 .slide-picker>svg{right:9px;width:13px;height:13px}
 .journey-head{padding:25px 0 27px}
 .journey-head h1{font-size:35px;line-height:1.12;margin:14px 0 18px}
 .journey-head p{font-size:15px;line-height:1.5}
 .journey-board{display:flex;flex-direction:column;gap:27px;padding-bottom:24px}
 .journey-grid{grid-template-columns:1fr;gap:24px;align-self:stretch}
 .journey-cell{grid-template-columns:68px minmax(0,1fr);gap:16px}
 .journey-cell:last-child .journey-card{border-left:1px solid #ffffff0e}
 .journey-node{width:68px;height:72px;margin-top:13px}
 .journey-card{padding:18px 17px 20px;margin:0}
 .journey-card h2{font-size:23px;margin:10px 0 13px}
 .journey-card p{font-size:14px;line-height:1.5}
 .journey-price,.journey-cell:last-child .journey-price{font-size:12px}
 .journey-choices{align-self:stretch;display:flex;margin-left:84px;gap:13px}
 .journey-choices[hidden]{display:none!important}
 .choices-heading h2{font-size:25px}
 .journey-choice{display:block;padding:18px 17px 20px}
 .choice-letter{margin-bottom:12px}
 .journey-choice h3{font-size:23px;margin-bottom:11px}
 .journey-choice p{font-size:14px;line-height:1.5}
 .journey-connections{overflow:hidden}
}
@media(max-width:370px){.slide-picker{width:166px}.slide-picker select{font-size:11px}.journey-cell{grid-template-columns:58px minmax(0,1fr);gap:12px}.journey-node{width:58px;height:62px}.journey-choices{margin-left:70px}.journey-card,.journey-choice{padding-left:14px;padding-right:14px}}
@media(prefers-reduced-motion:reduce){.journey-choices.enter .journey-choice{animation:none}}

/* Balanced menu sizing and evenly spaced choices without stretched paragraphs. */
.slide-picker{width:250px;flex-basis:250px}
.slide-picker select{min-height:41px;padding:11px 37px 11px 14px;font-size:12px;letter-spacing:.4px}
.slide-picker>svg{right:13px;width:14px;height:14px}
.journey-choices{align-self:stretch;gap:20px;padding:0}
.choices-heading{margin:0}
.choice-stack{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:18px;min-height:0}
.journey-choice{flex:none}
@media(min-width:901px) and (max-height:800px){.journey-choices{gap:15px}.choice-stack{gap:12px}}
@media(max-width:1190px) and (min-width:901px){.slide-picker{width:240px;flex-basis:240px}.slide-picker select{font-size:12px}}
@media(max-width:900px){
 .slide-picker{width:clamp(160px,49vw,220px);flex:0 1 auto}
 .slide-picker select{font-size:12px;letter-spacing:0;padding:11px 29px 11px 10px;min-height:40px}
 .slide-picker>svg{right:9px;width:13px;height:13px}
 .journey-choices{gap:18px}
 .choice-stack{gap:13px;flex:none;justify-content:flex-start}
}
@media(max-width:370px){.slide-picker{width:166px}.slide-picker select{font-size:11px}}

/* Aligned stage cards and a choice column spanning the complete slide area. */
.journey-grid{align-items:stretch}
.journey-card{flex:1;display:flex;flex-direction:column;align-items:flex-start;width:100%}
.journey-card p{margin-bottom:18px}
.journey-card .journey-price{margin-top:auto}
.choice-mark{display:flex;flex-direction:column;align-items:center;gap:10px}
.choice-symbol{display:grid;place-items:center;width:46px;height:46px;border:1px solid color-mix(in srgb,var(--tone) 26%,transparent);border-radius:11px;background:color-mix(in srgb,var(--tone) 5%,transparent)}
.choice-symbol svg{width:32px;height:32px;fill:none;stroke:var(--tone);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.choice-mark .choice-letter{width:23px;height:23px;font-size:11px;margin:0}
.journey-choice{grid-template-columns:46px minmax(0,1fr);gap:17px;padding:23px 23px 24px}
.choices-heading>.journey-step{font-size:12px;letter-spacing:1.7px}
@media(min-width:901px){
 .journey-stage{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(340px,1fr);grid-template-rows:auto minmax(0,1fr);column-gap:68px}
 .journey-head{grid-column:1;grid-row:1;min-width:0}
 .journey-board{grid-column:1/-1;grid-row:2;min-height:0}
 .journey-choices{grid-column:2;grid-row:1/3;align-self:stretch;margin-top:28px;margin-bottom:24px;gap:23px;min-height:0}
 .journey-choices .choice-stack{gap:22px}
}
@media(min-width:901px) and (max-height:800px){
 .journey-stage{column-gap:53px}
 .journey-choices{margin-top:21px;margin-bottom:17px;gap:19px}
 .journey-choices .choice-stack{gap:15px}
 .journey-choice{padding:17px 18px;gap:13px;grid-template-columns:39px minmax(0,1fr)}
 .choice-symbol{width:38px;height:38px;border-radius:9px}
 .choice-symbol svg{width:28px;height:28px}
 .choice-mark{gap:8px}
 .choices-heading>.journey-step{font-size:11px}
 .journey-card p{margin-bottom:15px}
}
@media(max-width:1190px) and (min-width:901px){
 .journey-stage{grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);column-gap:42px}
 .journey-choice{padding:16px;gap:11px;grid-template-columns:33px minmax(0,1fr)}
 .choice-symbol{width:32px;height:34px;border-radius:8px}
 .choice-symbol svg{width:25px;height:25px}
 .choices-heading>.journey-step{font-size:10px}
 .journey-choice p{font-size:12px;line-height:1.45}
 .journey-choices{margin-top:21px;margin-bottom:17px}
}
@media(max-width:900px){
 .journey-choices{margin:0 0 24px 84px;gap:18px;flex:none}
 .choice-stack{gap:15px}
 .journey-choice{display:grid;grid-template-columns:35px minmax(0,1fr);gap:12px;padding:19px 16px}
 .choice-symbol{width:34px;height:36px;border-radius:9px}
 .choice-symbol svg{width:27px;height:27px}
 .choice-mark .choice-letter{margin:0}
 .journey-choice h3{font-size:22px}
 .choices-heading>.journey-step{font-size:11px}
 .journey-grid{align-items:stretch;grid-auto-rows:1fr}
 .journey-connections{overflow:visible}
 .journey-cell{align-items:stretch}
 .journey-card{width:auto;height:100%;align-self:stretch}
 .journey-card p{margin-bottom:0}
 .journey-card .journey-price{margin-top:16px}
}
@media(max-width:370px){.journey-choices{margin-left:70px}.journey-choice{display:block}.choice-mark{flex-direction:row;justify-content:flex-start;margin-bottom:14px}}

/* Each choice has its own colored route and matching visual marker. */
.journey-fork{stroke-width:1.6;opacity:.7}
.journey-fork-pulse{stroke-width:2.5;opacity:.95}
.journey-choice:last-child{border-color:color-mix(in srgb,var(--tone) 35%,transparent)}

/* A quiet reading state and a contextual link to the cooperation model. */
.choice-model-link{display:inline-flex;align-items:center;gap:9px;margin-top:16px;color:#b9eef5;text-decoration:none;font-size:14px;line-height:1.4;border-bottom:1px solid #78d4e533;padding-bottom:3px;transition:color .2s,border-color .2s}
.choice-model-link:hover{color:#e6fcff;border-color:#b9eef5}
.choice-model-link:focus-visible{outline:2px solid #b9eef5;outline-offset:5px;border-radius:2px}
.journey-pulse{transition:opacity .35s ease}
.journey-stage.is-reading .journey-pulse{opacity:.18;transition-duration:2.2s}
@media(min-width:901px) and (max-height:800px){.choice-model-link{font-size:12px;margin-top:12px}}
@media(max-width:1190px) and (min-width:901px){.choice-model-link{font-size:11px;margin-top:11px}}
@media(max-width:900px){.choice-model-link{font-size:13px;margin-top:15px}}
