.journey-page{min-height:100dvh;overflow:auto;background:var(--bg)}
.journey-shell{max-width:1180px;padding:28px 40px 60px;margin:auto}
.journey-progress{display:flex;align-items:baseline;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);margin-bottom:54px}
.journey-progress-actions{display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-shrink:0;padding-bottom:10px}
.journey-progress-actions .text-button{white-space:nowrap;font-size:11px;text-transform:none;letter-spacing:0}
.journey-progress #resume{flex-shrink:0;padding:8px 0;text-align:right;color:var(--muted);font-size:11px;line-height:1.5}
.journey-progress .theme-pill{padding:8px 12px}
.journey-steps{display:flex;flex:1;min-width:0;gap:28px}
.journey-steps button{border:0;border-bottom:2px solid transparent;background:none;padding:0 0 18px;color:var(--muted);font-size:13px}
.journey-steps button[aria-current=step]{border-color:var(--ink);color:var(--ink)}
.journey-steps button:disabled{opacity:.45;cursor:default}
.journey-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:72px;min-height:390px}
#journeyPanel h1{font-size:36px;line-height:1.15;margin:10px 0 14px;letter-spacing:-1px}
#journeyPanel>p{color:var(--muted);margin:0 0 30px;max-width:500px}
.journey-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.journey-options>.journey-card:only-child{grid-column:1/-1}
.journey-card{display:flex;flex-direction:column;text-align:left;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:22px;min-height:112px;gap:8px;transition:border-color .15s}
.journey-card:hover{border-color:var(--ink)}
.journey-card[aria-pressed=true]{background:var(--button);color:var(--buttonInk);border-color:var(--button)}
.journey-card b{font-size:18px}.journey-card small{font-size:12px;color:var(--muted)}
.journey-card[aria-pressed=true] small{color:inherit;opacity:.8}
.journey-card .availability{font-size:10px;display:block;margin-top:5px;color:var(--muted)}
.journey-summary{border-left:1px solid var(--line);padding-left:28px}
.journey-summary h2{font-size:22px;line-height:1.3;margin:12px 0 26px;letter-spacing:-.4px}
.journey-summary p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:26px}
.journey-summary a{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.journey-summary dl{margin:0}.journey-summary dl>div{padding:12px 0;border-bottom:1px solid var(--line)}
.journey-summary dt{color:var(--muted);font-size:11px}.journey-summary dd{margin:3px 0 0;font-size:14px}
.journey-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;color:var(--muted);font-size:12px}
.journey-fit{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.journey-fit select{width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--line)}
.journey-fit .field{margin:0}.journey-continue{margin-top:20px;min-width:210px}
.journey-empty{border:1px dashed var(--line);padding:24px;border-radius:10px;line-height:1.7}
.journey-empty h2{font-size:20px;margin:0 0 10px}.journey-empty p{color:var(--muted);margin:0}
.context-trail{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 26px;border-bottom:1px solid var(--line);background:var(--bg);font-size:12px;min-height:40px}
.context-trail span{color:var(--muted)}.context-trail a{white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.customer:has(.context-trail) .studio{height:calc(100dvh - 40px)}
@media(max-width:900px){.journey-shell{padding:30px 25px}.journey-layout{gap:32px;grid-template-columns:minmax(0,1fr) 220px}.journey-summary{padding-left:20px}}
@media(max-width:760px){.journey-shell{padding:18px 18px 40px}.journey-progress{align-items:flex-end;gap:14px;margin-bottom:32px}.journey-progress-actions{gap:10px;padding-bottom:7px}.journey-progress-actions .text-button{font-size:10px}.journey-progress-actions #resume{display:none!important}.journey-progress .theme-pill{padding:7px 9px}.journey-steps{gap:18px}.journey-layout{display:flex;flex-direction:column;gap:28px}.journey-summary{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.journey-summary h2{font-size:20px;margin:8px 0 16px}.journey-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.journey-summary p{margin-top:18px}#journeyPanel h1{font-size:29px}.journey-card{padding:18px;min-height:110px}.journey-card b{font-size:17px}.journey-steps button{font-size:12px}.context-trail{padding:8px 15px;align-items:flex-start;font-size:11px}.customer:has(.context-trail) .studio{height:auto}.journey-footer{margin-top:24px;gap:15px}.journey-continue{width:100%}}

/* The position step is a full-width, illustrated JH field guide. */
.position-selection .journey-shell{max-width:1200px;padding-top:28px}
.position-selection .journey-progress{margin-bottom:34px}
.position-selection .journey-layout{display:block}
.position-selection .journey-summary{display:none}
.position-intro{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-bottom:30px}
.position-intro .eyebrow{font-size:12px;color:var(--muted)}
#journeyPanel .position-intro h1{font-size:clamp(28px,3.2vw,38px);margin:8px 0 12px;letter-spacing:-1px}
.position-intro p{color:var(--muted);font-size:14px;line-height:1.6;margin:0}
.position-context{border-left:1px solid var(--line);padding-left:24px;display:flex;flex-direction:column;gap:3px;font-size:14px;white-space:nowrap}
.position-context button{padding:0;font-size:11px;color:var(--muted)}
.position-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.position-card{padding:0;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);overflow:hidden;text-align:left;min-width:0;transition:border-color .18s,box-shadow .18s;position:relative}
.position-card:not(:disabled):hover,.position-card:focus-visible{border-color:var(--ink)}
.position-card:disabled{cursor:not-allowed;opacity:1}
.position-card:disabled .position-card-title,.position-card:disabled .position-caption{color:var(--muted)}
.position-card:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.position-card[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.position-visual{display:block;margin:18px 14px 0;overflow:hidden}
.position-art{display:block;width:100%;height:auto;max-height:215px;overflow:visible;--field-grass:#123f2d;--field-mow:#286041;--field-dirt:#965332;--field-line:#fff8e9;--field-border:#294835;--field-emphasis:#eed3a0;--field-pin:#fffaf0;--field-pin-ink:#163b2a;--field-logo:#76a66c}
.field-track{fill:var(--field-dirt)}.field-turf,.field-infield{fill:var(--field-grass)}.field-mow{fill:var(--field-mow);opacity:.6}
.field-logo-cut{fill:var(--field-logo)}
.field-chalk{stroke:var(--field-line);stroke-width:1;opacity:.85;fill:none;stroke-linejoin:round}
.field-fence{stroke:var(--field-border);stroke-width:2;fill:none}.field-bases,.field-rubber{fill:var(--field-line)}
.field-zone{fill:none;stroke:var(--field-emphasis);stroke-width:2;opacity:.7;stroke-linecap:round;stroke-dasharray:3 4}
.field-zone-ring{fill:none;stroke:var(--field-emphasis);stroke-width:1.5;opacity:.8;stroke-dasharray:3 4}
.field-marker-dot{fill:var(--field-pin);stroke:var(--field-pin-ink);stroke-width:.5}.field-marker-halo{fill:#09291d;opacity:.3}
.field-marker text{fill:var(--field-pin-ink);font-family:var(--font-ui);font-weight:700}
.field-drill{stroke:var(--field-pin);stroke-width:1.5;fill:none;stroke-dasharray:4 4;opacity:.75}
.field-cones{fill:#df9651;stroke:#fff0d4;stroke-width:.8}
.field-balls{fill:var(--field-line);stroke:var(--field-pin);stroke-width:1}
.field-drill-home{fill:var(--field-pin-ink)}
.position-card-copy{display:flex;flex-direction:column;padding:10px 23px 22px;gap:6px}
.position-card-title{display:flex;align-items:center;justify-content:space-between;gap:14px}
.position-card-title b{font-size:20px;font-weight:700;letter-spacing:-.3px}
.position-cta-arrow{display:inline-block;transition:transform .2s ease;transform:translateX(0)}
.position-card:not(:disabled):hover .position-cta-arrow,.position-card:focus-visible .position-cta-arrow{transform:translateX(5px)}
.position-caption{font-size:12px;line-height:1.6;color:var(--muted)}
.position-availability{display:flex;align-items:center;gap:7px;margin-top:9px;color:var(--muted);font-size:11px;line-height:1.4}
.position-availability.is-ready{color:var(--ink);font-weight:600}
.position-availability.is-coming{align-self:flex-start;border:1px solid var(--line);border-radius:20px;padding:4px 9px;margin-top:5px;font-size:10px}
.position-team-note{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-size:12px;color:var(--muted)}
.position-team-note a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
html[data-theme=dark] .position-art{--field-border:#72927a}
@media(max-width:960px){.position-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.position-art{max-height:205px}.position-intro{align-items:flex-start}.position-context{margin-top:8px}}
@media(max-width:600px){.position-selection .journey-shell{padding:22px 18px 40px}.position-selection .journey-progress{margin-bottom:26px}.journey-progress{gap:12px}.journey-steps{gap:14px}.journey-progress #resume{max-width:92px;font-size:12px}.position-intro{display:block;margin-bottom:24px}.position-context{margin-top:16px;flex-direction:row;align-items:center;justify-content:space-between;border-left:0;padding:0;font-size:12px}.position-intro p{font-size:12px}.position-grid{gap:12px}.position-visual{margin:8px 4px 0}.position-card-copy{padding:8px 12px 15px;gap:5px}.position-card-title b{font-size:17px}.position-caption{font-size:11px;min-height:35px}.position-availability{font-size:9px;margin-top:5px;align-items:flex-start;gap:5px}.position-team-note{font-size:11px;gap:12px;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.position-card,.position-cta-arrow{transition:none}.position-card:not(:disabled):hover .position-cta-arrow,.position-card:focus-visible .position-cta-arrow{transform:none}}
