/* Hero artwork: growth bars -> sprout -> small production line */
.hero-art{display:none}
.company-page .hero-top{grid-row:1}
@media(min-width:900px){
.company-page .hero-art{display:block;grid-column:2;grid-row:2 / span 4;align-self:center;justify-self:end;width:100%;max-width:560px;margin:0 0 10px;position:relative;z-index:0;pointer-events:none;--ha-ink:#25352e;--ha-acc:#aa4d2d;--ha-mint:#eaf0e5;--ha-line:rgba(36,54,46,.28)}
.hero-art svg{display:block;width:100%;height:auto;overflow:visible}
.hero-art .ha-grid{stroke:var(--ha-line);stroke-width:1;opacity:.35}
.hero-art .ha-ground{stroke:var(--ha-ink);stroke-width:1.5}
.hero-art .ha-bar{fill:var(--ha-ink)}
.hero-art .ha-bar.is-acc{fill:var(--ha-acc)}
.hero-art .ha-path{fill:none;stroke:var(--ha-acc);stroke-width:2.5;stroke-linecap:round}
.hero-art .ha-belt{stroke:var(--ha-ink);stroke-width:1.5;stroke-dasharray:3 7;opacity:.55}
.hero-art .ha-stem{fill:none;stroke:var(--ha-ink);stroke-width:3;stroke-linecap:round}
.hero-art .ha-leaf{fill:var(--ha-mint);stroke:var(--ha-ink);stroke-width:1.5}
.hero-art .ha-leaf.is-acc{fill:var(--ha-acc);stroke:var(--ha-acc)}
.hero-art .ha-node rect{fill:var(--ha-mint);stroke:var(--ha-ink);stroke-width:1.5}
.hero-art .ha-node text{font:600 12px/1 "Noto Serif SC","Songti SC",serif;fill:var(--ha-ink);text-anchor:middle}
.hero-art .ha-node .ha-no{font:500 9px/1 ui-monospace,Menlo,monospace;fill:var(--ha-acc);letter-spacing:.1em}
.hero-art .ha-mote{fill:var(--ha-ink);opacity:.22}
.hero-art .ha-bar{filter:drop-shadow(3px 3px 0 rgba(170,77,45,.18))}
.hero-art .ha-dot{fill:var(--ha-acc)}
.hero-art .ha-halo{fill:var(--ha-acc);opacity:.18}
.hero-art .ha-cap{font:500 10px/1 ui-monospace,Menlo,monospace;fill:var(--ha-ink);opacity:.6;letter-spacing:.14em}
}
@media(prefers-reduced-motion:no-preference) and (min-width:900px){
.hero-art .ha-bar{transform-box:fill-box;transform-origin:50% 100%;animation:ha-grow 1.1s cubic-bezier(.2,.8,.2,1) both,ha-breathe 5s 2.4s ease-in-out infinite}
.hero-art .ha-bar:nth-of-type(2){animation-delay:.18s,2.6s}
.hero-art .ha-bar:nth-of-type(3){animation-delay:.36s,2.8s}
.hero-art .ha-path,.hero-art .ha-stem{stroke-dasharray:1;stroke-dashoffset:1;animation:ha-draw 1.5s .9s cubic-bezier(.4,0,.2,1) forwards}
.hero-art .ha-stem{animation-delay:1.9s;animation-duration:.8s}
.hero-art .ha-leaf{transform-box:fill-box;transform-origin:0 100%;animation:ha-pop .6s both;animation-delay:2.5s}
.hero-art .ha-leaf+.ha-leaf{transform-origin:100% 100%;animation-delay:2.7s}
.hero-art .ha-node{animation:ha-rise .6s both}
.hero-art .ha-node:nth-of-type(1){animation-delay:2.2s}.hero-art .ha-node:nth-of-type(2){animation-delay:2.4s}.hero-art .ha-node:nth-of-type(3){animation-delay:2.6s}
.hero-art .ha-belt{animation:ha-belt 1.2s linear infinite}
.hero-art .ha-halo{transform-box:fill-box;transform-origin:center;animation:ha-pulse 2.4s 3s ease-out infinite}
.hero-art .ha-dot-g{opacity:0;animation:ha-fade .5s 3s forwards}
}
@media(prefers-reduced-motion:no-preference) and (min-width:900px){.hero-art .ha-mote{animation:ha-float var(--t) var(--d) ease-in-out infinite}.hero-art .ha-sun{transform-box:fill-box;transform-origin:center;animation:ha-breathe2 7s ease-in-out infinite}}
@keyframes ha-float{50%{transform:translate(10px,-22px);opacity:.5}}
@keyframes ha-breathe2{50%{transform:scale(1.12)}}
@keyframes ha-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes ha-breathe{50%{transform:scaleY(1.04)}}
@keyframes ha-draw{to{stroke-dashoffset:0}}
@keyframes ha-pop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes ha-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes ha-belt{to{stroke-dashoffset:-10}}
@keyframes ha-pulse{from{transform:scale(.6);opacity:.35}to{transform:scale(1.8);opacity:0}}
@keyframes ha-fade{to{opacity:1}}
