/* Hero v2 — matrix backdrop, light beam, cursor torch, side rails, outline headline, proof ticker. */
.zx-hero--v2{position:relative;isolation:isolate;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.zx-hero__matrix{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(rgba(255,190,140,.16) 1px,transparent 1.4px);background-size:26px 26px;-webkit-mask-image:radial-gradient(90% 80% at 30% 45%,#000,transparent 76%);mask-image:radial-gradient(90% 80% at 30% 45%,#000,transparent 76%);animation:zx-matrix 24s linear infinite}
@keyframes zx-matrix{to{background-position:26px 52px}}
.zx-hero__beam{position:absolute;inset:-30% -10%;z-index:0;pointer-events:none;background:conic-gradient(from 200deg at 70% 50%,rgba(255,255,255,0) 0deg,rgba(255,186,120,.1) 34deg,rgba(255,255,255,0) 90deg);animation:zx-spin 42s linear infinite}
.zx-hero__torch{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(420px circle at var(--cx,60%) var(--cy,45%),rgba(255,178,110,.12),transparent 70%);transition:opacity 500ms}

.zx-hero__rail{position:absolute;top:0;bottom:0;z-index:2;width:56px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.zx-hero__rail--l{left:0;border-right:1px solid rgba(255,255,255,.08);flex-direction:column;gap:var(--space-lg)}
.zx-hero__rail--l span{writing-mode:vertical-rl;font-size:var(--type-micro-size);letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.zx-hero__rail--l i{width:1px;height:70px;background:linear-gradient(180deg,transparent,var(--color-brand-orange),transparent)}
.zx-hero__rail--r{right:0;border-left:1px solid rgba(255,255,255,.08);overflow:hidden}
.zx-hero__vmarq{display:flex;flex-direction:column;animation:zx-vslide 22s linear infinite}
@keyframes zx-vslide{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.zx-hero__vset{display:flex;flex-direction:column}
.zx-hero__vset span{writing-mode:vertical-rl;padding:var(--space-lg) 0;font-size:var(--type-micro-size);letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.34)}

.zx-hero--v2 .zx-hero__inner{position:relative;z-index:3;padding-block:calc(var(--nav-height) + var(--space-xxxl)) var(--space-section)}
.zx-hero__title--v2{font-size:clamp(2.1rem,6.2vw,5.6rem);line-height:1.03;letter-spacing:-.045em}
.zx-hero__outline{position:relative;-webkit-text-stroke:1.5px rgba(255,255,255,.42);color:transparent;transition:-webkit-text-stroke-color 420ms}
.zx-hero__outline::after{content:attr(data-text);position:absolute;left:0;top:0;-webkit-text-stroke:0;background:var(--brand-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;clip-path:inset(0 100% 0 0);transition:clip-path 1.4s var(--ease-standard)}
.zx-hero--v2:hover .zx-hero__outline::after,.zx-hero__title--v2:hover .zx-hero__outline::after{clip-path:inset(0 0 0 0)}

.zx-hero__primary{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;gap:10px;border:0;border-radius:var(--radius-pill);padding:16px 30px;font-size:var(--type-body-size);font-weight:var(--weight-semibold);color:var(--color-ink-strong);background:#fff;transition:transform 300ms var(--ease-standard),color 260ms,box-shadow 320ms}
.zx-hero__primary::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--brand-gradient);transform:translateY(101%);transition:transform 440ms var(--ease-standard)}
.zx-hero__primary:hover{color:#fff;transform:translateY(-3px);box-shadow:0 22px 44px -18px rgba(242,112,28,.7)}
.zx-hero__primary:hover::before{transform:none}
.zx-hero__primary:active{transform:scale(.97)}
.zx-hero__primary svg{transition:transform 380ms var(--ease-standard)}
.zx-hero__primary:hover svg{transform:translateX(4px)}

.zx-hero__proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:var(--space-xxl);max-width:44rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-panel);overflow:hidden}
.zx-hero__pcell{display:flex;flex-direction:column;gap:2px;padding:var(--space-md) var(--space-lg);background:rgba(10,8,7,.6);transition:background-color 520ms var(--ease-standard)}
.zx-hero__pcell[data-on]{background:rgba(242,112,28,.16)}
.zx-hero__pcell strong{font-size:var(--type-h3-size);font-weight:var(--weight-semibold);letter-spacing:-.03em;color:#fff}
.zx-hero__pcell span{font-size:var(--type-caption-size);font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.62)}

@media (min-width:1024px){
  .zx-hero--v2 .zx-hero__inner{padding-inline:88px}
}
@media (max-width:1023px){
  .zx-hero--v2{min-height:auto}
  .zx-hero__rail{display:none}
  .zx-hero__proof{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
}
@media (max-width:559px){
  .zx-hero__proof{grid-template-columns:minmax(0,1fr)}
  .zx-hero__pcell{flex-direction:row;align-items:baseline;gap:10px}
  .zx-hero__title--v2{letter-spacing:-.03em}
}
@media (hover:none){.zx-hero__outline::after{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){
  .zx-hero__matrix,.zx-hero__beam,.zx-hero__vmarq{animation:none}
  .zx-hero__torch{display:none}
  .zx-hero__outline::after{clip-path:inset(0 0 0 0);transition:none}
}
