/* ============= LANDING-SPECIFIC STYLES =============
   Hero + sections that only live on landing/index.html. Tokens,
   header, footer, buttons, and reveal animation come from shared.css.
*/

/* Override main padding for landing — hero needs less top breathing room
   than long-form pages. */
html,
body{overflow-x:hidden}
main{padding-top:104px}

/* ============= KICKER LINE ============= */
.kicker{
  text-align:center;
  font-family:var(--sans);font-weight:300;
  font-size:clamp(20px,2.4vw,32px);
  letter-spacing:-0.025em;
  color:var(--paper-2);
  margin:8px auto 32px;
  padding:0 28px;
}
.kicker .hand-em{
  font-family:var(--hand);color:var(--lime);font-weight:600;
  display:inline-block;transform:rotate(-2deg) translateY(0.04em);
  font-size:1.18em;line-height:0.85;margin-left:4px;
}

/* ============= HERO ============= */
.hero{
  position:relative;
  padding:24px 0 56px;
  overflow:visible;
}

/* — The illustrated scene takes the full hero width — */
.hero-scene{
  position:relative;
  width:100%;
  max-width:1320px;
  margin:0 auto;
  aspect-ratio: 1400 / 580;
  min-height:340px;
}
@media (max-width:880px){
  .hero-scene{aspect-ratio: 1 / 0.9; min-height:380px}
}
.hero-scene svg{
  position:absolute;inset:0;width:100%;height:100%;
  overflow:visible;
  display:block;
}

/* SVG filter targets — defined here for reuse */
.lime-glow{filter:drop-shadow(0 0 14px rgba(212,255,58,0.55))}
.blue-glow{filter:drop-shadow(0 0 14px rgba(139,215,255,0.55))}
.amber-glow{filter:drop-shadow(0 0 12px rgba(244,195,101,0.4))}

/* — Big-ass headline below the scene — */
.hero-headline{
  text-align:center;
  font-family:var(--sans);font-weight:300;
  font-size:clamp(48px,7.4vw,108px);
  line-height:0.9;letter-spacing:-0.06em;
  color:var(--paper);
  margin:24px auto 0;
  max-width:1100px;
  font-feature-settings:"ss01","cv11","cv02";
}
.hero-headline .line{display:block;overflow:hidden;padding-bottom:0.04em}
.hero-headline .line > span{
  display:inline-block;
  opacity:1;transform:none;
  animation:none;
}
.hero-headline .line:nth-child(1) > span{animation-delay:0s}
.hero-headline .line:nth-child(2) > span{animation-delay:0s}
@keyframes lineUp{to{opacity:1;transform:translateY(0)}}
.hero-headline .hand{
  font-family:var(--hand);color:var(--lime);font-weight:600;
  font-size:1.05em;display:inline-block;
  transform:rotate(-2deg) translateY(0.04em);line-height:0.85;
}
.hero-headline .lime{color:var(--lime);font-weight:400}
.hero-headline .stroke-under{
  position:relative;display:inline-block;
}
.hero-headline .hand-word{
  font-family:var(--hand);
  color:var(--lime);
  font-weight:650;
  letter-spacing:0;
  transform:rotate(-2deg) translateY(.035em);
  transform-origin:center;
  line-height:.82;
  text-shadow:0 0 16px rgba(212,255,58,.18);
}
.hero-headline .stroke-under::after{
  content:'';position:absolute;left:-2%;right:-2%;bottom:0.04em;
  height:8px;background:var(--lime);
  transform:scaleX(0);transform-origin:left;
  animation:strokeIn 0.9s 1.5s var(--easing) forwards;
  border-radius:4px;
}
@keyframes strokeIn{to{transform:scaleX(1)}}

/* — Sub-paragraph + CTAs — */
.hero-sub{
  text-align:center;
  max-width:62ch;margin:28px auto 0;
  font-size:17px;line-height:1.55;color:var(--paper-2);
  opacity:0;animation:fadeUp 0.9s 0.95s var(--easing) forwards;
}
.hero-sub strong{color:var(--paper);font-weight:500}
.hero-sub .hand{
  font-family:var(--hand);color:var(--lime);font-weight:600;
  font-size:1.25em;display:inline-block;transform:rotate(-1.5deg);line-height:0.7;
}
.hero-actions{
  display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;
  margin:30px auto 0;
  opacity:0;animation:fadeUp 0.9s 1.1s var(--easing) forwards;
}
.btn-code{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 20px;border-radius:100px;
  background:linear-gradient(180deg,rgba(212,255,58,0.02),rgba(3,5,3,0.34));
  border:1px solid rgba(212,255,58,0.18);color:var(--paper);
  text-decoration:none;font-family:var(--mono);font-size:11.5px;font-weight:700;
  letter-spacing:0.09em;text-transform:uppercase;
  transition:all 0.3s var(--easing);
  box-shadow:inset 0 1px 0 rgba(244,237,224,0.03);
}
.btn-code::before{content:'>_';color:var(--lime);letter-spacing:0;opacity:0.85}
.btn-code:hover{
  color:var(--paper);border-color:rgba(212,255,58,0.35);
  background:rgba(212,255,58,0.04);
  box-shadow:inset 0 1px 0 rgba(244,237,224,0.06), 0 12px 32px -22px rgba(212,255,58,0.6);
}

/* — 3 signature badges — */
.signature-badges{
  display:flex;justify-content:center;align-items:stretch;gap:0;
  margin:48px auto 0;max-width:880px;
  border:1px solid var(--line-2);
  border-radius:100px;
  background:rgba(13,14,11,0.55);
  backdrop-filter:blur(20px);
  overflow:hidden;
  opacity:0;animation:fadeUp 0.9s 1.3s var(--easing) forwards;
}
.sig-badge{
  display:flex;align-items:center;gap:12px;
  flex:1;padding:14px 22px;
  border-right:1px solid var(--line);
  text-align:left;
}
.sig-badge:last-child{border-right:0}
.sig-badge .ico{
  width:32px;height:32px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:rgba(244,237,224,0.04);
  border:1px solid var(--line-2);
  color:var(--paper);
}
.sig-badge.lime .ico{color:var(--lime);border-color:rgba(212,255,58,0.35);background:rgba(212,255,58,0.06)}
.sig-badge.blue .ico{color:#8bd7ff;border-color:rgba(139,215,255,0.35);background:rgba(139,215,255,0.06)}
.sig-badge .label{display:flex;flex-direction:column;gap:1px;min-width:0}
.sig-badge .label b{
  font-family:var(--mono);font-size:12px;color:var(--paper);
  letter-spacing:0.08em;text-transform:uppercase;font-weight:700;
}
.sig-badge .label span{
  font-family:var(--mono);font-size:10.5px;color:var(--paper-3);
  letter-spacing:0.04em;text-transform:uppercase;font-weight:500;
}
.home-vision-section{display:none}
@media (max-width:880px){
  .signature-badges{flex-direction:column;border-radius:24px;max-width:520px}
  .sig-badge{border-right:0;border-bottom:1px solid var(--line);padding:16px 24px}
  .sig-badge:last-child{border-bottom:0}
}

/* ============= "HOW IT WORKS" COMIC STRIP ============= */
.strip-section{
  padding:80px 0 90px;
  border-top:1px solid var(--line);
  margin-top:80px;
}
.strip-head{
  text-align:center;max-width:760px;margin:0 auto 56px;
}
.strip-head .eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--mono);font-size:11px;color:var(--paper-3);
  letter-spacing:0.1em;text-transform:uppercase;margin-bottom:18px;
}
.strip-head .eyebrow::before{content:'';width:24px;height:1px;background:var(--lime)}
.strip-head h2{
  font-family:var(--sans);font-weight:300;
  font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-0.04em;color:var(--paper);
  margin-bottom:16px;
}
.strip-head h2 .hand{font-family:var(--hand);color:var(--lime);font-weight:600;display:inline-block;transform:rotate(-2deg)}
.strip-head .sub{color:var(--paper-2);font-size:16px;line-height:1.55;max-width:54ch;margin:0 auto}

