/* Production panorama: the approved composition stays intact, not a mosaic of cards. */
.asa-features.asa-features--industry > .asa-container { max-width: 1942px; }
.asa-features--industry .section-title { font-size: clamp(1.6rem,2.65vw,2.75rem); }
.asa-features--industry .section-sub { font-size: clamp(.95rem,1.25vw,1.35rem); }
@supports (zoom:1) and (width:1cqw) {
  /* Use the available horizontal canvas rather than shrinking its width twice.
     The viewport fitter may reduce only the decorative camera's height first. */
  .asa-home-intro.asa-features--industry > .asa-container { width: calc(100cqw / var(--asa-map-scale)); max-width: calc(1942px / var(--asa-map-scale)); }
}
.asa-live-map--industry .asa-live-map-stage { max-width:none; }
.asa-live-map--industry .asa-industry-world { aspect-ratio:1942 / 809; }
.asa-live-map--industry .asa-map-stations { justify-content:safe center; gap:8px clamp(18px,1.75vw,32px); margin-bottom:0; padding-block:8px 12px; }
.asa-live-map--industry .asa-map-station { position:relative!important; left:auto!important; top:auto!important; transform:none!important; font-size:clamp(.92rem,1.15vw,1.12rem); gap:9px; padding:8px 4px; }
.asa-live-map--industry .asa-map-station-icon svg { width:27px; }
.asa-live-map--industry .asa-map-station-text { text-underline-offset:7px; }
.asa-live-map--industry .asa-map-world { margin-bottom:0; }
.asa-live-map--industry .asa-live-map-panels { margin-top:0; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-content { border-inline-start:0; padding:0; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-title { font-size:clamp(1.15rem,1.55vw,1.65rem); line-height:1.65; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-text { font-size:clamp(.95rem,1.05vw,1.13rem); max-width:none; line-height:1.85; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-points { margin-top:10px; gap:6px 24px; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-related { margin-top:8px; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-related ul { gap:4px 28px; }
.asa-live-map--industry .asa-live-map-panel .asa-benefit-related a { font-size:clamp(.85rem,.96vw,1rem); }
.asa-industry-details { grid-column:2; grid-row:2 / span 2; font-size:.88rem; color:#2f608d; }
.asa-industry-details summary { cursor:pointer; width:fit-content; padding:6px 0; min-height:44px; display:list-item; }
.asa-industry-details summary:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
.asa-industry-details[open] .asa-benefit-points { display:block; }
@supports (zoom:1) {
  /* Preserve the chosen design scale, but never sacrifice reading size to fit a short screen. */
  .asa-features--industry .section-title { font-size:max(clamp(1.6rem,2.65vw,2.75rem),calc(1.3rem / var(--asa-map-scale,1))); }
  .asa-features--industry .section-sub { font-size:max(clamp(.95rem,1.25vw,1.35rem),calc(.92rem / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-title { font-size:max(clamp(1.15rem,1.55vw,1.65rem),calc(1.15rem / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-label { font-size:max(.73rem,calc(.75rem / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-map-station { font-size:calc(clamp(.92rem,1.15vw,1.12rem) / var(--asa-map-scale,1)); }
  .asa-features--industry .asa-map-station-icon svg { width:max(27px,calc(24px / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-text { font-size:calc(clamp(.94rem,1.05vw,1.12rem) / var(--asa-map-scale,1)); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-related a { font-size:calc(.88rem / var(--asa-map-scale,1)); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-related h4 { font-size:max(.76rem,calc(.76rem / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-live-map-panel .asa-benefit-points li { font-size:max(.9rem,calc(.88rem / var(--asa-map-scale,1))); }
  .asa-features--industry :is(.asa-benefit-action,.asa-home-actions .asa-btn) { font-size:max(.9rem,calc(.9rem / var(--asa-map-scale,1))); }
  .asa-features--industry .asa-industry-details { font-size:calc(.88rem / var(--asa-map-scale,1)); }
  .asa-features--industry .asa-industry-details summary { min-height:calc(45px / var(--asa-map-scale,1)); min-width:calc(45px / var(--asa-map-scale,1)); }
}
.asa-live-map--industry .asa-map-station { flex-shrink:0; }
.asa-live-map--industry .asa-map-station-text { white-space:normal; overflow-wrap:anywhere; min-width:0; }
.asa-live-map--industry .asa-map-station[aria-selected="true"] { text-shadow:0 2px 18px #168cf41a; }
.asa-live-map--industry .asa-map-station[aria-selected="true"] .asa-map-station-icon { filter:drop-shadow(0 3px 6px #168cf42b); }
.asa-features--industry[data-asa-home-fit-mode="scroll"] { scroll-margin-top:var(--asa-header-height,96px); }
@media (min-width:981px) {
  /* Independent columns: long links/details must never push the topic's title down. */
  .asa-live-map--industry.is-map-enhanced .asa-benefit-content { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); column-gap:clamp(24px,4vw,76px); align-items:start; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-overview { grid-column:1; min-width:0; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-resources { grid-column:2; min-width:0; display:flex; flex-direction:column; align-items:stretch; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-resources .asa-benefit-related { order:-1; margin-top:0; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-resources > .asa-benefit-points { margin:0; display:block; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-content:not(:has(.asa-benefit-resources > *)) .asa-benefit-overview { grid-column:1 / -1; }
  .asa-live-map--industry.is-map-enhanced .asa-benefit-action { grid-column:1 / -1; justify-self:start; }
}
.asa-industry-core .asa-core-layer-label { font-size:15px; font-weight:750; }
.asa-industry-core .asa-core-title { font-size:16px; letter-spacing:.2px; }
.asa-industry-world .asa-map-device-label { font-size:8px; }
.asa-industry-world .asa-map-device-label--phone { font-size:5px; }
.asa-industry-dashboard .asa-dashboard-title { font-size:16px; font-weight:750; }
.asa-industry-projector { overflow:visible; pointer-events:none; }
.asa-industry-projection-frame { position:relative; width:1942px; height:809px; margin:0; padding:0; border:0; direction:ltr; }
.asa-industry-projection-plane { position:absolute; left:0; top:0; margin:0; padding:0; border:0; transform-origin:0 0; }
.asa-industry-projection-plane > svg { display:block; width:100%; height:100%; max-width:none; overflow:hidden; }
.asa-industry-projection-plane > [data-display-corner] { position:absolute; display:block; width:0; height:0; margin:0; padding:0; pointer-events:none; }
.asa-industry-dashboard .asa-map-screen-label { font-size:9px; font-weight:600; }
.asa-industry-dashboard .asa-map-source-heading { font-size:10px; font-weight:700; }
.asa-industry-dashboard .asa-map-source-label { font-size:9px; font-weight:550; }
.asa-industry-dashboard .asa-map-source-code { font-size:9px; font-weight:450; }
.asa-industry-world .asa-map-route--inventory .asa-map-track-light { stroke:#66b9f3; stroke-width:2; opacity:.65; }
.asa-industry-labels .asa-map-svg-label { font-size:21px; font-weight:750; }
.asa-industry-labels :is(.asa-map-svg-label--finance,.asa-map-svg-label--sales,.asa-map-svg-label--verified) { font-size:16px; }
.asa-industry-labels .asa-map-svg-label--reports { font-size:15px; }
.asa-industry-labels .asa-map-svg-label--verified { fill:#239b89; font-size:14px; }
.asa-industry-screen-copy .asa-map-screen-label { font-size:10px; }
.asa-industry-screen-copy :is(.asa-map-source-heading,.asa-map-source-label,.asa-map-source-code) { font-size:8px; }
.asa-industry-world .asa-map-transit-document > rect { fill:#ffffffed; stroke-width:1; }
.asa-industry-world .asa-map-track-light { opacity:.18; stroke-width:1.4; }
.asa-industry-world .asa-map-track-flow { opacity:.8; stroke-width:1.6; }
.asa-industry-world .asa-map-route:nth-of-type(2n) :is(.asa-map-packet,.asa-map-track-flow) { animation-duration:calc(var(--map-cycle) * 1.15); }
.asa-industry-conveyor { animation:asaIndustryBelt calc(var(--map-cycle) * .6) linear infinite; opacity:.8; }
.asa-industry-joint { fill:#d9ffff; stroke:#1f9dda; stroke-width:1; animation:asaIndustryJoint calc(var(--map-cycle) * .7) ease-in-out infinite; animation-delay:calc(var(--operation-step) * -.6s); }
.asa-industry-scanner { animation:asaIndustryScan calc(var(--map-cycle) * .7) ease-in-out infinite; transform-box:fill-box; transform-origin:center; }
.asa-industry-status { fill:#8affdc; stroke:#069bd9; stroke-width:1; animation:asaIndustryStatus calc(var(--map-cycle) * .7) ease-in-out infinite; }
.asa-industry-workpiece { offset-rotate:0deg; offset-distance:var(--workpiece-position); animation:asaMapPacket calc(var(--map-cycle) * .7) linear infinite; animation-delay:var(--workpiece-delay); }
@keyframes asaIndustryBelt { to { stroke-dashoffset:-180; } }
@keyframes asaIndustryJoint { 0%,24%,100% { opacity:.15; } 38%,60% { opacity:1; } }
@keyframes asaIndustryScan { 0%,15%,100% { opacity:0; transform:translate(0,0); } 35%,70% { opacity:.85; } 85% { opacity:0; transform:translate(28px,-9px); } }
@keyframes asaIndustryStatus { 0%,100% { opacity:.4; } 50% { opacity:1; } }
@media (max-width:980px) {
  .asa-live-map--industry .asa-map-stations { justify-content:flex-start; }
  .asa-live-map--industry .asa-live-map-panel .asa-benefit-related ul { gap:4px 22px; }
}
@media (max-width:600px) {
  .asa-live-map--industry .asa-industry-world { aspect-ratio:490 / 450; }
  .asa-features--industry .section-title { font-size:clamp(1.3rem,5.4vw,1.75rem); line-height:1.5; margin-bottom:8px; }
  .asa-features--industry .section-sub { font-size:.92rem; }
  .asa-live-map--industry .asa-live-map-panel .asa-benefit-text { line-height:1.9; }
  @supports (zoom:1) {
    .asa-features--industry .section-title { font-size:max(clamp(1.3rem,5.4vw,1.75rem),calc(1.3rem / var(--asa-map-scale,1))); }
    .asa-features--industry .section-sub { font-size:calc(.92rem / var(--asa-map-scale,1)); }
  }
}
@media (prefers-reduced-motion:reduce) { .asa-industry-world * { animation:none!important; transition:none!important; } }
@media (forced-colors:active) { .asa-industry-labels text { fill:CanvasText; } }
@media print { .asa-live-map--industry .asa-live-map-panel .asa-benefit-points { display:block; } .asa-industry-world { max-height:95mm; } }
