/* UIA home — sections ported from the standalone homepage design, scoped to .home2 */
/* ============ shared reveal + line-draw motion ============ */
  .home2 [data-reveal]{ opacity: 0; transform: translateY(20px); transition: opacity .7s var(--ease-out), transform .7s var(--ease-out); transition-delay: var(--d, 0s); }
  .home2 [data-reveal].in-view{ opacity: 1; transform: none; }

  .home2 .draw{ stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.15s var(--ease-out); transition-delay: var(--d, 0s); }
  .home2 .hero-schematic.is-playing .draw,.home2 .node-network.in-view .draw,.home2 .path-track.in-view .draw,.home2 .proof-card.in-view .draw{ stroke-dashoffset: 0; }

  /* ============ NAV ============ */
  .home2 .uia-nav{ position: fixed; top: 0; left: 0; right: 0; z-index: 40; transition: background .3s var(--ease-standard), box-shadow .3s var(--ease-standard), border-color .3s; border-bottom: 1px solid transparent; }
  .home2 .uia-nav.is-docked{ background: rgba(15,22,55,0.86); backdrop-filter: blur(10px); border-bottom-color: var(--hairline-workshop); box-shadow: 0 10px 30px -18px rgba(0,0,0,.7); }
  .home2 .uia-nav-inner{ display: flex; align-items: center; justify-content: space-between; height: 80px; transition: height .3s var(--ease-standard); }
  .home2 .uia-nav.is-docked .uia-nav-inner{ height: 66px; }

  .home2 .brand-lock{ display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
  .home2 .brand-words{ display: inline-flex; flex-direction: column; gap: 3px; line-height: 1; }
  .home2 .brand-name{ font-family: var(--font-display); font-weight: 700; font-size: 17px; letter-spacing: .005em; color: var(--paper-100); }
  .home2 .brand-sub{ font-family: var(--font-mono); font-weight: 400; font-size: 9.5px; letter-spacing: .34em; text-transform: uppercase; color: var(--purple-400); }

  .home2 .uia-nav-links{ display: flex; align-items: center; gap: 30px; }
  .home2 .uia-nav-links a{ font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .04em; color: var(--text-on-workshop-muted); text-decoration: none; white-space: nowrap; transition: color .18s; position: relative; padding: 4px 0; }
  .home2 .uia-nav-links a:hover{ color: var(--gold-300); }
  .home2 .uia-nav-links a.active{ color: var(--paper-100); }
  .home2 .uia-nav-links a.active::after{ content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 1.5px; background: var(--gold-400); }
  .home2 .uia-nav-cta{ display: flex; align-items: center; gap: 14px; }

  .home2 .uia-burger{ display: none; flex-direction: column; gap: 4px; background: none; border: none; cursor: pointer; padding: 8px; }
  .home2 .uia-burger span{ width: 22px; height: 2px; background: var(--paper-100); border-radius: 2px; }
  .home2 .uia-mobile{ display: none; }

  /* ============ HERO ============ */
  .home2 .hero{ position: relative; background: var(--navy-700); color: var(--text-on-workshop); overflow: hidden; padding-top: 80px; }
  .home2 .hero::before{ content: ""; position: absolute; inset: 0; background:
      radial-gradient(120% 90% at 78% 8%, rgba(94,75,199,0.20), transparent 55%),
      radial-gradient(90% 80% at 12% 100%, rgba(11,19,48,0.85), transparent 60%);
    pointer-events: none; }
  .home2 .blueprint{ position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; opacity: 0; animation: gridIn 1.1s var(--ease-out) .1s forwards; mask-image: radial-gradient(120% 100% at 70% 30%, #000 35%, transparent 85%); }
  @keyframes gridIn{ from { opacity: 0; transform: scale(1.04); } to { opacity: 1; transform: none; } }

  .home2 .hero-grid{ position: relative; z-index: 1; display: grid; grid-template-columns: 1.08fr 0.92fr; gap: var(--space-16); align-items: center; padding-block: clamp(56px, 9vw, 120px); }
  .home2 .hero-copy{ display: flex; flex-direction: column; gap: var(--space-6); max-width: 600px; }
  .home2 .hero-eyebrow{ color: var(--gold-300); display: inline-flex; align-items: center; gap: 12px; }
  .home2 .hero-eyebrow .tick{ width: 22px; height: 1px; background: currentColor; display: inline-block; }
  .home2 .hero-head{ font-size: clamp(40px, 6.4vw, 78px); color: var(--paper-50); }
  .home2 .ink-gold{ color: var(--gold-400); position: relative; }
  .home2 .ink-gold::after{ content: ""; position: absolute; left: 0; right: 0; bottom: 0.06em; height: 0.07em; background: var(--gold-400); opacity: .35; }
  .home2 .hero-sub{ color: var(--paper-100); max-width: 520px; }
  .home2 .hero-actions{ display: flex; align-items: center; gap: var(--space-6); flex-wrap: wrap; margin-top: var(--space-1); }
  .home2 .hero-ghost{ font-family: var(--font-mono); font-size: 13px; letter-spacing: .04em; color: var(--paper-100); text-decoration: none; border-bottom: 1px solid var(--gearline-on-workshop); padding-bottom: 3px; transition: color .18s, border-color .18s; }
  .home2 .hero-ghost:hover{ color: var(--gold-300); border-color: var(--gold-400); }
  .home2 .hero-badges{ display: flex; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-2); }

  .home2 .hero-art{ position: relative; z-index: 1; display: flex; justify-content: center; }
  .home2 .hero-schematic{ width: 100%; max-width: 460px; }
  .home2 .hero-schematic svg{ width: 100%; height: auto; display: block; }
  .home2 .schem-fig{ font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .12em; fill: var(--gold-300); }
  .home2 .schem-sub,.home2 .schem-note{ font-family: var(--font-mono); font-size: 9px; letter-spacing: .2em; fill: var(--text-on-workshop-muted); }

  /* schematic ignition */
  .home2 .filament{ stroke-dasharray: 1; stroke-dashoffset: 1; }
  .home2 .spark-core{ opacity: 0; }
  .home2 .hero-schematic.is-playing .filament{ animation: drawIn .7s var(--ease-out) 1.35s both; }
  .home2 .hero-schematic.is-playing .spark-core{ animation: spark .55s var(--ease-out) 1.95s both; transform-box: fill-box; transform-origin: center; }
  @keyframes drawIn{ to { stroke-dashoffset: 0; } }
  @keyframes spark{ 0% { opacity: 0; transform: scale(0.2); } 55% { opacity: 1; transform: scale(1.7); } 100% { opacity: 1; transform: scale(1); } }

  /* gears counter-rotate at a 12:10 meshing ratio; the bulb glyph matches the
     logo mark and fades off→on like a switched bulb */
  .home2 .hero-schematic .gear{ transform-box: fill-box; transform-origin: center; }
  @media (prefers-reduced-motion: no-preference){
    .home2 .hero-schematic.is-playing .gear-a{ animation: gearTurn    24s linear 2.4s infinite; }
    .home2 .hero-schematic.is-playing .gear-b{ animation: gearTurnRev 20s linear 2.4s infinite; }
    .home2 .hero-schematic.is-playing .bulb-assembly{ animation: bulbOnOff 4.2s ease-in-out 2.6s infinite; }
  }
  @keyframes gearTurn{ to { transform: rotate(360deg); } }
  @keyframes gearTurnRev{ to { transform: rotate(-360deg); } }
  @keyframes bulbOnOff{
    0%, 16%, 100% { opacity: 1;  filter: drop-shadow(0 0 6px rgba(236,183,64,.7)); }
    44%, 56%      { opacity: .18; filter: drop-shadow(0 0 0 rgba(236,183,64,0)); }
    74%           { opacity: 1;  filter: drop-shadow(0 0 6px rgba(236,183,64,.7)); }
  }

  /* ============ STATS STRIP ============ */
  .home2 .stats-strip{ background: var(--navy-950); color: var(--text-on-workshop); border-top: 1px solid var(--hairline-workshop); }
  .home2 .stats-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-10); padding-block: var(--space-16); }
  .home2 .stat-block{ display: flex; flex-direction: column; gap: var(--space-3); padding-top: var(--space-5); border-top: 2px solid var(--gearline-on-workshop); }
  .home2 .stat-fig{ color: var(--gold-300); }
  .home2 .stat-value{ color: var(--gold-300); font-weight: 600; font-size: clamp(40px, 4.4vw, 58px); line-height: 1; }
  .home2 .stat-word{ color: var(--paper-50); }
  .home2 .stat-pre{ color: var(--gold-300); }
  .home2 .stat-label{ color: var(--text-on-workshop-muted); text-transform: uppercase; letter-spacing: .1em; max-width: 22ch; }

  /* ============ THE PATH ============ */
  .home2 .path{ background: var(--surface-paper); color: var(--text-on-paper); padding-block: var(--space-section); position: relative; }
  .home2 .path-head{ max-width: 680px; display: flex; flex-direction: column; gap: var(--space-4); margin-bottom: var(--space-16); }
  .home2 .path-title{ color: var(--ink-900); }
  .home2 .path-lead{ color: var(--ink-500); }
  .home2 .path-track{ position: relative; }
  .home2 .path-line{ position: absolute; top: 36px; left: calc(10% - 0px); right: calc(10% - 0px); height: 2px; background: var(--paper-400); border-radius: 2px; overflow: hidden; }
  .home2 .path-line-fill{ position: absolute; inset: 0 auto 0 0; width: 0%; background: linear-gradient(90deg, var(--gold-500), var(--gold-400)); box-shadow: 0 0 10px rgba(236,183,64,.45); transition: width .15s linear; }
  .home2 .path-steps{ display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-6); }
  .home2 .path-step{ display: flex; flex-direction: column; gap: var(--space-3); align-items: flex-start; }
  .home2 .path-node{ width: 74px; height: 74px; border-radius: var(--radius-full); background: var(--paper-50); border: 1.5px solid var(--hairline-paper); display: flex; align-items: center; justify-content: center; box-shadow: var(--shadow-1); position: relative; z-index: 1; }
  .home2 .path-icon-svg{ width: 38px; height: 38px; }
  .home2 .path-fig{ color: var(--gold-600); }
  .home2 .path-step-name{ color: var(--ink-900); }
  .home2 .path-step-body{ color: var(--ink-500); }

  /* ============ PROOF ============ */
  .home2 .proof{ background: var(--surface-paper-raised); color: var(--text-on-paper); padding-block: var(--space-section); border-top: 1px solid var(--hairline-paper); }
  .home2 .proof-head{ display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--space-12); align-items: end; margin-bottom: var(--space-16); }
  .home2 .proof-title{ color: var(--ink-900); margin-top: var(--space-4); }
  .home2 .proof-intro{ color: var(--ink-500); }
  .home2 .proof-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-6); }
  .home2 .proof-card{ height: 100%; }
  .home2 .proof-fig{ background: var(--paper-50); height: 100%; display: flex; flex-direction: column; transition: transform .28s var(--ease-out), box-shadow .28s var(--ease-out), border-color .28s; }
  .home2 .proof-card:hover .proof-fig{ transform: translateY(-6px); box-shadow: var(--shadow-2); }
  .home2 .proof-art{ position: relative; aspect-ratio: 240 / 150; background:
      repeating-linear-gradient(0deg, transparent 0 23px, rgba(178,135,30,0.07) 23px 24px),
      repeating-linear-gradient(90deg, transparent 0 23px, rgba(178,135,30,0.07) 23px 24px);
    border: 1px solid var(--gearline-on-paper); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-5); overflow: hidden; }
  .home2 .product-art-svg{ width: 78%; height: 78%; }
  .home2 .tank-tag{ position: absolute; left: 10px; bottom: 10px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-900); background: var(--gold-300); padding: 4px 8px; border-radius: var(--radius-xs); }
  .home2 .proof-body{ display: flex; flex-direction: column; gap: var(--space-2); margin-top: auto; }
  .home2 .proof-name{ color: var(--ink-900); }
  .home2 .proof-text{ color: var(--ink-500); }

  /* UIA in action gallery */
  .home2 .action-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-8) var(--space-6); }
  .home2 .action-tile{ display: flex; flex-direction: column; gap: var(--space-3); }
  .home2 .action-frame{ position: relative; aspect-ratio: 4 / 3; border: 1px solid var(--gearline-on-paper); border-radius: var(--radius-sm); background: var(--paper-100); overflow: hidden; transition: box-shadow .35s var(--ease-standard), border-color .35s var(--ease-standard); }
  .home2 .action-frame > image-slot{ position: absolute; inset: 0; transition: transform 1.1s var(--ease-out); will-change: transform, opacity; }
  /* reveal: each photo fades up from below with a soft stagger across the grid */
  .home2 .action-tile:not(.in-view) .action-frame > image-slot{ opacity: 0; transform: translateY(32px); }
  .home2 .action-tile.in-view .action-frame > image-slot{ animation: actionRise .82s var(--ease-out) calc(var(--d, 0s) + 0.05s) backwards; }
  @keyframes actionRise{
    from { opacity: 0; transform: translateY(32px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  .home2 .action-tile:hover .action-frame{ box-shadow: var(--shadow-2); border-color: var(--gold-400); }
  .home2 .action-tile:hover .action-frame > image-slot{ transform: scale(1.05); }
  /* corner ticks draw in just after the frame */
  .home2 .action-tick{ position: absolute; width: 13px; height: 13px; pointer-events: none; z-index: 3; opacity: 0; transform: scale(.3); transition: opacity .5s var(--ease-out), transform .5s var(--ease-out), border-color .3s var(--ease-standard); transition-delay: calc(var(--d, 0s) + .25s); }
  .home2 .action-tile.in-view .action-tick{ opacity: 1; transform: none; }
  .home2 .action-tick.tl{ top: 7px; left: 7px; border-top: 2px solid var(--gold-600); border-left: 2px solid var(--gold-600); }
  .home2 .action-tick.tr{ top: 7px; right: 7px; border-top: 2px solid var(--gold-600); border-right: 2px solid var(--gold-600); }
  .home2 .action-tick.bl{ bottom: 7px; left: 7px; border-bottom: 2px solid var(--gold-600); border-left: 2px solid var(--gold-600); }
  .home2 .action-tick.br{ bottom: 7px; right: 7px; border-bottom: 2px solid var(--gold-600); border-right: 2px solid var(--gold-600); }
  .home2 .action-tile:hover .action-tick{ border-color: var(--gold-400); }
  .home2 .action-cap{ color: var(--ink-700); text-transform: uppercase; letter-spacing: .1em; transition: color .3s; }
  .home2 .action-tile:hover .action-cap{ color: var(--gold-600); }

  /* ============ COMMUNITY ============ */
  .home2 .community{ background: var(--navy-800); color: var(--text-on-workshop); padding-block: var(--space-section); position: relative; overflow: hidden; }
  .home2 .community::before{ content: ""; position: absolute; inset: 0; background: radial-gradient(80% 120% at 50% -10%, rgba(94,75,199,0.16), transparent 60%); pointer-events: none; }
  .home2 .community-head{ position: relative; z-index: 1; max-width: 620px; display: flex; flex-direction: column; gap: var(--space-4); margin-bottom: var(--space-8); }
  .home2 .community-title{ color: var(--paper-50); }
  .home2 .community-sub{ color: var(--paper-100); }
  .home2 .node-network{ position: relative; z-index: 1; width: 100%; margin: var(--space-4) 0 var(--space-12); }
  .home2 .node-network svg{ width: 100%; height: auto; display: block; }
  .home2 .net-node{ opacity: 0; transition: opacity .5s var(--ease-out); transition-delay: var(--d, 0s); }
  .home2 .node-network.in-view .net-node{ opacity: 1; }
  .home2 .community-pillars{ position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-8); border-top: 1px solid var(--hairline-workshop); padding-top: var(--space-8); }
  .home2 .community-pillar{ display: flex; flex-direction: column; gap: var(--space-2); }
  .home2 .pillar-v{ color: var(--gold-300); }
  .home2 .pillar-l{ color: var(--text-on-workshop-muted); text-transform: uppercase; letter-spacing: .1em; }

  /* ============ CTA BAND ============ */
  .home2 .cta-band{ position: relative; background: var(--gold-400); color: var(--ink-900); overflow: hidden; padding-block: var(--space-section); }
  .home2 .cta-gears{ position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
  .home2 .cta-inner{ position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--space-5); }
  .home2 .cta-eyebrow{ color: var(--navy-700); opacity: .8; }
  .home2 .cta-head{ color: var(--navy-700); }
  .home2 .cta-sub{ color: var(--navy-700); max-width: 540px; opacity: .9; }
  .home2 .cta-actions{ display: flex; align-items: center; gap: var(--space-6); flex-wrap: wrap; justify-content: center; margin-top: var(--space-2); }
  .home2 .cta-link{ font-family: var(--font-mono); font-size: 13px; letter-spacing: .04em; color: var(--navy-700); text-decoration: none; border-bottom: 1px solid rgba(22,38,95,.4); padding-bottom: 3px; }
  .home2 .cta-link:hover{ border-color: var(--navy-700); }

  /* ============ FOOTER ============ */
  .home2 .uia-footer{ background: var(--navy-950); color: var(--text-on-workshop); padding-top: var(--space-20); }
  .home2 .uia-footer-grid{ display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: var(--space-12); padding-bottom: var(--space-16); }
  .home2 .uia-footer-brand{ display: flex; flex-direction: column; gap: var(--space-5); align-items: flex-start; }
  .home2 .footer-blurb{ color: var(--text-on-workshop-muted); max-width: 340px; }
  .home2 .uia-footer-col{ display: flex; flex-direction: column; gap: var(--space-4); }
  .home2 .uia-footer-col .u-eyebrow{ color: var(--gold-300); }
  .home2 .uia-footer-col a{ color: var(--text-on-workshop-muted); text-decoration: none; font-family: var(--font-serif); font-size: 15.5px; transition: color .18s; }
  .home2 .uia-footer-col a:hover{ color: var(--paper-100); }
  .home2 .footer-tax{ color: var(--text-on-workshop-muted); }
  .home2 .footer-mark{ margin-top: var(--space-2); opacity: .6; }
  .home2 .uia-footer-base{ border-top: 1px solid var(--hairline-workshop); }
  .home2 .uia-footer-base-inner{ display: flex; align-items: center; justify-content: space-between; padding-block: var(--space-5); }
  .home2 .uia-footer-base-inner .u-mono-caption{ color: var(--text-on-workshop-muted); }

  /* ============ RESPONSIVE ============ */
  @media (max-width: 1080px){
    .home2 .hero-grid{ grid-template-columns: 1fr; gap: var(--space-10); }
    .home2 .hero-art{ max-width: 400px; margin-inline: auto; }
    .home2 .hero-copy{ max-width: none; }
    .home2 .proof-grid{ grid-template-columns: repeat(2, 1fr); }
    .home2 .action-grid{ grid-template-columns: repeat(2, 1fr); }
    .home2 .proof-head{ grid-template-columns: 1fr; gap: var(--space-5); }
  }
  @media (max-width: 920px){
    .home2 .uia-nav-links{ display: none; }
    .home2 .uia-burger{ display: flex; }
    .home2 .uia-mobile{ display: block; max-height: 0; overflow: hidden; background: rgba(15,22,55,0.97); backdrop-filter: blur(10px); transition: max-height .32s var(--ease-standard); }
    .home2 .uia-mobile.open{ max-height: 420px; }
    .home2 .uia-mobile > *{ display: block; }
    .home2 .uia-mobile a{ display: block; padding: 14px 32px; font-family: var(--font-mono); font-size: 14px; letter-spacing: .04em; color: var(--paper-100); text-decoration: none; border-bottom: 1px solid var(--hairline-workshop); }
    .home2 .uia-mobile > button,.home2 .uia-mobile .cta-go,.home2 .uia-mobile :last-child{ margin: 16px 32px; }
    .home2 .stats-grid{ grid-template-columns: repeat(2, 1fr); gap: var(--space-8); }
    .home2 .path-steps{ grid-template-columns: repeat(2, 1fr); gap: var(--space-10) var(--space-6); }
    .home2 .path-line{ display: none; }
    .home2 .community-pillars{ grid-template-columns: 1fr; gap: var(--space-6); }
  }
  @media (max-width: 720px){
    .home2 .uia-nav-inner{ height: 64px; }
    .home2 .brand-sub{ display: none; }
    .home2 .proof-grid{ grid-template-columns: 1fr; }
    .home2 .action-grid{ grid-template-columns: 1fr; }
    .home2 .uia-footer-grid{ grid-template-columns: 1fr 1fr; gap: var(--space-8) var(--space-6); }
    .home2 .uia-footer-brand{ grid-column: 1 / -1; }
    .home2 .uia-footer-base-inner{ flex-direction: column; gap: var(--space-3); align-items: flex-start; }
  }
  @media (max-width: 480px){
    .home2 .stats-grid{ grid-template-columns: 1fr; }
    .home2 .path-steps{ grid-template-columns: 1fr; }
    .home2 .hero-actions{ gap: var(--space-4); }
    .home2 .uia-footer-grid{ grid-template-columns: 1fr; }
  }

  @media (prefers-reduced-motion: reduce){
    .home2 [data-reveal]{ opacity: 1 !important; transform: none !important; transition: none !important; }
    .home2 .draw{ stroke-dashoffset: 0 !important; transition: none !important; }
    .home2 .blueprint{ animation: none; opacity: 1; }
    .home2 .filament,.home2 .spark-core,.home2 .spark-rays{ opacity: 1 !important; stroke-dashoffset: 0 !important; animation: none !important; }
    .home2 .net-node{ opacity: 1 !important; }
    .home2 .action-tick{ opacity: 1 !important; transform: none !important; transition: none !important; }
    .home2 .action-frame::after{ display: none !important; }
    .home2 .action-frame > image-slot{ transition: none !important; animation: none !important; opacity: 1 !important; transform: none !important; }
    .home2 .bm-animated,.home2 .bm-animated *{ animation: none !important; }
    .home2 .bm-animated .bm-ring,.home2 .bm-animated .bm-tooth,.home2 .bm-animated .bm-bulb,.home2 .bm-animated .bm-base,.home2 .bm-animated .bm-fil{ stroke-dashoffset: 0 !important; }
    .home2 .bm-animated .bm-spark{ opacity: 1 !important; }
    .home2 .globe-node-core,.home2 .globe-ping{ animation: none !important; opacity: .9 !important; }
    .home2 .globe-ping{ display: none !important; }
    .home2 .globe-arc{ stroke-dashoffset: 0 !important; transition: none !important; }
  }

  /* ============ NAV LOGO IGNITION (load-in) ============ */
  .home2 .bm-animated .bm-ring,.home2 .bm-animated .bm-tooth,.home2 .bm-animated .bm-bulb,.home2 .bm-animated .bm-base,.home2 .bm-animated .bm-fil{
    stroke-dasharray: 1; stroke-dashoffset: 1;
    animation: bmDraw .6s var(--ease-out) both;
  }
  .home2 .bm-animated .bm-ring{ animation-delay: .15s; }
  .home2 .bm-animated .bm-bulb{ animation-delay: .60s; animation-duration: .7s; }
  .home2 .bm-animated .bm-base{ animation-delay: 1.00s; animation-duration: .4s; }
  .home2 .bm-animated .bm-fil{ animation-delay: 1.15s; animation-duration: .5s; }
  .home2 .bm-animated .bm-spark{
    transform-box: fill-box; transform-origin: center; opacity: 0;
    animation: bmSpark .6s var(--ease-out) 1.35s both;
  }
  .home2 .bm-animated{ animation: bmGlow 1.3s ease-out 1.45s both; }
  @keyframes bmDraw{ to { stroke-dashoffset: 0; } }
  @keyframes bmSpark{ 0% { opacity: 0; transform: scale(.2); } 55% { opacity: 1; transform: scale(1.9); } 100% { opacity: .9; transform: scale(1); } }
  @keyframes bmGlow{ 0%, 55% { filter: none; } 100% { filter: drop-shadow(0 0 6px rgba(236,183,64,.5)); } }

  /* ============ SITE INTRO (load-in) ============ */
  .home2 .intro{ position: fixed; inset: 0; z-index: 300; background: var(--navy-950); display: flex; align-items: center; justify-content: center; overflow: hidden; }
  .home2 .intro::before{ content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
      radial-gradient(120% 90% at 50% 42%, rgba(94,75,199,0.22), transparent 60%),
      radial-gradient(80% 70% at 50% 50%, rgba(236,183,64,0.10), transparent 62%); }
  .home2 .intro-inner{ position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 24px; }
  .home2 .intro-mark svg{ will-change: transform, filter; }
  .home2 .intro-mark .bm-animated{ animation-duration: 1.5s; filter: drop-shadow(0 0 16px rgba(236,183,64,.28)); }
  .home2 .intro-word{ display: flex; flex-direction: column; align-items: center; gap: 8px; opacity: 0; animation: introWord .7s var(--ease-out) 1.55s both; }
  .home2 .intro-word-name{ font-family: var(--font-display); font-weight: 700; font-size: 27px; letter-spacing: .01em; color: var(--paper-50); }
  .home2 .intro-word-sub{ font-family: var(--font-mono); font-size: 11.5px; letter-spacing: .42em; text-transform: uppercase; color: var(--purple-400); }
  @keyframes introWord{ from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
  .home2 .intro.lifting{ background: rgba(11,19,48,0); transition: background .72s var(--ease-out); pointer-events: none; }
  .home2 .intro.lifting::before,.home2 .intro.lifting .intro-word{ opacity: 0; transition: opacity .42s var(--ease-out); }
  .home2 .intro.gone{ opacity: 0; pointer-events: none; transition: opacity .38s var(--ease-out); }
  

  /* ============ COMMUNITY GLOBE ============ */
  .home2 .globe{ position: relative; z-index: 1; width: 100%; max-width: 468px; margin: var(--space-5) auto var(--space-12); }
  .home2 .globe canvas{ width: 100%; height: auto; display: block; }

/* accept the site-wide boot reveal class too */
.home2 [data-reveal].in{opacity:1;transform:none}
.home2 .hero-schematic.in .draw,.home2 .node-network.in .draw,.home2 .path-track.in .draw,.home2 .proof-card.in .draw{stroke-dashoffset:0}
