/* v12 comparison finish: preserve photos, composition and the fast sweep. */
.home-v12 .has-network .hero-ribbon { display:none }
.home-v12 .concept-slide::after {
  background:
    linear-gradient(90deg,rgba(9,31,48,.73),rgba(9,31,48,.42) 43%,transparent 76%),
    linear-gradient(180deg,rgba(9,31,48,.2),transparent 52%);
}
.home-v12 .concept-slide .slide-copy {
  text-shadow:0 2px 14px #071e2d66;
}
.home-v12 .concept-slide .slide-intro,
.home-v12 .concept-slide .slide-link { text-shadow:0 1px 5px #071e2d99 }
.network-mobile-labels { display:none }
@media(max-width:600px) {
  .home-v12 .concept-slide::after {
    background:linear-gradient(180deg,#0a2239dd 0,#0a2239a8 170px,#0a22394d 310px,transparent 440px);
  }
  /* Label callouts use the same geographic coordinates as the route endpoints.
     Nearby Osaka/Kobe share one callout; neither point or route is moved. */
  .home-v12 .hero-network [data-camera="north-up"] .network-port text,
  .home-v12 .hero-network [data-camera="north-up"] .network-region text,
  .home-v12 .hero-network [data-camera="north-up"] .network-hub text,
  .home-v12 .hero-network [data-camera="north-up"] .network-hub-leader { display:none }
  .home-v12 .hero-network [data-camera="north-up"] .network-mobile-labels { display:block }
  .home-v12 .hero-network .network-mobile-labels text {
    font-size:26px;fill:#b7e7ff;stroke-width:5;font-weight:500;
  }
  .home-v12 .hero-network .network-mobile-labels path {
    stroke:#7ca6bc;stroke-width:1.4;fill:none;
  }
  .home-v12 .hero-network .network-mobile-labels .mobile-hub-label {
    fill:#ffe1a1;font-size:31px;font-weight:700;
  }
  .home-v12 .hero-network .network-mobile-labels .mobile-hub-label tspan {
    font-size:22px;fill:#f0e7d5;font-weight:500;
  }
  .home-v12 .hero-network .network-mobile-labels .mobile-hub-leader {
    stroke:#ffe1a1;stroke-width:2;
  }
  .home-v12 .hero-network .network-route { stroke-width:3.2 }
  .home-v12 .hero-network .network-hub-dot { stroke-width:3 }
}
