/* Hero illustration: two column hero on desktop, art on the right */
.scrub-hero .hero-stage.has-art{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;column-gap:clamp(24px,4vw,72px)}
.scrub-hero .hero-stage.has-art .hero-band{grid-column:1;grid-row:1;min-width:0}
.hero-art{grid-column:2;grid-row:1;justify-self:end;width:100%;max-width:600px;min-width:0;pointer-events:none;color:var(--green,#173e34)}
.hero-art svg{display:block;width:100%;height:auto;overflow:visible}

/* Shared hairline */
.hero-art .ha-line,.hero-art .ha-faint,.hero-art .ha-fine,.hero-art .ha-dotted,.hero-art .ha-orbit,.hero-art .ha-shadow,.hero-art .ha-gear,.hero-art .ha-cut,.hero-art .ha-anchor,.hero-art .ha-tick,.hero-art .ha-hub,.hero-art .ha-needle-line,.hero-art .ha-night,.hero-art .ha-subhand,.hero-art .ha-rail,.hero-art .ha-tray,.hero-art .ha-bar,.hero-art .ha-guide,.hero-art .ha-marker-line,.hero-art .ha-spot>*{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}

/* Background detail: light, so the main path reads first */
.hero-art .ha-line{stroke-opacity:.5}
.hero-art .ha-faint{stroke-opacity:.18}
.hero-art .ha-fine{stroke-opacity:.22}
.hero-art .ha-fine.is-firm{stroke-opacity:.45}
.hero-art .ha-dotted{stroke-opacity:.25;stroke-dasharray:1 5}
.hero-art .ha-orbit{stroke-opacity:.16;stroke-dasharray:2 6}
.hero-art .ha-orbit.is-sparse{stroke-dasharray:1 10}
.hero-art .ha-shadow{stroke-opacity:.07}
.hero-art .ha-gear{stroke-opacity:.38;stroke-linejoin:round}
.hero-art .ha-cut{stroke-opacity:.24;stroke-linejoin:round}
.hero-art .ha-anchor{stroke-opacity:.5;stroke-linejoin:round;stroke-linecap:round}
.hero-art .ha-tick{stroke-linecap:round}
.hero-art .ha-tick.is-major{stroke-width:1.5}
.hero-art .ha-subhand{stroke:var(--teal,#168976);stroke-opacity:.8;stroke-linecap:round}
.hero-art .ha-exit{fill:none;stroke:none}
.hero-art .ha-jewel{fill:var(--teal,#168976)}
.hero-art .ha-spot>*{stroke:var(--teal,#168976);stroke-width:1.25}
.hero-art .ha-wedge{fill:var(--teal,#168976);fill-opacity:.07}

/* Day and night */
.hero-art .ha-night-wash{fill:currentColor;fill-opacity:.06}
.hero-art .ha-night{stroke-width:3;stroke-opacity:.9;stroke-linecap:round}
.hero-art .ha-marker{fill:var(--cream,#f6f3e9);stroke:var(--teal,#168976);stroke-width:2;vector-effect:non-scaling-stroke;transition:fill .6s}
.hero-art .ha-marker.is-night{fill:var(--green,#173e34);stroke:var(--cream,#f6f3e9)}
.hero-art .ha-marker-line{stroke:var(--teal,#168976);stroke-width:1.5;stroke-opacity:.9}

/* Main path: intake, hub, rail, tray. Teal and heavier */
.hero-art .ha-guide{stroke:var(--teal,#168976);stroke-width:1.5;stroke-opacity:.55;stroke-dasharray:3 5;stroke-linecap:round}
.hero-art .ha-hub{stroke:var(--teal,#168976);stroke-width:1.5}
.hero-art .ha-hubdot{fill:var(--teal,#168976)}
.hero-art .ha-needle-line{stroke:var(--teal,#168976);stroke-width:1.25;stroke-opacity:.85}
.hero-art .ha-needle-tip{fill:var(--cream,#f6f3e9);stroke:var(--teal,#168976);stroke-width:1.25;vector-effect:non-scaling-stroke}
.hero-art .ha-rail{stroke:var(--teal,#168976);stroke-width:2.25;stroke-opacity:.85}
.hero-art .ha-tray{stroke-width:1.5;stroke-opacity:.75}
.hero-art .ha-visitor{fill:var(--cream,#f6f3e9);stroke:currentColor;stroke-width:1.25;vector-effect:non-scaling-stroke;transition:fill .5s,stroke .5s}
.hero-art .ha-visitor.is-in{fill:var(--teal,#168976);stroke:var(--teal,#168976)}
.hero-art .ha-lead{fill:var(--teal,#168976)}
.hero-art .ha-bar{stroke:var(--teal,#168976);stroke-width:3;stroke-opacity:.55}
.hero-art .ha-bar.is-night{stroke:currentColor;stroke-opacity:.55}
.hero-art .ha-bar.is-now{stroke:var(--teal,#168976);stroke-opacity:1}

/* Room under the art for the funnel that feeds the guide line */
.scrub-hero .hero-stage.has-art{padding-bottom:clamp(150px,17vh,190px)!important}

@media(max-width:1000px){
  .scrub-hero .hero-stage.has-art{display:block}
  .hero-art{width:min(100%,440px);margin:clamp(28px,6vw,48px) 0 0 auto}
}
@media(max-width:600px){
  .hero-art{width:min(100%,340px);margin-right:-4px}
  .scrub-hero .hero-stage.has-art{padding-bottom:130px!important}
}