.strip{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;
  position:relative;
}
.strip-panel{
  position:relative;
  border:1px solid var(--line-2);border-radius:18px;
  background:rgba(13,14,11,0.55);
  padding:22px 22px 24px;
  display:flex;flex-direction:column;gap:14px;
  min-height:340px;
  overflow:hidden;
  transition:all 0.4s var(--easing);
}
.strip-panel:hover{border-color:rgba(212,255,58,0.25);transform:translateY(-3px)}
.strip-panel::before{
  content:attr(data-panel);
  position:absolute;top:14px;right:18px;
  font-family:var(--hand);font-size:34px;font-weight:700;color:var(--lime);
  opacity:0.85;line-height:1;
}
.strip-illu{
  height:140px;
  display:flex;align-items:center;justify-content:center;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, rgba(212,255,58,0.04), transparent 70%),
    rgba(0,0,0,0.3);
  border:1px solid var(--line);border-radius:12px;
  position:relative;overflow:hidden;
}
.strip-illu svg{width:100%;height:100%;overflow:visible}
.strip-panel h3{
  font-family:var(--sans);font-size:18px;font-weight:500;letter-spacing:-0.02em;
  color:var(--paper);line-height:1.2;
}
.strip-panel h3 .hand{font-family:var(--hand);color:var(--lime);font-weight:600;display:inline-block;transform:rotate(-1.5deg);font-size:1.15em;line-height:0.7}
.strip-panel p{font-size:13.5px;color:var(--paper-2);line-height:1.55}
.strip-panel .cap{
  font-family:var(--hand);font-size:17px;font-weight:600;color:var(--paper-3);
  border-top:1px dashed var(--line-2);padding-top:12px;margin-top:auto;
}
.strip-panel .cap .lime{color:var(--lime)}
@media (max-width:880px){
  .strip{grid-template-columns:1fr;gap:14px}
}

.protocol-section{
  position:relative;
  padding:92px 0 102px;
  overflow:hidden;
}
.protocol-section::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 44% 34% at 62% 38%, rgba(212,255,58,.055), transparent 70%),
    radial-gradient(ellipse 38% 34% at 26% 78%, rgba(139,215,255,.035), transparent 72%);
  pointer-events:none;
}
.protocol-head{
  position:relative;
  z-index:2;
  text-align:center;
  max-width:760px;
  margin:0 auto 50px;
}
.protocol-head .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--mono);
  font-size:11px;
  color:var(--paper-3);
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.protocol-head .eyebrow::before{
  content:'';
  width:24px;
  height:1px;
  background:var(--lime);
  box-shadow:0 0 18px rgba(212,255,58,.4);
}
.protocol-head h2{
  font-family:var(--sans);
  font-weight:300;
  font-size:clamp(34px,4.4vw,58px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--paper);
  margin-bottom:16px;
}
.protocol-head h2 .hand{
  font-family:var(--hand);
  color:var(--lime);
  font-weight:650;
  display:inline-block;
  transform:rotate(-2deg) translateY(.02em);
  letter-spacing:0;
  line-height:.82;
}
.protocol-head .sub{
  color:var(--paper-2);
  font-size:16.5px;
  line-height:1.58;
  max-width:58ch;
  margin:0 auto;
}
.protocol-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:clamp(30px,5vw,70px);
  align-items:center;
}
.protocol-copy{
  padding:10px 0;
}
.protocol-chipline{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:22px;
}
.protocol-chipline span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 12px;
  border:1px solid rgba(244,237,224,.09);
  border-radius:999px;
  background:rgba(13,14,11,.45);
  color:rgba(244,237,224,.6);
  font-family:var(--mono);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}
