/* Who we help first, V6.79. Premium animated industry cards. CSP-safe: no inline styles. */
@property --ixa{syntax:"<angle>";inherits:false;initial-value:0deg}
.ixs{position:relative;overflow:hidden;isolation:isolate}
.ixs::before,.ixs::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(90px);pointer-events:none}
.ixs::before{width:44rem;height:44rem;left:-14rem;top:-10rem;background:radial-gradient(circle,rgba(246,147,29,.22),transparent 65%);animation:ixfloat 18s ease-in-out infinite alternate}
.ixs::after{width:40rem;height:40rem;right:-12rem;bottom:8rem;background:radial-gradient(circle,rgba(255,106,26,.16),transparent 65%);animation:ixfloat 22s ease-in-out infinite alternate-reverse}
@keyframes ixfloat{to{transform:translate3d(4rem,3rem,0) scale(1.08)}}
.ixs h2 em{font-style:italic;background:linear-gradient(100deg,var(--gold),var(--orange) 55%,var(--ember));-webkit-background-clip:text;background-clip:text;color:transparent}
.ixg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,1.8vw,1.6rem);margin-top:clamp(2rem,4vw,3.2rem)}
.ixc{position:relative;display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:var(--r,22px);transition:transform .6s var(--ease),border-color .4s var(--ease),box-shadow .6s var(--ease)}
.ixc::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;background:conic-gradient(from var(--ixa),transparent 0 62%,rgba(255,106,26,.95) 78%,rgba(240,180,41,1) 88%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);opacity:0;transition:opacity .5s var(--ease)}
.ixc:hover,.ixc:focus-within{transform:translateY(-8px);box-shadow:0 40px 80px -40px rgba(246,147,29,.45),0 20px 40px -30px #000}
.ixc:hover::after,.ixc:focus-within::after{opacity:1;animation:ixspin 3.2s linear infinite}
@keyframes ixspin{to{--ixa:360deg}}
.ixc__art{position:relative;padding:.7rem .7rem 0}
.ix{display:block;width:100%;height:auto;border-radius:14px}
.ix-bg{fill:rgba(8,8,10,.7)}
.ix-grid{fill:none;stroke:rgba(255,255,255,.05);stroke-width:1;stroke-dasharray:1 13}
.ixc__n{position:absolute;left:1.5rem;top:1.3rem;font-family:var(--serif);font-size:1.15rem;color:var(--gold);letter-spacing:.04em}
.ixc__tag{position:absolute;right:1.4rem;top:1.25rem;padding:.28rem .7rem;border:1px solid rgba(240,180,41,.4);border-radius:99px;background:rgba(8,8,10,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.ixc--p .ixc__tag,.ixc--l .ixc__tag{border-color:rgba(255,255,255,.22);color:var(--mute)}
.ixc__body{display:flex;flex-direction:column;gap:.55rem;padding:1.3rem 1.6rem 1.7rem;flex:1}
.ixc__body .ixc__stat{margin:0;display:flex;align-items:baseline;gap:.15rem;font-family:var(--serif);font-size:clamp(3.2rem,4.6vw,4.4rem);line-height:1;letter-spacing:-.02em}
.ixc__val{background:linear-gradient(100deg,#fff 10%,var(--gold) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.ixc__pct{font-size:.5em;color:var(--gold);-webkit-text-fill-color:var(--gold)}
.ixc__met{margin:0 0 .5rem;font-size:.82rem;line-height:1.4;color:var(--dim);padding-bottom:.9rem;border-bottom:1px solid var(--line)}
.ixc__body h3{font-size:clamp(1.45rem,1.9vw,1.75rem);margin:0}
.ixc__body p{margin:0;color:var(--mute);font-size:.98rem;line-height:1.55}
.ixc__body .ixc__fix{display:flex;gap:.6rem;align-items:flex-start;margin-top:auto;padding-top:.9rem;color:var(--ink);font-weight:600}
.ixk{flex:none;width:1.25rem;height:1.25rem;margin-top:.15rem;padding:.2rem;border-radius:50%;background:linear-gradient(135deg,var(--orange),var(--gold));color:#120a02}
.ixc__body .ixc__more{font-size:.82rem;color:var(--gold)}
/* art: shared */
.ix *{transform-box:fill-box}
.ix-base{stroke:rgba(255,255,255,.25);stroke-width:1.5}
/* construction */
.ix-b{fill:url(#gc);fill-opacity:.9;transform-origin:50% 100%;transform:scaleY(.2);animation:ixrise 4.8s var(--ease) infinite}
.ix-b2{animation-delay:.25s}.ix-b3{animation-delay:.5s}.ix-b4{animation-delay:.75s}
@keyframes ixrise{0%{transform:scaleY(.15)}35%,80%{transform:scaleY(1)}100%{transform:scaleY(.15)}}
.ix-crane{fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ix-hook{fill:var(--ember);transform-origin:50% 0;animation:ixhook 4.8s ease-in-out infinite}
@keyframes ixhook{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
/* manufacturing */
.ix-ring{fill:none;stroke:var(--orange);stroke-width:3}
.ix-teeth{fill:none;stroke:var(--gold);stroke-width:7;stroke-dasharray:3.4 6.2;opacity:.85}
.ix-hub{fill:var(--ember)}
.ix-gear{transform-origin:50% 50%;animation:ixturn 14s linear infinite}
.ix-gear2{transform-origin:50% 50%;animation:ixturn 9s linear infinite reverse}
@keyframes ixturn{to{transform:rotate(360deg)}}
.ix-scan{fill:var(--gold);opacity:.7;animation:ixscan 4.2s ease-in-out infinite alternate}
@keyframes ixscan{to{transform:translateX(196px)}}
/* energy */
.ix-sun{fill:url(#ge)}
.ix-rays{fill:none;stroke:var(--gold);stroke-width:2.4;stroke-linecap:round;transform-box:view-box;transform-origin:62px 52px;animation:ixturn 22s linear infinite}
.ix-wave{fill:none;stroke:rgba(255,255,255,.22);stroke-width:2}
.ix-wave2{stroke:var(--orange);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:44 190;animation:ixdash 3.6s linear infinite}
@keyframes ixdash{to{stroke-dashoffset:-234}}
.ix-bolt{fill:url(#ge);animation:ixglow 2.6s ease-in-out infinite;transform-origin:50% 50%}
@keyframes ixglow{0%,100%{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}
/* wholesale */
.ix-flow{fill:none;stroke:var(--orange);stroke-width:1.8;stroke-dasharray:6 8;animation:ixdash2 2.2s linear infinite;opacity:.8}
@keyframes ixdash2{to{stroke-dashoffset:-28}}
.ix-n{fill:#0b0b0e;stroke:var(--gold);stroke-width:2.4;transform-origin:50% 50%;animation:ixnode 3s ease-in-out infinite}
.ix-n2{animation-delay:.4s}.ix-n3{animation-delay:.8s}.ix-n4{animation-delay:1.2s}
@keyframes ixnode{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
.ix-core{fill:url(#gw)}
.ix-pulse{fill:none;stroke:var(--ember);stroke-width:2;transform-origin:50% 50%;animation:ixpulse 2.6s ease-out infinite}
@keyframes ixpulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(3.4);opacity:0}}
/* professional */
.ix-card{fill:rgba(255,255,255,.06);stroke:rgba(255,255,255,.28);stroke-width:1.5}
.ix-av{fill:url(#gp)}
.ix-l{fill:rgba(255,255,255,.2);transform-origin:0 50%;animation:ixline 4.4s var(--ease) infinite}
.ix-l2{animation-delay:.3s}.ix-l3{animation-delay:.6s}
@keyframes ixline{0%{transform:scaleX(.1)}30%,85%{transform:scaleX(1)}100%{transform:scaleX(.1)}}
.ix-badge{fill:url(#gp);transform-origin:50% 50%;animation:ixbadge 4.4s ease-in-out infinite}
@keyframes ixbadge{0%,20%{transform:scale(0)}35%{transform:scale(1.18)}45%,90%{transform:scale(1)}100%{transform:scale(0)}}
.ix-tick{fill:none;stroke:#120a02;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
/* local */
.ix-pin{fill:url(#gl)}
.ix-pinc{fill:#0b0b0e}
.ix-pin,.ix-pinc{transform-origin:50% 100%;animation:ixbob 3s ease-in-out infinite}
@keyframes ixbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.ix-rip{fill:none;stroke:var(--orange);stroke-width:2;transform-origin:50% 50%;animation:ixrip 3.6s ease-out infinite}
.ix-rip2{animation-delay:1.2s}.ix-rip3{animation-delay:2.4s}
@keyframes ixrip{0%{transform:scale(.4);opacity:.9}100%{transform:scale(6.5);opacity:0}}
.ix-dot{fill:var(--gold);transform-origin:50% 50%;animation:ixnode 2.8s ease-in-out infinite}
.ix-dot2{animation-delay:.6s}.ix-dot3{animation-delay:1.2s}
/* reveal stagger */
.ixc.rv:nth-child(2){transition-delay:.08s}.ixc.rv:nth-child(3){transition-delay:.16s}.ixc.rv:nth-child(4){transition-delay:.08s}.ixc.rv:nth-child(5){transition-delay:.16s}.ixc.rv:nth-child(6){transition-delay:.24s}
/* pause off-screen art to save battery */
.ixc:not(.in) .ix *{animation-play-state:paused}
@media (max-width:1060px){.ixg{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.ixg{grid-template-columns:1fr}.ixc:hover,.ixc:focus-within{transform:none}}
@media (prefers-reduced-motion:reduce){
  .ixs::before,.ixs::after,.ixc::after,.ix *{animation:none!important}
  .ix-b,.ix-l{transform:none}.ix-badge{transform:none}
  .ixc,.ixc:hover{transition:none;transform:none}
}
