
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:#06192E;-webkit-font-smoothing:antialiased;font-family:'IntroOutfit',system-ui,sans-serif;}
  a{color:#0F7A6C;text-decoration:none;} a:hover{color:#0B5F54;}
  button{font-family:inherit;cursor:pointer;}
  ::selection{background:#5EE0C6;color:#0B2A4A;}
  @keyframes site-up{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:none;}}
  @keyframes site-pop{from{opacity:0;transform:translateY(30px) scale(.94);}to{opacity:1;transform:none;}}
  @keyframes site-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-12px);}}
  @keyframes site-floatB{0%,100%{transform:translateY(0);}50%{transform:translateY(10px);}}
  @keyframes site-drift{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-60px,40px) scale(1.08);}}
  @keyframes site-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
  @keyframes site-grow{from{transform:scaleX(0);}to{transform:scaleX(1);}}
  @keyframes site-fill{from{transform:scaleX(0);}to{transform:scaleX(1);}}
  @keyframes site-pulse{0%,100%{opacity:1;}50%{opacity:.3;}}
  @keyframes site-ring{0%{transform:scale(.6);opacity:.8;}100%{transform:scale(2.2);opacity:0;}}
  @keyframes site-dots{0%,80%,100%{transform:translateY(0);opacity:.4;}40%{transform:translateY(-4px);opacity:1;}}
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { margin: 0; overflow-x: clip; }
.site-root { font-family: IntroOutfit, system-ui, sans-serif; }
.site-root [hidden] { display: none !important; }
.site-root main section { scroll-margin-top: 100px; }
.site-root a { transition: filter .2s ease; }
.site-root a:hover { filter: brightness(1.1); }
.site-root button, .site-root a { -webkit-tap-highlight-color: transparent; }
.site-root :focus-visible, .site-motion-toggle:focus-visible { outline: 3px solid #3DD68C; outline-offset: 5px; }
.site-skip { position: fixed; left: 16px; top: -100px; z-index: 100; background: white; padding: 12px 20px; border-radius: 10px; color: #0B2A4A; }
.site-skip:focus { top: 16px; }
.site-motion-toggle { position: fixed; bottom: 18px; right: 18px; z-index: 60; min-height: 44px; border: 1px solid #3DD68C66; border-radius: 30px; padding: 10px 18px; color: #FFF; background: #0B2A4A; font: 600 12px/1.4 IntroOutfit, sans-serif; box-shadow: 0 8px 24px #06192E33; }
.site-motion-paused *, .site-motion-paused *::before, .site-motion-paused *::after { animation-play-state: paused !important; }
.site-motion-paused [data-rotating-words] { transition: none !important; }
[data-reveal] { transition: opacity .9s cubic-bezier(.2,.8,.2,1) var(--reveal-delay, 0ms), transform .9s cubic-bezier(.2,.8,.2,1) var(--reveal-delay, 0ms); }
.site-reveal-pending { opacity: 0; transform: translateY(32px); }
[data-project-tab] > span[style*="position:absolute"] { display: none !important; }
[data-project-tab][aria-pressed="true"]::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: #3DD68C; transform-origin: left; animation: site-fill 5s linear both; }
.projects-held [data-project-tab]::after { animation-play-state: paused !important; }
.feature-card { min-width: 0; }
.feature-preview { margin: auto 0 0; padding-top: 10px; }
.feature-preview > div { height: 230px; padding: 12px; border-radius: 14px; display: flex; align-items: center; justify-content: center; background: #EEF3F1; overflow: hidden; }
.feature-preview img { display: block; max-width: 100%; max-height: 206px; width: auto; height: auto; object-fit: contain; user-select: none; -webkit-user-drag: none; }
.feature-preview figcaption { color: #5E7186; font-size: 11px; margin-top: 8px; }
.intro-showcase { width: min(1200px, calc(100% - 56px)); padding: 80px 0; margin: auto; }
.intro-heading h2 { font-size: clamp(30px,4vw,48px); font-weight: 800; letter-spacing: -.03em; line-height: 1.1; }
.site-faq { padding: 24px 28px 100px; background: #EEF3F1; }
.site-faq > div { max-width: 1200px; margin: auto; }
.site-eyebrow { color: #0F7A6C; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.site-faq h2 { font-size: clamp(30px,4vw,48px); font-weight: 800; line-height: 1.1; letter-spacing: -.03em; margin: 18px 0 30px; }
.site-faq details { background: #FFF; padding: 22px 24px; border: 1px solid #DCE4E1; border-radius: 16px; margin-bottom: 12px; }
.site-faq summary { cursor: pointer; font-size: 18px; font-weight: 700; }
.site-faq details p { max-width: 900px; font-size: 16px; line-height: 1.6; color: #4A5D72; margin: 16px 0 0; }
@media (max-width: 700px) {
  .site-nav > div { flex-wrap: wrap; gap: 14px !important; padding: 14px 20px !important; }
  .site-nav > div > div { flex: 1 1 100% !important; order: 3; justify-content: space-between; gap: 12px !important; }
  .site-nav > div > div a { font-size: 12px !important; }
  .site-nav > div > a:last-child { margin-left: auto; font-size: 13px !important; padding: 10px 12px !important; }
  .site-nav > div > a:first-child > span { font-size: 18px !important; }
  .site-root main > section:not(.intro-showcase):not(#contact):not(.site-faq) { padding: 64px 20px !important; }
  #top h1 { font-size: clamp(42px,9vw,64px) !important; }
  #top > div:last-child { gap: 36px !important; }
  #top > div:last-child > div:last-child { transform: scale(.9); transform-origin: top center; margin-bottom: -60px; }
  [data-flow-circle], [data-flow-token] > div { width: 54px !important; height: 54px !important; font-size: 12px !important; }
  [data-flow-progress] { top: 26px !important; }
  [data-flow-token] { top: 0 !important; }
  [data-screen-label="03 Approval flow"] [data-reveal="150"] > div:first-child { top: 26px !important; }
  [data-screen-label="03 Approval flow"] [data-reveal="150"] > div:last-child { gap: 8px !important; }
  [data-flow-circle] ~ span { font-size: 11px !important; letter-spacing: 0 !important; }
  [data-flow-circle] ~ span:last-child { font-size: 12px !important; }
  #contact { padding: 0 20px 64px !important; }
  #contact > div { padding: 40px 24px !important; border-radius: 24px !important; }
  .intro-showcase { width: calc(100% - 40px); padding: 54px 0; }
  .site-faq { padding: 0 20px 64px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .site-root *, .site-root *::before, .site-root *::after { animation: none !important; transition: none !important; }
  .site-reveal-pending { opacity: 1; transform: none; }
}
