.hero-actions .button{width:220px;height:58px;min-height:58px;padding:15px 24px;gap:18px;flex:none;white-space:nowrap}.hero-actions .button>span{margin-left:auto}
.hero-cycle-track {
  position: absolute;
  z-index: 5;
  top: 102px;
  left: 24px;
  right: 24px;
  height: 1px;
  overflow: hidden;
  background: #1c1e2c;
}

.hero-cycle-track span {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #666, #fff);
  transform: scaleX(0);
  transform-origin: left;
}

.hero-visual.cycle-running .hero-cycle-track span {
  animation: hero-cycle-progress 6s linear forwards;
}

.hero-visual.cycle-paused .hero-cycle-track span {
  animation-play-state: paused;
}

.hero-visual::after {
  content: '';
  position: absolute;
  z-index: 2;
  inset: -35% -65%;
  pointer-events: none;
  background: linear-gradient(112deg, transparent 43%, rgba(255,255,255,.055) 49%, rgba(255,255,255,.12) 50%, rgba(255,255,255,.04) 52%, transparent 58%);
  transform: translateX(-42%);
  animation: hero-metal-sweep 8s ease-in-out infinite;
}

.hero-typing-caret {
  display: inline-block;
  width: 1px;
  height: 1em;
  margin-left: 3px;
  vertical-align: -2px;
  background: #eee;
  animation: hero-caret .7s steps(1, end) infinite;
}

.hero-count-up {
  color: #f4f4f4;
  font-variant-numeric: tabular-nums;
}

.hero-auto-cursor {
  position: absolute;
  z-index: 12;
  left: 0;
  top: 0;
  width: 22px;
  height: 28px;
  pointer-events: none;
  opacity: 1;
  filter: drop-shadow(0 3px 7px #000000) drop-shadow(0 0 5px rgba(255,255,255,.22));
}

.hero-auto-cursor svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: #f4f4f4;
  stroke: #06070a;
  stroke-width: 1.4;
  stroke-linejoin: round;
}

.hero-auto-cursor i {
  position: absolute;
  left: -15px;
  top: -15px;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 50%;
  opacity: 0;
}

.hero-auto-cursor.is-clicking i {
  animation: hero-cursor-click .27s cubic-bezier(.12,.7,.2,1) both;
}