.protocol-copy h3{
  font-family:var(--sans);
  font-size:clamp(30px,3.3vw,44px);
  font-weight:300;
  line-height:1;
  letter-spacing:-.04em;
  color:var(--paper);
  max-width:10ch;
  margin-bottom:18px;
}
.protocol-copy p{
  color:var(--paper-2);
  font-size:15.5px;
  line-height:1.62;
  max-width:38ch;
}
.protocol-mini{
  width:max-content;
  max-width:100%;
  margin-top:28px;
  padding:12px 15px;
  border:1px solid rgba(212,255,58,.14);
  border-radius:16px;
  background:rgba(3,4,3,.54);
  box-shadow:inset 0 1px 0 rgba(244,237,224,.04);
}
.protocol-mini span{
  display:block;
  color:var(--paper-3);
  font-family:var(--mono);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:4px;
}
.protocol-mini strong{
  color:var(--lime);
  font-family:var(--mono);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
}
.protocol-machine{
  position:relative;
  min-height:430px;
  overflow:hidden;
  border-radius:28px;
  isolation:isolate;
}
.protocol-machine svg{
  width:100%;
  height:auto;
  display:block;
  overflow:visible;
}
.protocol-machine text{
  paint-order:stroke;
  stroke:rgba(4,5,3,.5);
  stroke-width:2px;
  stroke-linejoin:round;
}
.pm-bg{
  fill:rgba(3,4,3,.03);
  stroke:rgba(244,237,224,.028);
  stroke-width:1;
}
.pm-floor{
  fill:rgba(0,0,0,.55);
  filter:blur(2px);
}
.pm-rail-glow{
  fill:none;
  stroke-width:9;
  stroke-linecap:round;
  opacity:.12;
  filter:blur(5px);
}
.pm-rail-glow.lime{stroke:rgba(212,255,58,.76)}
.pm-rail-glow.blue{stroke:rgba(139,215,255,.58)}
.pm-rail-glow.soft{opacity:.08}
.pm-rail{
  fill:none;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-dasharray:3 13;
  opacity:.72;
  animation:pmDash 2s linear infinite;
}
.pm-rail.lime{stroke:rgba(212,255,58,.72)}
.pm-rail.blue{stroke:rgba(139,215,255,.68);animation-direction:reverse}
.pm-rail.red{stroke:rgba(139,215,255,.34);opacity:.28;stroke-dasharray:2 18}
.pm-rail.soft{opacity:.46}
@keyframes pmDash{to{stroke-dashoffset:-32}}
.pm-token{
  opacity:0;
  filter:drop-shadow(0 0 10px rgba(212,255,58,.36)) drop-shadow(0 8px 10px rgba(0,0,0,.42));
}
.pm-token circle{
  stroke:rgba(0,0,0,.48);
  stroke-width:1;
}
.pm-token.stable circle{fill:#8bd7ff}
.pm-token.fiat circle,
.pm-token.release circle{fill:#d4ff3a}
.pm-token text{
  font-family:var(--mono);
  font-size:10px;
  font-weight:950;
  fill:#060804;
  stroke-width:0;
}
.pm-vault{
  filter:drop-shadow(0 0 26px rgba(212,255,58,.16)) drop-shadow(0 38px 48px rgba(0,0,0,.78));
}
.pm-vault-top{
  fill:#171b10;
  stroke:rgba(244,237,224,.15);
  stroke-width:1.1;
}
.pm-vault-side{
  fill:#040604;
  stroke:rgba(244,237,224,.12);
  stroke-width:1.1;
}
.pm-vault-left{
  fill:#090c06;
  stroke:rgba(244,237,224,.105);
  stroke-width:1.1;
}
.pm-door{
  fill:url(#pmDoorSheen);
  stroke:rgba(244,237,224,.13);
  stroke-width:1.1;
}
.pm-vault-ridge{
  fill:none;
  stroke:rgba(244,237,224,.11);
  stroke-width:.85;
  stroke-linecap:round;
}
.pm-core-aura{
  fill:url(#pmCoreAura);
  transform-box:fill-box;
  transform-origin:center;
  animation:pmCoreGlow 4.6s ease-in-out infinite;
}
.pm-ring{
  fill:none;
  transform-box:fill-box;
  transform-origin:center;
}
.pm-ring.outer{
  stroke:rgba(212,255,58,.72);
  stroke-width:2;
  stroke-dasharray:78 210;
  animation:pmSpin 5.5s linear infinite;
  filter:drop-shadow(0 0 7px rgba(212,255,58,.34));
}
.pm-ring.inner{
  stroke:rgba(244,237,224,.16);
  stroke-width:1;
  stroke-dasharray:2 8;
  animation:pmSpin 18s linear infinite reverse;
}
@keyframes pmSpin{to{transform:rotate(360deg)}}
.pm-core-pulse{
  fill:none;
  stroke:rgba(212,255,58,.2);
  stroke-width:1;
  transform-box:fill-box;
  transform-origin:center;
  animation:pmCorePulse 3.8s ease-in-out infinite;
}
.pm-core-dots circle{
  fill:#8bd7ff;
  opacity:.8;
  filter:drop-shadow(0 0 7px rgba(139,215,255,.62));
  animation:pmDotBlink 4.8s ease-in-out infinite;
}
.pm-core-dots circle:nth-child(2),
.pm-core-dots circle:nth-child(5){animation-delay:.8s}
.pm-core-dots circle:nth-child(3),
.pm-core-dots circle:nth-child(6){animation-delay:1.5s}
.pm-mark rect,
.pm-mark path{
  fill:var(--lime);
  filter:drop-shadow(0 0 10px rgba(212,255,58,.5));
  animation:pmMarkBreathe 3.8s ease-in-out infinite;
}
@keyframes pmCoreGlow{
  0%,100%{opacity:.8;transform:scale(.96)}
  50%{opacity:1;transform:scale(1.04)}
}
@keyframes pmCorePulse{
  0%,100%{opacity:.24;transform:scale(.9)}
  50%{opacity:.74;transform:scale(1.14)}
}
@keyframes pmDotBlink{
  0%,100%{opacity:.36}
  50%{opacity:1}
}
@keyframes pmMarkBreathe{
  0%,100%{opacity:.9}
  50%{opacity:1}
}
.pm-vault-label{
  font-family:var(--mono);
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  fill:rgba(244,237,224,.45);
  stroke-width:0;
}
.pm-node circle{
  fill:rgba(3,4,3,.76);
  stroke:rgba(244,237,224,.12);
  stroke-width:1.2;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,.4));
}
.pm-node.n1 circle,
.pm-node.n2 circle{
  stroke:rgba(212,255,58,.36);
}
.pm-node.n3 circle{
  stroke:rgba(139,215,255,.34);
}
.pm-node.n4 circle{
  stroke:rgba(212,255,58,.34);
}
.pm-node.fallback circle{
  stroke:rgba(139,215,255,.2);
  fill:rgba(3,7,8,.58);
}
.pm-node .num{
  font-family:var(--mono);
  font-size:13px;
  font-weight:950;
  fill:var(--lime);
  stroke-width:0;
}
.pm-node.n3 .num,
.pm-node.fallback .num{fill:#8bd7ff}
.pm-node .label{
  font-family:var(--mono);
  font-size:7.5px;
  font-weight:900;
  letter-spacing:.12em;
  fill:rgba(244,237,224,.58);
  stroke-width:0;
}
.pm-status rect{
  fill:rgba(0,0,0,.8);
  stroke:rgba(212,255,58,.38);
  stroke-width:1;
  filter:drop-shadow(0 0 16px rgba(212,255,58,.12));
}
.pm-status circle{
  fill:var(--lime);
  filter:drop-shadow(0 0 7px rgba(212,255,58,.42));
}
.pm-status text{
  font-family:var(--mono);
  font-size:10.4px;
  font-weight:900;
  letter-spacing:.075em;
  fill:rgba(212,255,58,.86);
  stroke-width:0;
}
.protocol-steps{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:30px;
}
.protocol-step{
  position:relative;
  min-height:146px;
  padding:22px 19px 19px;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(244,237,224,.078);
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(18,20,14,.5), rgba(6,7,5,.36));
  box-shadow:
    inset 0 1px 0 rgba(244,237,224,.046),
    0 18px 30px rgba(0,0,0,.18);
  transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.protocol-step::before{
  content:'';
  position:absolute;
  left:16px;
  right:16px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(212,255,58,.72), transparent);
  opacity:.52;
}
.protocol-step::after{
  content:'';
  position:absolute;
  right:-48px;
  top:-58px;
  width:118px;
  height:118px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(212,255,58,.075), transparent 68%);
  opacity:.58;
  z-index:0;
}
.protocol-step > *{
  position:relative;
  z-index:1;
}
.protocol-step:nth-child(3){
  background:
    linear-gradient(180deg, rgba(17,21,19,.54), rgba(6,7,5,.36));
}
.protocol-step:nth-child(3)::before{
  background:linear-gradient(90deg, transparent, rgba(139,215,255,.68), transparent);
}
.protocol-step:nth-child(3)::after{
  background:radial-gradient(circle, rgba(139,215,255,.085), transparent 68%);
}
.protocol-step:nth-child(4)::before{
  background:linear-gradient(90deg, transparent, rgba(212,255,58,.58), rgba(139,215,255,.46), transparent);
}
@media (hover:hover){
  .protocol-step:hover{
    transform:translateY(-3px);
    border-color:rgba(212,255,58,.15);
    box-shadow:
      inset 0 1px 0 rgba(244,237,224,.058),
      0 24px 38px rgba(0,0,0,.24);
  }
  .protocol-step:nth-child(3):hover{
    border-color:rgba(139,215,255,.15);
  }
}
.protocol-step .step-num{
  display:inline-block;
  color:var(--lime);
  font-family:var(--hand);
  font-size:32px;
  font-weight:700;
  line-height:.8;
  margin-bottom:15px;
  text-shadow:0 0 14px rgba(212,255,58,.18);
}
.protocol-step:nth-child(3) .step-num{
  color:#8bd7ff;
  text-shadow:0 0 12px rgba(139,215,255,.16);
}
.protocol-step h3{
  color:var(--paper);
  font-family:var(--sans);
  font-size:18.5px;
  font-weight:560;
  letter-spacing:-.02em;
  margin-bottom:9px;
}
.protocol-step p{
  color:var(--paper-2);
  font-size:13.5px;
  line-height:1.52;
}
@media (max-width:980px){
  .protocol-layout{grid-template-columns:1fr;gap:26px}
  .protocol-copy{text-align:center}
  .protocol-copy h3,
  .protocol-copy p{margin-left:auto;margin-right:auto;max-width:46ch}
  .protocol-chipline{justify-content:center}
  .protocol-mini{margin-left:auto;margin-right:auto}
  .protocol-machine{min-height:0}
  .protocol-steps{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .protocol-section{padding:70px 0 76px;margin-top:54px}
  .protocol-head{margin-bottom:26px;text-align:left}
  .protocol-head h2{font-size:clamp(32px,10vw,42px)}
  .protocol-head .sub{font-size:15.5px}
  .protocol-layout{display:flex;flex-direction:column;gap:24px}
  .protocol-machine{order:1}
  .protocol-copy{text-align:left}
  .protocol-copy{order:2}
  .protocol-chipline{justify-content:flex-start}
  .protocol-copy h3,
  .protocol-copy p{margin-left:0;margin-right:0}
  .protocol-copy h3{max-width:11ch}
  .protocol-mini{margin-left:0}
  .protocol-machine svg{width:104%;margin-left:-2%;max-width:none}
  .pm-bg{opacity:.26}
  .pm-node.n2,
  .pm-node.fallback{opacity:.42}
  .pm-status text{font-size:10.8px;letter-spacing:.055em}
  .protocol-steps{grid-template-columns:1fr;gap:10px}
  .protocol-step{min-height:auto;padding:17px 16px}
}

/* ============= "THREE THINGS WE REFUSE" ============= */
.refuse-section{
  padding:86px 0 96px;
  border-top:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.refuse-section::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 42% 36% at 22% 42%, rgba(244,123,101,.035), transparent 72%),
    radial-gradient(ellipse 48% 40% at 78% 62%, rgba(212,255,58,.035), transparent 74%);
  pointer-events:none;
}
.refuse-head{
  position:relative;
  z-index:2;
  display:grid;grid-template-columns:1fr 1fr;gap:48px;
  align-items:end;margin-bottom:42px;
}
.refuse-head h2{
  font-family:var(--sans);font-weight:300;
  font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-0.04em;color:var(--paper);
}
.refuse-head h2 .strike{
  position:relative;display:inline-block;color:var(--paper-2);
}
.refuse-head h2 .strike::after{
  content:'';position:absolute;left:-3%;right:-3%;top:55%;height:4px;
  background:var(--rose);transform:rotate(-2deg);border-radius:3px;opacity:0.9;
}
.refuse-head h2 .lime{color:var(--lime);font-weight:400}
.refuse-head h2 .hand{
  font-family:var(--hand);
  color:var(--lime);
  font-weight:650;
  display:inline-block;
  transform:rotate(-2deg) translateY(.02em);
  letter-spacing:0;
  line-height:.84;
}
.refuse-head .meta{
  font-family:var(--mono);font-size:11px;color:var(--paper-3);
  letter-spacing:0.1em;text-transform:uppercase;text-align:right;
  max-width:36ch;justify-self:end;
}
.refuse-grid{
  position:relative;
  z-index:2;
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
}
.refuse-card{
  display:flex;
  flex-direction:column;
  min-height:274px;
  padding:28px 26px 25px;
  border:1px solid rgba(244,237,224,.078);border-radius:18px;
  background:
    linear-gradient(180deg, rgba(18,20,14,.52), rgba(6,7,5,.38)),
    rgba(13,14,11,.4);
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(244,237,224,.045), 0 22px 38px rgba(0,0,0,.18);
  transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.refuse-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, transparent, rgba(212,255,58,.04), transparent),
    repeating-linear-gradient(0deg, transparent 0, transparent 23px, rgba(244,237,224,.025) 24px);
  opacity:.58;
  pointer-events:none;
}
.refuse-card::after{
  content:'';
  position:absolute;
  right:-36px;
  top:-46px;
  width:132px;
  height:132px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(212,255,58,.075), transparent 66%);
  opacity:.6;
}
@media (hover:hover){
  .refuse-card:hover{
    transform:translateY(-3px);
    border-color:rgba(212,255,58,.13);
    box-shadow:inset 0 1px 0 rgba(244,237,224,.055), 0 26px 44px rgba(0,0,0,.24);
  }
}
.refuse-card > *{
  position:relative;
  z-index:1;
}
.refuse-log,
.receipt-line{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:var(--mono);
  font-size:10px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.refuse-log{
  color:rgba(244,123,101,.78);
  margin-bottom:18px;
}
.log-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--rose);
  box-shadow:0 0 12px rgba(244,123,101,.32);
}
.receipt-line{
  color:rgba(212,255,58,.72);
  margin-bottom:13px;
}
.receipt-line span{
  position:relative;
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--lime);
  box-shadow:0 0 12px rgba(212,255,58,.36);
  animation:receiptPulse 2.8s ease-in-out infinite;
}
.receipt-line span::after{
  content:'';
  position:absolute;
  inset:-4px;
  border:1px solid rgba(212,255,58,.18);
  border-radius:999px;
  opacity:0;
  transform:scale(.72);
  animation:receiptScan 2.8s ease-in-out infinite;
}
.receipt-line strong{
  color:rgba(212,255,58,.82);
  font-weight:850;
}
.refuse-card .tag{
  display:inline-block;
  font-family:var(--mono);font-size:10.5px;color:var(--rose);
  letter-spacing:0.14em;text-transform:uppercase;font-weight:600;
  margin-bottom:14px;
}
.refuse-card .tag::before{content:'✗ ';opacity:0.85}
.refuse-card h3{
  font-family:var(--sans);font-size:24px;font-weight:440;
  letter-spacing:-0.025em;line-height:1.14;color:rgba(244,237,224,.74);
  margin-bottom:13px;position:relative;display:inline-block;
}
.refuse-card h3::after{
  content:'';position:absolute;left:-2%;right:-2%;bottom:-5px;height:1px;
  background:linear-gradient(90deg, rgba(244,123,101,.6), transparent);
  border-radius:3px;opacity:.55;
}
.refuse-card p{font-size:13.5px;color:var(--paper-3);line-height:1.58;margin-bottom:20px}
.refuse-card .promise{
  margin-top:auto;
  padding-top:18px;border-top:1px solid rgba(212,255,58,.11);
}
.refuse-card .promise .tag{color:var(--lime)}
.refuse-card .promise .tag::before{content:'✓ '}
.refuse-card .promise h4{
  font-family:var(--sans);font-size:17px;font-weight:500;letter-spacing:-0.015em;
  color:var(--paper);line-height:1.3;margin-top:6px;
}
.refuse-card .promise h4 .hand{font-family:var(--hand);color:var(--lime);font-weight:600;display:inline-block;transform:rotate(-1deg);line-height:0.78;font-size:1.18em;margin-left:2px}
@keyframes receiptPulse{
  0%,100%{opacity:.55;transform:scale(.9)}
  50%{opacity:1;transform:scale(1.08)}
}
@keyframes receiptScan{
  0%,48%,100%{opacity:0;transform:scale(.72)}
  58%{opacity:.34}
  72%{opacity:0;transform:scale(1.18)}
}
@media (max-width:880px){
  .refuse-head{grid-template-columns:1fr;gap:18px;text-align:left}
  .refuse-head .meta{text-align:left;justify-self:start}
  .refuse-grid{grid-template-columns:1fr;gap:12px}
  .refuse-card{min-height:auto}
}

