/* V6: one manual cargo choice, present throughout the journey and the compact service studio. */
.journey-cargo-switcher {
  position:absolute;z-index:5;left:49%;right:5.5%;bottom:79px;max-width:650px;
  color:#edf3f0;pointer-events:auto;
}
.journey-cargo-label {display:block;margin-bottom:11px;font:500 8px/1.4 var(--body);letter-spacing:.16em;color:#a6bac7}
.journey-cargo-buttons {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}
.journey-cargo-buttons>button {
  position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;
  min-width:0;min-height:87px;padding:13px 15px 12px;border:1px solid #9cb8c347;background:#101f2bdc;
  color:#d6e2e7;text-align:left;backdrop-filter:blur(14px);transition:border-color .25s,background .25s,color .25s;
}
.journey-cargo-buttons>button>strong {font:700 italic 40px/.86 var(--display);letter-spacing:-.025em;padding-right:.07em}
.journey-cargo-buttons>button>span {display:block;max-width:100%;font:400 9px/1.45 var(--body);color:#9eb4c1;min-height:26px}
.journey-cargo-buttons>button::after {content:'';position:absolute;inset:auto 0 -1px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.journey-cargo-buttons>button:is(:hover,:focus-visible) {background:#173244f0;border-color:#a0bfce99;color:#fff}
.journey-cargo-buttons>button[aria-pressed=true] {background:#203c4ee8;border-color:#ef956d;color:#ff9b70}
.journey-cargo-buttons>button[aria-pressed=true]>span {color:#d9e7ea}
.journey-cargo-buttons>button[aria-pressed=true]::after {transform:scaleX(1)}
.journey-cargo-buttons>button:focus-visible {outline:2px solid #f2e8d7;outline-offset:4px}
.journey-cargo-caption {display:block;margin-top:11px;font:400 10px/1.5 var(--body);color:#9cb3c1;letter-spacing:.015em}

/* Preserve room for the truck and controls even when a heading wraps to three lines. */
.journey.enhanced .journey-panels {top:28%;bottom:110px}
.journey.enhanced .journey-panel {max-width:44%;min-width:0}
.journey.enhanced .journey-panel h3 {font-size:clamp(38px,4.05vw,68px);line-height:1.07;letter-spacing:-.055em;max-width:620px;overflow-wrap:normal}
.journey.enhanced .journey-panel>p:not(.chapter-kicker) {font-size:12px;line-height:1.85;max-width:345px;margin-top:22px}
.journey.enhanced .journey-panel .button {margin-top:25px}
.journey-word {max-width:94%;font-size:clamp(90px,13vw,205px);letter-spacing:-.02em}

/* A concise comparison after the immersive journey: three rows in one view. */
.cinematic .services {padding-block:72px 78px}
.cinematic .services .section-top {margin-bottom:25px}
.cinematic .services .section-heading {margin-bottom:34px;gap:60px}
.cinematic .services .section-heading h2 {font-size:clamp(36px,3.5vw,52px);line-height:1.08}
.cinematic .services .section-heading>p {font-size:12px;line-height:1.8;max-width:390px}
.cinematic .service-lab {grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:30px;align-items:start}
.cinematic .service-viewer {
  position:relative;top:0;z-index:1;min-height:0;height:clamp(395px,calc(100svh - 335px),480px);
  grid-template-rows:auto minmax(0,1fr) auto auto auto;border-color:#60849b55;box-shadow:none;
}
.cinematic .service-viewer[data-status=unavailable] {height:auto;min-height:0}
.cinematic .service-viewer .cargo-tabs {display:none}
.cinematic .service-viewer-top {padding:18px 20px 0}
.cinematic .cargo-current {padding:13px 20px 15px;min-height:0}
.cinematic #cargo-service-tag,.cinematic #cargo-service-description {display:none}
.cinematic #cargo-service-title {font-size:21px;line-height:1.16;margin:0;max-width:none}
.cinematic .cargo-meter {margin-inline:20px}
.cinematic .cargo-view-footer {padding:12px 20px 15px;gap:12px;flex-wrap:wrap}
.cinematic .cargo-dimensions {font-size:10px}
.cinematic .cargo-dimensions>span {font-size:8px}
.cinematic .cargo-view-note {font-size:8px;max-width:150px}
.cinematic .service-lab .service-list.service-cards {gap:10px;grid-template-columns:minmax(0,1fr)}
.cinematic .service-lab .service-card,
.cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) {
  display:grid;grid-template-columns:72px minmax(0,1fr) 86px;grid-template-rows:auto auto;
  align-items:start;gap:11px 20px;min-height:0;height:auto;padding:17px 18px 16px;
  background:#f5f6ef;transform:none;box-shadow:none;border-color:#b9c9cc;scroll-margin-top:115px;
}
.cinematic .service-lab .service-card.is-active,
.cinematic .service-lab .service-card.is-active:is(:hover,:focus-visible,:focus-within) {background:#fffef7;border-color:#ed8a5c;box-shadow:inset 3px 0 #ed8a5c}
.cinematic .service-lab .service-card .service-card-top {
  grid-column:1;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;
  gap:9px;min-height:0;padding:2px 0 0;
}
.cinematic .service-lab .service-card .service-code,
.cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) .service-code {font:700 italic 51px/.85 var(--display);letter-spacing:-.03em;color:#24495f}
.cinematic .service-lab .service-card.is-active .service-code {color:#1769b9}
.cinematic .service-lab .service-card .service-number {display:block;font-size:7px;letter-spacing:.08em;color:#7b949c;padding:0}
.cinematic .service-lab .service-card .service-visual {grid-column:3;grid-row:1;position:relative;inset:auto;align-self:center;width:86px;height:51px;margin:0;padding:0}
.cinematic .service-lab .service-card .service-micro,.cinematic .service-lab .service-card .service-features {display:none}
.cinematic .service-lab .service-card .service-copy {grid-column:2;grid-row:1;gap:8px;min-width:0;display:flex;flex-direction:column}
.cinematic .service-lab .service-card .service-copy strong {font:500 19px/1.16 var(--heading);letter-spacing:-.04em;min-height:0;max-width:none;color:#1b394c}
.cinematic .service-lab .service-card .service-copy>span,
.cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) .service-copy>span {font:400 10.5px/1.7 var(--body);max-width:none;color:#536d7b}
.cinematic .service-lab .service-card .service-card-bottom {
  grid-column:2/4;grid-row:2;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;
  gap:8px 15px;margin:0;padding:0;border:0;min-width:0;
}
.cinematic .service-lab .service-select {min-height:32px;padding:7px 10px;font-size:9px;gap:13px}
.cinematic .service-lab .service-select>span:last-child {font-size:15px}
.cinematic .service-lab .service-detail-button {min-height:32px;font-size:9px;padding:5px 0;gap:10px}
.cinematic .service-lab [data-service-quote] {min-height:32px;padding:6px 0;background:transparent;font:500 9px/1.5 var(--body);color:#173f59;border-bottom:1px solid #91a9b5}

@media(max-width:1180px) {
  .journey-cargo-switcher {left:48%;right:5%;bottom:78px}
  .journey-cargo-buttons>button {min-height:79px;padding:11px 11px 10px;gap:7px}
  .journey-cargo-buttons>button>strong {font-size:35px}
  .journey-cargo-buttons>button>span {font-size:8px;line-height:1.45;min-height:24px}
  .journey.enhanced .journey-panel h3 {font-size:clamp(35px,4.1vw,51px)}
  .cinematic .services {padding-block:65px}
  .cinematic .service-lab {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px}
  .cinematic .service-viewer {height:440px}
  .cinematic .service-lab .service-card,
  .cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) {grid-template-columns:67px minmax(0,1fr);gap:10px 18px;padding:16px 16px 15px}
  .cinematic .service-lab .service-card .service-code {font-size:47px}
  .cinematic .service-lab .service-card .service-copy strong {font-size:18px}
  .cinematic .service-lab .service-card .service-visual {display:none}
  .cinematic .service-lab .service-card .service-card-bottom {grid-column:2}
}
@media(min-width:701px) and (max-height:740px) {
  .journey-sticky {height:100svh;min-height:0}
  .journey-top {top:99px}
  .journey.enhanced .journey-panels {top:28%;bottom:86px}
  .journey.enhanced .journey-panel h3 {font-size:clamp(31px,3.5vw,47px);margin-top:16px}
  .journey.enhanced .journey-panel>p:not(.chapter-kicker) {font-size:11px;line-height:1.75;margin-top:17px}
  .journey.enhanced .journey-panel .button {margin-top:19px;min-height:45px}
  .journey-cargo-switcher {bottom:63px}
  .journey-cargo-label {margin-bottom:8px}
  .journey-cargo-buttons>button {min-height:66px;padding:9px 10px;gap:5px}
  .journey-cargo-buttons>button>strong {font-size:31px}
  .journey-cargo-buttons>button>span {min-height:0;font-size:7px;line-height:1.4}
  .journey-cargo-caption {display:none}
  .cinematic .service-viewer {height:405px}
}
@media(max-width:700px) {
  .journey-sticky {height:100svh;min-height:0}
  .journey-top {top:88px;left:20px;right:20px}
  .journey-word {top:15%;left:16px;font-size:75px;max-width:90%}
  .journey.enhanced .journey-panels {top:20%;left:21px;right:35px;bottom:128px}
  .journey.enhanced .journey-panel {max-width:100%;width:100%}
  .journey.enhanced .journey-panel h3 {font-size:clamp(29px,7.9vw,35px);line-height:1.07;margin-top:16px;max-width:340px;letter-spacing:-.05em}
  .journey.enhanced .journey-panel>p:not(.chapter-kicker) {font-size:11px;line-height:1.8;max-width:292px;margin-top:15px}
  .journey.enhanced .journey-panel .button {font-size:10px;min-height:43px;margin-top:20px;padding-block:8px}
  #journey-canvas {transform:translateY(-2.8svh)}
  .journey-cargo-switcher {left:20px;right:20px;bottom:49px;max-width:none}
  .journey-cargo-label {font-size:7px;line-height:1.3;letter-spacing:.13em;margin-bottom:7px}
  .journey-cargo-buttons {gap:6px}
  .journey-cargo-buttons>button {min-height:63px;padding:9px 9px 8px;gap:5px;background:#122937f0}
  .journey-cargo-buttons>button>strong {font-size:29px;line-height:.85}
  .journey-cargo-buttons>button>span {font-size:7px;line-height:1.35;min-height:19px;max-width:100%}
  .journey-cargo-caption {display:none}
  .journey-bottom {bottom:20px}
  .journey-scroll {font-size:5px}
  .cinematic .services {padding:56px 20px 62px}
  .cinematic .services .section-top {margin-bottom:22px}
  .cinematic .services .section-heading {gap:18px;margin-bottom:28px}
  .cinematic .services .section-heading h2 {font-size:36px}
  .cinematic .services .section-heading>p {font-size:11px;line-height:1.8}
  .cinematic .service-lab {grid-template-columns:1fr;gap:14px}
  .cinematic .service-viewer {position:sticky;top:75px;z-index:6;height:270px;min-height:0;grid-template-rows:auto minmax(0,1fr) auto auto auto}
  .cinematic .service-viewer-top {padding:13px 16px 0}
  .cinematic .cargo-current {padding:10px 16px 11px}
  .cinematic #cargo-service-title {font-size:17px;line-height:1.2}
  .cinematic .cargo-meter {margin-inline:16px}
  .cinematic .cargo-view-footer {padding:9px 16px 11px;gap:9px;flex-wrap:nowrap}
  .cinematic .cargo-dimensions {font-size:9px}
  .cinematic .cargo-dimensions>span {font-size:7px;margin-left:4px}
  .cinematic .cargo-view-note {font-size:6px;max-width:108px}
  .cinematic .service-lab .service-list.service-cards {gap:10px}
  .cinematic .service-lab .service-card,
  .cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) {grid-template-columns:68px minmax(0,1fr);gap:10px 18px;padding:16px 16px 15px;scroll-margin-top:365px}
  .cinematic .service-lab .service-card .service-code,
  .cinematic .service-lab .service-card:is(:hover,:focus-visible,:focus-within) .service-code {font-size:48px}
  .cinematic .service-lab .service-card .service-card-top {padding-top:2px;gap:9px;min-height:0}
  .cinematic .service-lab .service-card .service-number {font-size:7px}
  .cinematic .service-lab .service-card .service-copy strong {font-size:19px;line-height:1.16}
  .cinematic .service-lab .service-card .service-copy>span {font-size:10.5px;line-height:1.65}
  .cinematic .service-lab .service-card .service-card-bottom {grid-column:2;gap:7px 14px}
  .cinematic .service-lab .service-select {font-size:9px;min-height:32px;padding:7px 9px;gap:10px}
  .cinematic .service-lab .service-detail-button {font-size:9px;min-height:32px}
}
@media(max-width:700px) and (max-height:740px) {
  .journey.enhanced .journey-panels {top:20%;bottom:119px}
  .journey.enhanced .journey-panel h3 {font-size:28px;margin-top:13px}
  .journey.enhanced .journey-panel>p:not(.chapter-kicker) {font-size:10px;line-height:1.75;margin-top:13px;max-width:280px}
  .journey.enhanced .journey-panel .button {margin-top:15px;min-height:40px}
  .journey-cargo-switcher {bottom:45px}
  .journey-cargo-label {font-size:6px;margin-bottom:6px}
  .journey-cargo-buttons>button {min-height:49px;padding:7px 8px;gap:4px}
  .journey-cargo-buttons>button>strong {font-size:24px}
  .journey-cargo-buttons>button>span {font-size:6px;min-height:16px;line-height:1.3}
  .cinematic .service-viewer {height:250px}
  .cinematic .service-lab .service-card {scroll-margin-top:344px}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference) {
  /* Leave room for the fixed header and the initial hash-link offset as well as
     the full cargo controls; the sticky scene must never be a second full viewport. */
  .journey.enhanced .journey-sticky {top:64px;height:calc(100svh - 112px);min-height:0}
  .journey.enhanced #journey-canvas {transform:translateY(-4.5svh)}
  .journey.enhanced .journey-cargo-caption {display:block;margin-top:7px;font-size:8px;line-height:1.4}
}
.journey:not(.enhanced) .journey-cargo-switcher {position:sticky;left:auto;right:auto;top:90px;bottom:auto;width:100%;max-width:650px;margin:25px 0 35px;padding:15px;background:#102431}
.motion-paused .journey-cargo-buttons>button,.motion-paused .journey-cargo-buttons>button::after {transition:none}
@media(prefers-reduced-motion:reduce) {
  .journey-cargo-switcher {position:sticky;left:auto;right:auto;top:86px;bottom:auto;width:88%;max-width:650px;margin:25px auto 35px;padding:15px;background:#102431}
  .journey-cargo-buttons>button,.journey-cargo-buttons>button::after {transition:none}
  .journey.enhanced .journey-panels {position:relative;inset:auto}
  .journey.enhanced .journey-panel {max-width:650px;width:100%}
  .journey.enhanced .journey-panel h3 {font-size:clamp(29px,4.05vw,58px)}
  #journey-canvas {transform:none}
  .cinematic .service-viewer {position:relative;top:0}
}