.hero-proof-clean{display:block}.hero-proof-clean span{display:inline-flex;gap:9px;padding:8px 11px;border-left:1px solid #4d4d4d;color:#858585}.hero-proof-clean b{font-size:9px;color:#eee;letter-spacing:.14em}

#hero-preview-actions span,
.hero-module-tabs button {
  transition: transform .2s ease, background-color .25s ease, color .25s ease, box-shadow .25s ease;
}

#hero-preview-actions{flex-wrap:wrap;align-items:center}
#hero-preview-actions span{white-space:nowrap;line-height:1.2;min-height:28px;display:inline-flex;align-items:center}

#hero-preview-actions span.demo-pressed,
.hero-module-tabs button.demo-pressed {
  transform: translateY(2px) scale(.95);
  filter: brightness(.82);
}

.hero-visual[data-hero-mode="security"] .hero-mark {
  filter: drop-shadow(0 25px 35px #000000) contrast(1.08) drop-shadow(0 0 14px rgba(255,255,255,.12));
}

.hero-visual[data-hero-mode="recovery"] .hero-live-state i {
  box-shadow: 0 0 18px #fff;
}

@keyframes hero-cycle-progress { to { transform: scaleX(1); } }
@keyframes hero-metal-sweep {
  0%, 30% { transform: translateX(-42%); }
  65%, 100% { transform: translateX(42%); }
}
@keyframes hero-caret { 50% { opacity: 0; } }
@keyframes hero-cursor-click {
  0% { opacity: .9; transform: scale(.2); }
  65% { opacity: .55; transform: scale(1.25); }
  100% { opacity: 0; transform: scale(1.65); }
}

@media (max-width: 760px) {
  .hero-actions .button{width:min(100%,220px)}
  .hero-cycle-track { top: 98px; left: 16px; right: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-cycle-track { display: none; }
  .hero-auto-cursor { display: none; }
  .hero-visual::after, .hero-typing-caret { animation: none !important; }
}

/* Recken system stage — replaces the static banner on the homepage. */
.recken-stage{--stage-x:50%;--stage-y:50%;isolation:isolate;position:relative;min-height:545px;padding:23px 36px 30px;border-color:#3b3b3b;background:radial-gradient(ellipse at var(--stage-x) var(--stage-y),#25283b 0%,#12131c 22%,#08090e 57%,#06070a 85%);overflow:hidden}
.recken-stage.brand-banner::after{display:none}
.recken-stage::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0,transparent 45px,#ffffff09 46px),linear-gradient(90deg,#06070ab8,transparent 28%,transparent 72%,#06070ab8);opacity:.52}
.stage-head,.stage-foot{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:18px}
.stage-head{font:600 11px/1.3 var(--font);letter-spacing:.16em;color:#b5b5b5}
.stage-head span:last-child{color:#777}
.stage-main{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,365px) minmax(0,1fr);align-items:center;gap:0;min-height:365px}
.stage-list{position:relative;display:flex;flex-direction:column;gap:2px;z-index:2}
.stage-signal{position:relative;display:flex;align-items:center;gap:14px;padding:12px 6px;border-bottom:1px solid #ffffff18;color:#bdbdbd;font:700 clamp(17px,1.85vw,26px)/1 var(--display);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;animation:stage-labels 14s ease-in-out infinite;animation-delay:var(--label-delay)}
.stage-signal-index{font:500 10px/1 var(--font);color:#727272;letter-spacing:.04em}
.stage-signal i{width:4px;height:4px;margin-left:auto;border-radius:50%;background:#797979;box-shadow:0 0 9px #ffffff44}
.stage-list-right .stage-signal{flex-direction:row-reverse;text-align:right}
.stage-list-right .stage-signal i{margin-left:0;margin-right:auto}
.stage-core{position:relative;display:grid;place-items:center;aspect-ratio:1;width:min(100%,365px);margin-inline:auto;perspective:900px}
.stage-orbit{position:absolute;inset:7%;border:1px solid #ffffff27;border-radius:50%;box-shadow:inset 0 0 35px #ffffff0c,0 0 30px #ffffff08}
.stage-orbit-outer{inset:0;border-color:#ffffff18;transform:rotate(-18deg) scaleY(.84)}
.stage-orbit-inner{inset:13%;border-color:#ffffff25;transform:rotate(22deg) scaleX(.89)}
.stage-orbit::after{content:"";position:absolute;top:11%;left:11%;height:4px;width:4px;background:#eee;border-radius:50%;box-shadow:0 0 14px #fff}
.stage-blade{position:relative;width:100%;height:100%;filter:drop-shadow(0 0 35px #ffffff28);transform:translate3d(var(--blade-x,0px),var(--blade-y,0px),0);transition:transform .35s ease-out}
.stage-shard{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;clip-path:var(--wedge);transform-origin:50% 50%;animation:stage-reassemble 14s cubic-bezier(.65,0,.2,1) infinite;user-select:none;pointer-events:none}
.stage-core-index{position:absolute;bottom:2%;left:50%;translate:-50% 0;font:500 10px/1 var(--font);color:#888;letter-spacing:.2em}
.stage-foot{padding-top:3px;border-top:1px solid #ffffff29}
.stage-foot strong{display:block;font:700 clamp(41px,5.2vw,76px)/.83 var(--display);letter-spacing:-.018em;text-transform:uppercase}
.stage-foot em{font-style:normal;color:transparent;-webkit-text-stroke:1px #c2c2c2}
.stage-foot>span{align-self:end;text-align:right;color:#aaa;font:600 10px/1.7 var(--font);letter-spacing:.15em}
.stage-sweep{position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(105deg,transparent 32%,#ffffff00 42%,#ffffff15 50%,#ffffff00 58%,transparent 70%);translate:-135% 0;animation:stage-light 14s ease-in-out infinite}
@keyframes stage-reassemble{0%,12%,86%,100%{transform:translate3d(0,0,0) rotate(0deg)}32%,57%{transform:translate3d(var(--shard-x),var(--shard-y),var(--shard-z)) rotate(var(--shard-rot));filter:drop-shadow(0 0 12px #ffffff66)}}
@keyframes stage-labels{0%,12%,78%,100%{color:#a5a5a5}38%,55%{color:#fff;text-shadow:0 0 18px #ffffff55}}
@keyframes stage-light{0%,58%{translate:-135% 0}85%,100%{translate:135% 0}}
@media(max-width:860px){.recken-stage{min-height:475px;padding:19px 22px 25px}.stage-main{grid-template-columns:minmax(0,1fr) minmax(150px,32vw) minmax(0,1fr);min-height:320px}.stage-signal{gap:7px;font-size:17px;padding:10px 0}.stage-signal-index{font-size:9px}.stage-foot strong{font-size:55px}}
@media(max-width:640px){.recken-stage{min-height:565px;padding:18px}.stage-head{font-size:9px}.stage-head span:last-child{display:none}.stage-main{grid-template-columns:1fr 1fr;gap:0 12px;min-height:390px;align-content:center}.stage-core{grid-column:1/-1;grid-row:1;width:min(67vw,230px)}.stage-list{grid-row:2}.stage-list-left{grid-column:1}.stage-list-right{grid-column:2}.stage-signal,.stage-list-right .stage-signal{flex-direction:row;text-align:left;font-size:15px;gap:6px;padding:6px 0}.stage-signal i{display:none}.stage-signal-index{font-size:8px}.stage-foot strong{font-size:clamp(40px,12vw,65px)}.stage-foot>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.stage-shard,.stage-signal,.stage-sweep{animation:none!important}.stage-blade{transition:none!important}}
.recken-stage:not(.is-live) .stage-shard,.recken-stage:not(.is-live) .stage-signal,.recken-stage:not(.is-live) .stage-sweep{animation-play-state:paused}