/* ============= "WHERE THIS GOES" ARC ============= */
.arc-section{
  padding:88px 0 98px;
  border-top:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.arc-section::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 50% 44% at 56% 54%, rgba(212,255,58,.045), transparent 72%),
    radial-gradient(ellipse 36% 34% at 72% 28%, rgba(139,215,255,.026), transparent 72%);
  pointer-events:none;
}
.arc-head{text-align:center;max-width:760px;margin:0 auto 56px}
.arc-head h2{
  font-family:var(--sans);font-weight:300;
  font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-0.04em;color:var(--paper);
  margin-bottom:14px;
}
.arc-head h2 .it{font-weight:400}
.arc-head h2 .hand{font-family:var(--hand);color:var(--lime);font-weight:600;display:inline-block;transform:rotate(-2deg)}
.arc-head .sub{color:var(--paper-2);font-size:16px;line-height:1.55;max-width:54ch;margin:0 auto}

.arc-map{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(260px,.74fr) minmax(0,1.26fr);
  gap:clamp(28px,5vw,68px);
  align-items:center;
}
.arc-map-copy{
  padding:6px 0;
}
.arc-phase{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:18px;
  color:var(--lime);
  font-family:var(--mono);
  font-size:10.5px;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.arc-phase::before{
  content:'';
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--lime);
  box-shadow:0 0 14px rgba(212,255,58,.42);
}
.arc-map-copy h3{
  max-width:11ch;
  margin-bottom:18px;
  color:var(--paper);
  font-family:var(--sans);
  font-size:clamp(30px,3.4vw,46px);
  font-weight:300;
  letter-spacing:-.045em;
  line-height:.98;
}
.arc-map-copy p{
  max-width:38ch;
  color:var(--paper-2);
  font-size:15.5px;
  line-height:1.62;
}
.arc-proof{
  width:max-content;
  max-width:100%;
  margin-top:28px;
  padding:13px 15px;
  border:1px solid rgba(212,255,58,.14);
  border-radius:16px;
  background:rgba(3,4,3,.54);
  box-shadow:inset 0 1px 0 rgba(244,237,224,.04);
}
.arc-proof span{
  display:block;
  margin-bottom:5px;
  color:var(--paper-3);
  font-family:var(--mono);
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.arc-proof strong{
  color:var(--lime);
  font-family:var(--mono);
  font-size:11.5px;
  font-weight:850;
  letter-spacing:.075em;
}
.arc-layer{
  position:relative;
  min-height:420px;
  overflow:hidden;
  border-radius:28px;
  isolation:isolate;
}
.arc-layer svg{
  width:100%;
  height:auto;
  display:block;
  overflow:visible;
}
.arc-layer text{
  paint-order:stroke;
  stroke:rgba(4,5,3,.55);
  stroke-width:2px;
  stroke-linejoin:round;
}
.arc-layer-bg{
  fill:rgba(3,4,3,.025);
  stroke:rgba(244,237,224,.032);
  stroke-width:1;
}
.arc-core-glow{
  animation:arcGlow 4.8s ease-in-out infinite;
}
.arc-rail{
  fill:none;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-dasharray:4 13;
  opacity:.66;
  animation:arcDash 2.2s linear infinite;
}
.arc-rail.lime{stroke:rgba(212,255,58,.66)}
.arc-rail.blue{stroke:rgba(139,215,255,.58);animation-direction:reverse}
.arc-rail.soft{opacity:.42}
.arc-packet{
  filter:drop-shadow(0 0 10px rgba(212,255,58,.35));
}
.arc-packet circle{fill:var(--lime)}
.arc-packet.blue circle{fill:#8bd7ff}
.arc-packet.delay{opacity:.7}
.arc-core circle:first-child{
  fill:url(#arcCardFill);
  stroke:rgba(212,255,58,.42);
  stroke-width:1.3;
  filter:drop-shadow(0 0 34px rgba(212,255,58,.2)) drop-shadow(0 30px 34px rgba(0,0,0,.64));
}
.arc-core-ring{
  fill:none;
  stroke:rgba(244,237,224,.14);
  stroke-width:1;
  stroke-dasharray:3 9;
  transform-box:fill-box;
  transform-origin:center;
  animation:arcSpin 16s linear infinite;
}
.arc-core-market-ring{
  fill:none;
  stroke:rgba(212,255,58,.12);
  stroke-width:1;
  stroke-dasharray:1 11;
  transform-box:fill-box;
  transform-origin:center;
  animation:arcSpin 28s linear infinite reverse;
}
.arc-logo rect,
.arc-logo path{
  fill:var(--lime);
  filter:drop-shadow(0 0 11px rgba(212,255,58,.58));
  animation:arcLogoPulse 3.8s ease-in-out infinite;
}
.arc-core text{
  fill:rgba(244,237,224,.56);
  font-family:var(--mono);
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  stroke-width:0;
}
.arc-market-tag rect{
  fill:rgba(0,0,0,.7);
  stroke:rgba(212,255,58,.22);
  stroke-width:1;
  filter:drop-shadow(0 0 12px rgba(212,255,58,.08));
}
.arc-market-tag text{
  fill:rgba(212,255,58,.82);
  font-family:var(--mono);
  font-size:8.8px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  stroke-width:0;
}
.arc-node rect{
  fill:rgba(7,8,5,.72);
  stroke:rgba(244,237,224,.11);
  stroke-width:1;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.34));
}
.arc-node.active rect{
  stroke:rgba(212,255,58,.3);
}
.arc-node .node-title{
  fill:var(--paper);
  font-family:var(--sans);
  font-size:15.5px;
  font-weight:620;
  letter-spacing:-.02em;
}
.arc-node .node-sub{
  fill:rgba(244,237,224,.45);
  font-family:var(--mono);
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
@keyframes arcDash{to{stroke-dashoffset:-34}}
@keyframes arcSpin{to{transform:rotate(360deg)}}
@keyframes arcGlow{
  0%,100%{opacity:.72}
  50%{opacity:1}
}
@keyframes arcLogoPulse{
  0%,100%{opacity:.9}
  50%{opacity:1}
}

.arc-stack{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  margin-top:48px;
}
.arc-stage{
  padding:30px 28px;
  border-radius:20px;
  background:rgba(13,14,11,0.55);
  position:relative;
  transition:transform 0.3s var(--easing);
}
.arc-stage:hover{transform:translateY(-3px)}
.arc-stage.now{
  border:1px solid rgba(212,255,58,0.4);
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(212,255,58,0.08), transparent 70%),
    rgba(13,14,11,0.6);
}
.arc-stage.next{border:1px solid var(--line-2)}
.arc-stage.future{border:1px dashed var(--line-2);background:rgba(13,14,11,0.4)}
.arc-stage .when{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--mono);font-size:10.5px;
  letter-spacing:0.14em;text-transform:uppercase;font-weight:600;
  margin-bottom:18px;
}
.arc-stage .when::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
.arc-stage.now .when{color:var(--lime)}
.arc-stage.now .when::before{box-shadow:0 0 8px var(--lime);animation:statusPulse 2s ease-in-out infinite}
.arc-stage.next .when{color:var(--paper-2)}
.arc-stage.future .when{color:var(--paper-3)}
.arc-stage h3{
  font-family:var(--sans);font-size:24px;font-weight:400;letter-spacing:-0.025em;
  color:var(--paper);line-height:1.18;margin-bottom:14px;
}
.arc-stage.future h3{color:var(--paper-2)}
.arc-stage p{font-size:14px;color:var(--paper-2);line-height:1.55;margin-bottom:20px}
.arc-stage ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.arc-stage ul li{
  font-family:var(--mono);font-size:11.5px;color:var(--paper-3);letter-spacing:0.03em;
  display:flex;align-items:center;gap:8px;
}
.arc-stage ul li::before{content:'·';color:var(--lime);font-size:24px;line-height:0;font-weight:bold}
.arc-stage.future ul li::before{color:var(--paper-3)}
@media (max-width:880px){
  .arc-head{text-align:left;margin-bottom:30px}
  .arc-head .sub{margin-left:0;margin-right:0}
  .arc-map{grid-template-columns:1fr;gap:24px}
  .arc-layer{order:1;min-height:0}
  .arc-map-copy{order:2}
  .arc-map-copy h3{max-width:12ch}
  .arc-proof{margin-left:0}
  .arc-stack{grid-template-columns:1fr;gap:14px}
}
@media (max-width:560px){
  .arc-section{padding:72px 0 80px}
  .arc-layer svg{width:106%;margin-left:-3%;max-width:none}
  .arc-node .node-title{font-size:15px}
  .arc-node .node-sub{font-size:8px}
}

/* ============= FINALE ============= */
.finale-section{
  padding:100px 0 100px;
  border-top:1px solid var(--line);
  position:relative;
}
.finale-grid{
  display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;
}
.finale-text h2{
  font-family:var(--sans);font-weight:300;
  font-size:clamp(36px,5vw,72px);line-height:0.95;letter-spacing:-0.045em;
  color:var(--paper);margin-bottom:22px;
  font-feature-settings:"ss01","cv11","cv02";
}
.finale-text h2 .hand{font-family:var(--hand);color:var(--lime);font-weight:600;display:inline-block;transform:rotate(-2deg)}
.finale-text h2 .it{font-weight:400}
.finale-text p{
  font-size:16.5px;color:var(--paper-2);line-height:1.6;max-width:48ch;margin-bottom:32px;
}
.finale-text p strong{color:var(--paper);font-weight:500}
.finale-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:36px}
.finale-meta{
  display:flex;gap:14px;flex-wrap:wrap;
  color:var(--paper-3);font-family:var(--mono);font-size:10.5px;
  letter-spacing:0.07em;text-transform:uppercase;
}
.finale-meta span{display:inline-flex;align-items:center;gap:7px}
.finale-meta span::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--lime);opacity:0.75}

.finale-illu{
  position:relative;
  aspect-ratio:1 / 1;
  width:100%;
  max-width:480px;justify-self:end;
}
.finale-illu svg{width:100%;height:100%;overflow:visible}
.settlement-proof-illu{
  filter:drop-shadow(0 34px 52px rgba(0,0,0,.48));
}
.proof-aura{
  animation:proofAura 5.4s ease-in-out infinite;
  transform-box:fill-box;
  transform-origin:center;
}
.proof-floor{
  fill:rgba(0,0,0,.58);
  filter:blur(2px);
}
.proof-rail{
  fill:none;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-dasharray:4 12;
  opacity:.62;
  animation:proofDash 2.2s linear infinite;
}
.proof-rail.lime{stroke:rgba(212,255,58,.68)}
.proof-rail.blue{stroke:rgba(139,215,255,.58);animation-direction:reverse}
.proof-packet{
  filter:drop-shadow(0 0 10px rgba(212,255,58,.38));
}
.proof-packet circle{fill:var(--lime)}
.proof-packet.blue circle{fill:#8bd7ff}
.proof-card rect:first-child{
  fill:url(#proofCard);
  stroke:rgba(212,255,58,.2);
  stroke-width:1.2;
  filter:drop-shadow(0 0 26px rgba(212,255,58,.11));
}
.proof-card-inner{
  fill:rgba(2,3,2,.58);
  stroke:rgba(244,237,224,.075);
  stroke-width:1;
}
.proof-scan{
  fill:none;
  stroke:rgba(212,255,58,.34);
  stroke-width:1;
  stroke-linecap:round;
  animation:proofScan 4.8s ease-in-out infinite;
}
.proof-kicker,
.proof-id,
.proof-states text,
.proof-side-label text{
  font-family:var(--mono);
  text-transform:uppercase;
  stroke-width:0;
}
.proof-kicker{
  fill:rgba(244,237,224,.42);
  font-size:9px;
  font-weight:850;
  letter-spacing:.16em;
}
.proof-id{
  fill:rgba(212,255,58,.9);
  font-size:13px;
  font-weight:900;
  letter-spacing:.1em;
}
.proof-seal{
  filter:drop-shadow(0 0 20px rgba(212,255,58,.18));
}
.proof-seal > circle:first-child{
  stroke:rgba(212,255,58,.42);
  stroke-width:1.2;
}
.proof-seal-ring{
  fill:none;
  stroke:rgba(212,255,58,.64);
  stroke-width:1.5;
  stroke-dasharray:70 170;
  transform-box:fill-box;
  transform-origin:center;
  animation:proofSpin 5.8s linear infinite;
}
.proof-seal-ring.slow{
  stroke:rgba(244,237,224,.14);
  stroke-width:1;
  stroke-dasharray:2 9;
  animation-duration:18s;
  animation-direction:reverse;
}
.proof-logo rect,
.proof-logo path{
  fill:var(--lime);
  filter:drop-shadow(0 0 10px rgba(212,255,58,.52));
  animation:proofLogoPulse 3.6s ease-in-out infinite;
}
.proof-states circle{
  fill:var(--lime);
  filter:drop-shadow(0 0 8px rgba(212,255,58,.38));
}
.proof-states text{
  fill:rgba(244,237,224,.72);
  font-size:9.2px;
  font-weight:850;
  letter-spacing:.05em;
}
.proof-side-label rect{
  fill:rgba(7,8,5,.72);
  stroke:rgba(244,237,224,.1);
  stroke-width:1;
}
.proof-side-label.left rect{stroke:rgba(212,255,58,.2)}
.proof-side-label.right rect{stroke:rgba(139,215,255,.18)}
.proof-side-label .top{
  fill:var(--paper);
  font-size:10px;
  font-weight:850;
  letter-spacing:.1em;
}
.proof-side-label .bottom{
  display:none;
  fill:rgba(244,237,224,.42);
  font-size:6.8px;
  font-weight:800;
  letter-spacing:.08em;
}
.proof-caption text{
  fill:rgba(244,237,224,.86);
  font-family:var(--hand);
  font-size:24px;
  font-weight:700;
}
.proof-caption path{
  fill:none;
  stroke:rgba(212,255,58,.58);
  stroke-width:1.4;
  stroke-linecap:round;
}
@keyframes proofAura{
  0%,100%{opacity:.72;transform:scale(.98)}
  50%{opacity:1;transform:scale(1.03)}
}
@keyframes proofDash{to{stroke-dashoffset:-32}}
@keyframes proofSpin{to{transform:rotate(360deg)}}
@keyframes proofLogoPulse{
  0%,100%{opacity:.9}
  50%{opacity:1}
}
@keyframes proofScan{
  0%,100%{opacity:.22;transform:translateY(-26px)}
  50%{opacity:.72;transform:translateY(78px)}
}
@media (max-width:880px){
  .finale-grid{grid-template-columns:1fr;gap:36px;text-align:left}
  .finale-illu{margin:0 auto;max-width:360px}
}
@media (max-width:560px){
  .finale-section{padding:76px 0 78px}
  .finale-illu{max-width:350px}
  .proof-side-label{opacity:.74}
  .proof-caption text{font-size:22px}
}

/* V2 integrated hero: copy leads, illustration supports. */
.hero{
  width:min(100% - 56px,1060px);
  min-height:clamp(560px, calc(100vh - 300px), 620px);
  margin:18px auto 0;
  padding:22px 0 44px;
  display:grid;
  grid-template-columns:minmax(340px,0.84fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(28px,5.2vw,76px);
}
.hero > .container{
  order:1;
  width:100%;
  max-width:500px;
  margin:0;
  padding:0;
  z-index:4;
}
.hero-scene{
  order:2;
  width:100%;
  max-width:none;
  min-height:500px;
  aspect-ratio:1.08 / 1;
  margin:0;
  transform:none;
  z-index:2;
}
.hero-scene::before{
  content:'';
  position:absolute;
  inset:4% -14% -3%;
  border-radius:50%;
  background:
    radial-gradient(ellipse 48% 46% at 50% 50%, rgba(212,255,58,0.16), transparent 66%),
    radial-gradient(ellipse 76% 72% at 50% 56%, rgba(0,0,0,0.5), transparent 72%);
  filter:blur(8px);
  pointer-events:none;
}
.hero-scene svg{
  inset:auto;
  width:122%;
  height:102%;
  left:39%;
  top:50%;
  transform:translate(-50%,-50%);
}
.hero-eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 26px;
  color:var(--paper-3);
  font-family:var(--mono);
  font-size:11px;
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
}
.hero-eyebrow::before{
  content:'';
  width:38px;
  height:1px;
  background:var(--lime);
  box-shadow:0 0 18px rgba(212,255,58,0.45);
}
.hero-headline{
  text-align:left;
  max-width:590px;
  margin:0;
  font-size:clamp(50px,4.95vw,76px);
  line-height:.92;
  letter-spacing:-.054em;
}
.hero-headline .stroke-under::after{
  height:6px;
  bottom:-0.01em;
}
.hero-sub{
  text-align:left;
  max-width:34ch;
  margin:22px 0 0;
  font-size:17.5px;
  line-height:1.58;
}
.hero-sub strong{display:block;margin-top:7px}
.hero-actions{
  justify-content:flex-start;
  margin:34px 0 0;
}
.signature-badges{
  justify-content:flex-start;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  max-width:540px;
  margin:30px 0 0;
  border:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  overflow:visible;
}
.sig-badge{
  flex:0 1 auto;
  gap:8px;
  padding:8px 11px;
  border:1px solid var(--line-2);
  border-radius:100px;
  background:rgba(13,14,11,0.5);
}
.sig-badge .ico{
  width:23px;
  height:23px;
  background:rgba(244,237,224,0.03);
}
.sig-badge .label b{font-size:10px;letter-spacing:.09em}
.sig-badge .label span{display:none}

.hero-scene > svg.settlement-core-hero{
  width:130%;
  height:121%;
  left:43%;
  top:49%;
  transform:translate(-50%,-50%);
  overflow:visible;
  --vault-accent:#d4ff3a;
  --vault-glow:rgba(212,255,58,.42);
  --vault-soft:rgba(212,255,58,.12);
}
.hero-scene > svg.settlement-core-hero[data-state="locking"]{
  --vault-accent:#e6ee74;
  --vault-glow:rgba(230,238,116,.34);
  --vault-soft:rgba(230,238,116,.1);
}
.hero-scene > svg.settlement-core-hero[data-state="payment"]{
  --vault-accent:#8bd7ff;
  --vault-glow:rgba(139,215,255,.36);
  --vault-soft:rgba(139,215,255,.10);
}
.hero-scene > svg.settlement-core-hero[data-state="ready"],
.hero-scene > svg.settlement-core-hero[data-state="locked"],
.hero-scene > svg.settlement-core-hero[data-state="settled"]{
  --vault-accent:#d4ff3a;
  --vault-glow:rgba(212,255,58,.44);
  --vault-soft:rgba(212,255,58,.13);
}
.settlement-core-hero text{
  paint-order:stroke;
  stroke:rgba(5,6,4,.5);
  stroke-width:2px;
  stroke-linejoin:round;
}
.sc-svg{display:block;overflow:visible}
.sc-aura{
  transform-box:fill-box;
  transform-origin:center;
  animation:scAura 5.5s ease-in-out infinite;
}
@keyframes scAura{
  0%,100%{opacity:.42;transform:scale(1)}
  50%{opacity:.68;transform:scale(1.045)}
}
.sc-orbit{
  fill:none;
  stroke-width:.8;
}
.sc-orbit.eur{stroke:rgba(212,255,58,.12)}
.sc-orbit.usdt{stroke:rgba(139,215,255,.11)}
.sc-rail{
  fill:none;
  stroke:rgba(244,237,224,.07);
  stroke-width:1.2;
}
.sc-rail-glow{
  fill:none;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-dasharray:2 18;
}
.sc-rail-glow.eur{
  stroke:rgba(212,255,58,.78);
  animation:scDash 1.5s linear infinite;
}
.sc-rail-glow.usdt{
  stroke:rgba(139,215,255,.74);
  animation:scDash 1.5s linear infinite reverse;
}
@keyframes scDash{to{stroke-dashoffset:-17}}
.sc-payment-rail{
  fill:none;
  stroke:rgba(212,255,58,.18);
  stroke-width:1.25;
  stroke-linecap:round;
  stroke-dasharray:2 18;
  opacity:.5;
  animation:scDash 2.2s linear infinite;
}
.sc-deal-tags{
  opacity:.2;
  filter:drop-shadow(0 12px 20px rgba(0,0,0,.24));
}
.sc-deal-tags g{
  animation:scTagPulse 8s ease-in-out infinite;
}
.sc-deal-tags g:nth-child(2){animation-delay:-2.2s}
.sc-deal-tags g:nth-child(3){animation-delay:-4.4s}
.sc-deal-tags rect{
  fill:rgba(3,4,3,.48);
  stroke:rgba(244,237,224,.08);
  stroke-width:1;
}
.sc-deal-tags text{
  font-family:var(--mono);
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
  fill:rgba(244,237,224,.34);
  stroke-width:0;
}
@keyframes scTagPulse{
  0%,100%{opacity:.62}
  50%{opacity:.92}
}
.sc-arb-layer{
  opacity:0;
  pointer-events:none;
  animation:scArbFallback 31.5s ease-in-out infinite;
}
.sc-arb-path{
  fill:none;
  stroke-width:1.25;
  stroke-linecap:round;
  stroke-dasharray:3 10;
  filter:drop-shadow(0 0 5px rgba(139,215,255,.18));
}
.sc-arb-path.main{
  stroke:rgba(139,215,255,.5);
}
.sc-arb-path.release{
  stroke:rgba(212,255,58,.38);
}
.sc-arb-path.refund{
  stroke:rgba(244,123,101,.44);
}
.sc-arb-module rect{
  fill:rgba(3,5,6,.7);
  stroke:rgba(139,215,255,.24);
  stroke-width:1;
}
.sc-arb-module circle{
  fill:#8bd7ff;
  filter:drop-shadow(0 0 6px rgba(139,215,255,.38));
  opacity:.78;
}
.sc-arb-module circle.muted{
  opacity:.32;
}
.sc-arb-module text{
  font-family:var(--mono);
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  fill:rgba(244,237,224,.5);
  stroke-width:0;
}
.sc-arb-label{
  font-family:var(--hand);
  font-size:14px;
  font-weight:700;
  letter-spacing:0;
  stroke-width:0;
  opacity:.42;
}
.sc-arb-label.release{
  fill:rgba(212,255,58,.58);
}
.sc-arb-label.refund{
  fill:rgba(244,123,101,.58);
}
@keyframes scArbFallback{
  0%,46%,62%,100%{opacity:0}
  50%,57%{opacity:.58}
}
.sc-chip{
  fill:rgba(4,5,4,.82);
  stroke:rgba(244,237,224,.1);
  stroke-width:1;
}
.sc-chip-txt{
  font-family:var(--mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  stroke-width:0;
}
.sc-chip-txt.eur{fill:#d4ff3a}
.sc-chip-txt.usdt{fill:#8bd7ff}
.sc-wallet{
  opacity:.82;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.28));
}
.sc-wallet-shell{
  fill:rgba(3,4,3,.62);
  stroke:rgba(244,237,224,.1);
  stroke-width:1;
}
.sc-wallet-dot.eur{
  fill:#d4ff3a;
  filter:drop-shadow(0 0 6px rgba(212,255,58,.36));
}
.sc-wallet-dot.usdt{
  fill:#8bd7ff;
  filter:drop-shadow(0 0 6px rgba(139,215,255,.34));
}
.sc-wallet-address{
  font-family:var(--mono);
  font-size:12px;
  font-weight:850;
  letter-spacing:.03em;
  fill:rgba(244,237,224,.7);
}
.sc-wallet-sub{
  font-family:var(--mono);
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
  fill:rgba(244,237,224,.35);
}
.sc-wallet-asset{
  font-family:var(--hand);
  font-size:19px;
  font-weight:750;
  letter-spacing:0;
  stroke-width:0;
}
.sc-wallet-asset.eur{
  fill:#d4ff3a;
  filter:drop-shadow(0 0 5px rgba(212,255,58,.24));
}
.sc-wallet-asset.usdt{
  fill:#8bd7ff;
  filter:drop-shadow(0 0 5px rgba(139,215,255,.24));
}
.sc-core-breathe{
  transform-box:fill-box;
  transform-origin:center;
  animation:scBreathe 4.6s ease-in-out infinite;
  filter:drop-shadow(0 0 18px var(--vault-soft)) drop-shadow(0 34px 42px rgba(0,0,0,.76));
}
@keyframes scBreathe{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.025)}
}
.sc-vault-ground{
  fill:rgba(0,0,0,.5);
  filter:blur(2px);
  opacity:.72;
}
.sc-vault-depth{
  stroke:rgba(244,237,224,.11);
  stroke-width:1;
}
.sc-vault-depth.top{fill:url(#scDepthTop)}
.sc-vault-depth.side,
.sc-vault-depth.left{fill:url(#scDepthSide)}
.sc-vault-depth.base{fill:rgba(2,3,2,.94)}
.sc-vault-edge{
  fill:none;
  stroke:var(--vault-accent);
  stroke-width:1.15;
  stroke-linecap:round;
  opacity:.34;
  filter:drop-shadow(0 0 8px var(--vault-glow));
}
.sc-vault-edge.right,
.sc-vault-edge.left{opacity:.24}
.sc-circuit{
  fill:none;
  stroke:rgba(244,237,224,.13);
  stroke-width:1;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:1.5 8;
  opacity:.58;
  animation:scCircuit 3.6s linear infinite;
}
.sc-circuit.b,
.sc-circuit.d{animation-direction:reverse}
@keyframes scCircuit{to{stroke-dashoffset:-18}}
.sc-ring-out{
  transform-box:fill-box;
  transform-origin:center;
  animation:scSpin 22s linear infinite;
}
.sc-ring-in{
  transform-box:fill-box;
  transform-origin:center;
  animation:scSpin 15s linear infinite reverse;
}
.sc-arc-rot{
  transform-box:fill-box;
  transform-origin:center;
  animation:scSpin 3.6s linear infinite;
}
@keyframes scSpin{to{transform:rotate(360deg)}}
.sc-arc{
  fill:none;
  stroke:var(--vault-accent);
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-dasharray:74 246;
  filter:drop-shadow(0 0 5px var(--vault-glow));
}
.sc-logo-bloom{
  transform-box:fill-box;
  transform-origin:center;
  animation:scLogoBloom 3.8s ease-in-out infinite;
}
@keyframes scLogoBloom{
  0%,100%{opacity:.7;transform:scale(.95)}
  50%{opacity:1;transform:scale(1.08)}
}
.sc-seal-rim{
  stroke:var(--vault-accent);
  opacity:.34;
  filter:drop-shadow(0 0 6px var(--vault-glow));
}
.sc-logo-frame{
  fill:rgba(0,0,0,.18);
  stroke:var(--vault-accent);
  stroke-width:.9;
  opacity:.22;
}
.sc-logo{
  transform-box:fill-box;
  transform-origin:center;
  animation:scGlow 3s ease-in-out infinite;
}
.sc-logo-pill{
  fill:var(--vault-accent);
  opacity:.88;
  filter:drop-shadow(0 0 6px var(--vault-glow));
}
.sc-logo-pill.left{
  transform-box:fill-box;
  transform-origin:center;
  animation:scLogoLeft 6.4s var(--ease) infinite;
}
.sc-logo-pill.right{
  transform-box:fill-box;
  transform-origin:center;
  animation:scLogoRight 6.4s var(--ease) infinite;
}
@keyframes scLogoLeft{
  0%,100%{transform:translateX(0) scaleY(1)}
  42%{transform:translateX(2px) scaleY(.972)}
  58%{transform:translateX(0) scaleY(1.018)}
}
@keyframes scLogoRight{
  0%,100%{transform:translateX(0) scaleY(1)}
  42%{transform:translateX(-2px) scaleY(.972)}
  58%{transform:translateX(0) scaleY(1.018)}
}
@keyframes scGlow{
  0%,100%{opacity:.78;filter:drop-shadow(0 0 5px var(--vault-glow))}
  50%{opacity:.96;filter:drop-shadow(0 0 12px var(--vault-glow))}
}
.sc-flash{
  fill:none;
  stroke:var(--vault-accent);
  stroke-width:1.25;
  opacity:0;
  transform-box:fill-box;
  transform-origin:center;
  animation:scFlash 4s ease-out infinite;
}
@keyframes scFlash{
  0%{transform:scale(1);opacity:0}
  8%{opacity:.36}
  40%{transform:scale(2.1);opacity:0}
  100%{opacity:0}
}
.sc-token{
  opacity:0;
  filter:drop-shadow(0 0 8px rgba(212,255,58,.32));
}
.sc-token circle{
  stroke:rgba(0,0,0,.42);
  stroke-width:1;
}
.sc-token.stable-in,
.sc-token.stable-out{
  filter:drop-shadow(0 0 8px rgba(139,215,255,.42));
}
.sc-token.stable-in circle,
.sc-token.stable-out circle{
  fill:#8bd7ff;
}
.sc-token.fiat-pay circle{
  fill:#d4ff3a;
}
.sc-token-symbol,
.sc-bead text{
  font-family:var(--mono);
  font-size:11px;
  font-weight:950;
  fill:#060804;
  stroke-width:0;
  letter-spacing:-.04em;
}
.sc-bead{opacity:0}
.sc-dock-line{
  fill:none;
  stroke:rgba(212,255,58,.18);
  stroke-width:1;
  stroke-linecap:round;
  stroke-dasharray:2 7;
  opacity:.62;
}
.sc-vault-id{
  font-family:var(--mono);
  font-size:9.4px;
  font-weight:850;
  letter-spacing:.14em;
  fill:rgba(244,237,224,.62);
  stroke-width:0;
}
.sc-statpill{
  fill:rgba(0,0,0,.72);
  stroke:var(--vault-accent);
  stroke-width:1;
  opacity:.84;
}
.sc-stat-txt{
  font-family:var(--mono);
  font-size:9.8px;
  font-weight:800;
  letter-spacing:.105em;
  fill:var(--vault-accent);
}
.sc-status-dot{
  fill:var(--vault-accent);
  transform-box:fill-box;
  transform-origin:center;
  animation:statusPulse 2s ease-in-out infinite;
}
.sc-hand{
  font-family:var(--hand);
  font-size:20px;
  font-weight:650;
  fill:rgba(244,237,224,.36);
  stroke-width:0;
  letter-spacing:0;
}
@media (max-width:980px){
  main{padding-top:92px}
  .hero{
    width:min(100% - 40px,680px);
    min-height:0;
    margin:8px auto 0;
    padding:22px 0 46px;
    grid-template-columns:1fr;
    gap:16px;
  }
  .hero > .container{
    max-width:none;
  }
  .hero-scene{
    min-height:350px;
    aspect-ratio:1.22 / 1;
    transform:none;
  }
  .hero-scene::before{
    inset:4% 0 -3%;
  }
  .hero-scene svg{
    width:120%;
    height:106%;
    left:40%;
  }
  .hero-headline{
    font-size:clamp(44px,10.2vw,68px);
    line-height:.92;
  }
  .hero-sub{
    max-width:38ch;
    font-size:16.5px;
    margin-top:20px;
  }
}

@media (max-width:560px){
  main{padding-top:76px}
  .hero{
    width:calc(100% - 32px);
    padding:16px 0 34px;
    gap:12px;
  }
  .hero-eyebrow{
    font-size:9.5px;
    margin-bottom:16px;
    gap:10px;
  }
  .hero-eyebrow::before{width:28px}
  .hero-headline{
    max-width:100%;
    font-size:clamp(32px,9vw,37px);
    letter-spacing:-0.052em;
  }
  .hero-headline .hand-word{
    font-size:.94em;
    text-shadow:0 0 12px rgba(212,255,58,.16);
  }
  .hero-headline .line > span{display:block}
  .hero-sub{
    max-width:31ch;
    font-size:15.5px;
  }
  .hero-actions{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
  .hero-actions .btn,
  .hero-actions .btn-code{
    width:100%;
    max-width:320px;
    min-width:0;
    justify-content:center;
  }
  .hero-actions .btn{padding-inline:20px}
  .hero-actions .btn-code{padding-inline:18px}
  .signature-badges{display:none}
  .sig-badge{padding:8px 10px}
  .sig-badge .label b{font-size:9.5px}
  .hero-scene{
    min-height:286px;
    margin-top:-2px;
    overflow:hidden;
    border-radius:24px;
  }
  .hero-scene svg{
    width:112%;
    height:106%;
    left:44%;
  }
}

@media (max-width:980px){
  .hero-scene > svg.settlement-core-hero{
    width:118%;
    height:112%;
    left:50%;
    top:50%;
  }
}

@media (max-width:560px){
  .hero-scene > svg.settlement-core-hero{
    width:108%;
    height:108%;
    left:50%;
  }
  .settlement-core-hero .sc-hand{display:none}
  .settlement-core-hero .sc-chip-txt{font-size:11px}
  .settlement-core-hero .sc-wallet{opacity:.72}
  .settlement-core-hero .sc-wallet-address{font-size:10px}
  .settlement-core-hero .sc-wallet-sub{display:none}
  .settlement-core-hero .sc-wallet-asset{font-size:16px}
  .settlement-core-hero .sc-deal-tags{display:none}
  .settlement-core-hero .sc-arb-layer{display:none}
  .settlement-core-hero .sc-payment-rail{opacity:.32}
  .settlement-core-hero .sc-vault-id{font-size:7.8px;fill:rgba(244,237,224,.55)}
  .settlement-core-hero .sc-stat-txt{font-size:8.3px;letter-spacing:.065em}
  .settlement-core-hero .sc-dock-line{opacity:.42}
}

/* ============= GLOBAL ANIMATIONS ============= */
@keyframes sparkle{
  0%,100%{opacity:0;transform:scale(0.6)}
  50%{opacity:0.7;transform:scale(1)}
}

.spark{animation:sparkle 4.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.spark.s2{animation-delay:-1.4s}
.spark.s3{animation-delay:-2.8s}
.spark.s4{animation-delay:-3.5s}


@keyframes statusPulse{
  0%,100%{opacity:0.7;transform:scale(1)}
  50%{opacity:1;transform:scale(1.4)}
}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

@media (min-width:981px) and (max-width:1100px){
  .hero-scene > svg.settlement-core-hero{
    width:118%;
    left:46%;
  }
}

/* ============= LIGHT THEME / LANDING OVERRIDES ============= */
html[data-theme="light"] .hero-scene{
  filter:drop-shadow(0 34px 70px rgba(70,58,30,.12));
}
html[data-theme="light"] .hero-scene svg,
html[data-theme="light"] .protocol-machine svg,
html[data-theme="light"] .arc-layer svg,
html[data-theme="light"] .finale-illu svg{
  filter:saturate(.96) contrast(.96);
}
html[data-theme="light"] .btn-code{
  background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(245,239,224,.56));
  border-color:rgba(18,20,14,.14);
  color:var(--paper);
}
html[data-theme="light"] .signature-badges,
html[data-theme="light"] .strip-panel,
html[data-theme="light"] .protocol-copy,
html[data-theme="light"] .protocol-machine,
html[data-theme="light"] .protocol-step,
html[data-theme="light"] .refuse-card,
html[data-theme="light"] .arc-map,
html[data-theme="light"] .arc-proof,
html[data-theme="light"] .arc-stage,
html[data-theme="light"] .finale-illu{
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(245,239,224,.32));
  border-color:rgba(18,20,14,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 26px 54px -38px rgba(67,54,30,.28);
}
html[data-theme="light"] .strip-illu,
html[data-theme="light"] .protocol-mini,
html[data-theme="light"] .arc-proof,
html[data-theme="light"] .receipt-line{
  background:rgba(255,255,255,.44);
  border-color:rgba(18,20,14,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52);
}
html[data-theme="light"] .sig-badge{
  border-color:rgba(18,20,14,.07);
}
html[data-theme="light"] .sig-badge .ico{
  color:var(--paper);
  background:rgba(255,255,255,.42);
  border-color:rgba(18,20,14,.12);
}
html[data-theme="light"] .sig-badge.lime .ico{
  color:var(--lime-deep);
  background:rgba(159,205,0,.1);
  border-color:rgba(159,205,0,.32);
}
html[data-theme="light"] .sig-badge.blue .ico{
  color:#237ca8;
  background:rgba(139,215,255,.16);
  border-color:rgba(35,124,168,.22);
}
html[data-theme="light"] .protocol-chipline span,
html[data-theme="light"] .arc-phase,
html[data-theme="light"] .refuse-log,
html[data-theme="light"] .finale-meta span{
  color:var(--paper-3);
  border-color:rgba(18,20,14,.12);
  background:rgba(255,255,255,.4);
}
html[data-theme="light"] .pm-bg,
html[data-theme="light"] .arc-layer-bg{
  fill:rgba(255,250,240,.48);
  stroke:rgba(18,20,14,.1);
}
html[data-theme="light"] .pm-floor,
html[data-theme="light"] .proof-floor,
html[data-theme="light"] .sc-vault-ground{
  fill:rgba(78,65,36,.16);
}
html[data-theme="light"] .pm-node circle,
html[data-theme="light"] .arc-core circle,
html[data-theme="light"] .proof-card > rect:first-child{
  fill:rgba(255,255,255,.62);
  stroke:rgba(18,20,14,.12);
}
html[data-theme="light"] .pm-node text,
html[data-theme="light"] .pm-status text,
html[data-theme="light"] .arc-node text,
html[data-theme="light"] .proof-caption text,
html[data-theme="light"] .proof-id,
html[data-theme="light"] .proof-kicker{
  fill:rgba(18,20,14,.72);
}
html[data-theme="light"] .sc-wallet-shell,
html[data-theme="light"] .sc-arb-module rect,
html[data-theme="light"] .sc-statpill,
html[data-theme="light"] .pm-status rect{
  fill:rgba(255,255,255,.66);
  stroke:rgba(18,20,14,.12);
}
html[data-theme="light"] .sc-wallet-address,
html[data-theme="light"] .sc-wallet-sub,
html[data-theme="light"] .sc-vault-id,
html[data-theme="light"] .sc-stat-txt,
html[data-theme="light"] .sc-hand{
  fill:rgba(18,20,14,.58);
}
html[data-theme="light"] .sc-rail,
html[data-theme="light"] .pm-rail,
html[data-theme="light"] .arc-rail,
html[data-theme="light"] .proof-rail{
  opacity:.78;
}
html[data-theme="light"] .sc-vault-unit,
html[data-theme="light"] .pm-vault,
html[data-theme="light"] .proof-card{
  filter:drop-shadow(0 28px 42px rgba(67,54,30,.2));
}
html[data-theme="light"] .refuse-card p,
html[data-theme="light"] .strip-panel p,
html[data-theme="light"] .arc-stage p,
html[data-theme="light"] .finale-text p{
  color:var(--paper-2);
}
html[data-theme="light"] .refuse-card .promise{
  border-color:rgba(159,205,0,.16);
}
html[data-theme="light"] .refuse-card::before,
html[data-theme="light"] .strip-panel::before{
  opacity:.28;
}
