.fh{--ink:#12191c;--dim:#54646a;--faint:#84969c;--line:#c7d3d3;--teal:#0e6e7a;--deep:#0b4a57;--aqua:#6fcfc6;--mist:#edf1f1;--machine:#14252b;--machine2:#0e1c21;--amber:#b9791a;--bws1:#2e8b8b;--bws2:#6ba84f;--bws3:#d9a21b;--bws4:#d9772b;--bws5:#c0392b;font-family:var(--font-plex-sans), "IBM Plex Sans", system-ui, sans-serif;color:var(--ink);background:var(--mist)}.fh *{box-sizing:border-box}.fh .mono{font-family:var(--font-plex-mono), "IBM Plex Mono", monospace}.fh .serif{font-family:var(--font-plex-serif), "IBM Plex Serif", serif}.fh .wrap{max-width:1180px;margin:0 auto;padding:0 26px}.fh a{text-decoration:none}.fh .btn{cursor:pointer;border-radius:2px;padding:11px 22px;font-size:14px;font-weight:600;transition:background .15s,color .15s;display:inline-block}.fh .btn-primary{background:var(--teal);color:#fff}.fh .btn-primary:hover{background:var(--deep)}.fh .btn-ghost{color:#fff;border:1px solid #fff3}.fh .btn-ghost:hover{background:#ffffff12}.fh .btn-line{border:1px solid var(--teal);color:var(--teal)}.fh .btn-line:hover{background:var(--teal);color:#fff}.fh .eyebrow{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;letter-spacing:.2em;color:var(--teal);font-size:12px;font-weight:600}.fh-nav{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14252bf2;border-bottom:1px solid #ffffff14;position:sticky;top:0}.fh-nav .row{align-items:center;gap:10px;padding:14px 0;display:flex}.fh-brand{align-items:center;gap:9px;display:flex}.fh-brand b{color:#fff;letter-spacing:.01em;font-size:18px;font-weight:700}.fh-brand b span{color:var(--aqua);font-weight:400}.fh-nav .links{align-items:center;gap:22px;margin-left:auto;font-size:14px;display:flex}.fh-nav .links a{color:#9db0b4}.fh-nav .links a:hover{color:#fff}.fh-hero{background:var(--machine);color:#c4d4d6;overflow:hidden}.fh-hero .grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;padding:60px 0 72px;display:grid}.fh-hero h1{color:#fff;letter-spacing:-1px;text-wrap:balance;margin-top:16px;font-size:62px;font-weight:700;line-height:1}.fh-hero h1 em{color:var(--aqua);font-style:normal}.fh-hero .sub{color:#a7babe;max-width:42ch;margin-top:20px;font-size:17px;line-height:1.55}.fh-hero .cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.fh-ledger{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;border:1px solid #ffffff1f;border-radius:4px;max-width:460px;margin-top:30px;font-size:14px;overflow:hidden}.fh-ledger .l{border-bottom:1px solid #ffffff12;justify-content:space-between;padding:9px 16px;display:flex}.fh-ledger .l:last-child{color:#fff;background:#ffffff0a;border-bottom:0;font-weight:700}.fh-ledger .k{color:#93a6aa}.fh-inst{background:var(--machine2);border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;justify-content:space-between;min-height:430px;padding:26px;display:flex;position:relative}.fh-lcd{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:var(--aqua);text-shadow:0 0 14px #6fcfc655;background:#06110f;border:1px solid #16302b;border-radius:5px;align-items:baseline;gap:10px;padding:14px 18px;font-size:38px;font-weight:700;display:flex}.fh-lcd small{color:#4e9089;font-size:16px}.fh-well{background:#08140f;border:1px solid #16302b;border-radius:5px;flex:1;min-height:150px;margin:18px 0;position:relative;overflow:hidden}.fh-well .water{opacity:.9;background:linear-gradient(#0e6e7a,#0b3f49);height:58%;position:absolute;bottom:0;left:0;right:0}.fh-well .wave{height:18px;position:absolute;top:42%;left:0;right:0;transform:translateY(-50%)}.fh-well .staff{z-index:2;font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:#5c8f88;flex-direction:column;justify-content:space-between;font-size:11px;display:flex;position:absolute;top:10px;bottom:10px;left:10px}.fh-gaugerow{justify-content:space-between;align-items:flex-end;display:flex}.fh-seal{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:var(--aqua);border:1px dashed #35635c;border-radius:50px;padding:8px 15px;font-size:12px;transform:rotate(-4deg)}.fh-sec{padding:72px 0}.fh-sec.paper{background:var(--mist)}.fh-sec.paper2{background:#e4ebea}.fh-sec.dark{background:var(--machine);color:#c4d4d6}.fh-sec .head{max-width:60ch}.fh-sec h2{letter-spacing:-.5px;text-wrap:balance;margin-top:8px;font-size:34px;font-weight:700}.fh-sec.dark h2{color:#fff}.fh-sec .intro{color:var(--dim);margin-top:12px;font-size:16px;line-height:1.6}.fh-sec.dark .intro{color:#a7babe}.fh-3{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px;display:grid}.fh-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:22px}.fh-card .tag{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;letter-spacing:.1em;color:var(--teal);font-size:11px}.fh-card h3{color:var(--ink);margin-top:6px;font-size:19px}.fh-card p{color:var(--dim);margin-top:8px;font-size:14px;line-height:1.55}.fh-card .drop{border-radius:0 50% 50%;width:34px;height:34px;margin-bottom:14px;transform:rotate(45deg)}.fh-risk{grid-template-columns:.8fr 1.2fr;align-items:center;gap:44px;margin-top:8px;display:grid}.fh-scale{gap:5px;max-width:460px;margin-top:24px;display:flex}.fh-scale span{text-align:center;font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:#fff;border-radius:2px;flex:1;padding:7px 3px;font-size:11px}.fh-map{background:#0e1c21;border:1px solid #ffffff1f;border-radius:14px;padding:22px;position:relative}.fh-map .card{border:1px solid #ffffff26;border-left:5px solid var(--bws5);z-index:3;background:#0b171b;border-radius:8px;padding:13px 16px;position:absolute;top:30px;right:30px}.fh-map .card .t{color:#fff;font-size:14px;font-weight:700}.fh-map .card .s{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:#9db0b4;margin-top:3px;font-size:11px}.fh-map .card .bb{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:#fff;background:var(--bws5);border-radius:2px;margin-top:6px;padding:2px 8px;font-size:10px;display:inline-block}.fh-pin{transform-origin:bottom}.fh-steps{counter-reset:s;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px;display:grid}.fh-step{border:1px solid var(--line);border-top:3px solid var(--teal);background:#fff;border-radius:6px;padding:20px;position:relative}.fh-step .n{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:var(--teal);font-size:12px;font-weight:700}.fh-step h3{margin-top:6px;font-size:16px}.fh-step p{color:var(--dim);margin-top:6px;font-size:13px;line-height:1.5}.fh-sheet{border:1px solid var(--line);background:#fbfdfc;border-radius:6px;margin-top:28px;overflow:hidden}.fh-sheet .r{border-bottom:1px solid #e6edec;align-items:baseline;gap:14px;padding:13px 20px;font-size:14px;display:flex}.fh-sheet .r:last-child{border-bottom:0}.fh-sheet .r b{min-width:130px;font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:var(--deep);font-size:12.5px}.fh-sheet .r span{color:var(--dim)}.fh-cta{background:var(--machine);color:#fff;text-align:center;padding:64px 0}.fh-cta h2{letter-spacing:-.5px;text-wrap:balance;font-size:38px;font-weight:700}.fh-cta p{color:#a7babe;margin-top:12px;font-size:16px}.fh-cta .cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px;display:flex}.fh-foot{background:var(--machine2);color:#8fa3a7;padding:48px 0 30px}.fh-foot .cols{border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding:28px;display:grid}.fh-foot h5{color:#fff;font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;letter-spacing:.14em;margin-bottom:12px;font-size:11px}.fh-foot a{color:#8fa3a7;padding:4px 0;font-size:13.5px;display:block}.fh-foot a:hover{color:var(--aqua)}.fh-foot p{font-size:13px;line-height:1.55}.fh-foot .serial{font-family:var(--font-plex-mono),"IBM Plex Mono",monospace;color:#5f747a;letter-spacing:.06em;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:20px;font-size:10.5px;display:flex}@media (max-width:880px){.fh-hero .grid,.fh-risk{grid-template-columns:1fr;gap:30px}.fh-3,.fh-steps,.fh-foot .cols{grid-template-columns:1fr 1fr}.fh-nav .links a:not(.btn){display:none}.fh-hero h1{font-size:42px}.fh-sec h2,.fh-cta h2{font-size:28px}}@media (max-width:560px){.fh-3,.fh-steps,.fh-foot .cols{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){.fh-wave-anim{animation:3.6s ease-in-out infinite fh-flow}@keyframes fh-flow{0%,to{transform:translateY(-50%)}50%{transform:translate(-24px,-50%)}}.fh-pin{animation:3s cubic-bezier(.5,1.6,.4,1) infinite fh-drop}@keyframes fh-drop{0%,62%{opacity:0;transform:translateY(-20px)}72%{opacity:1;transform:translateY(3px)}80%{transform:translateY(-4px)}to,88%{opacity:1;transform:translateY(0)}}}
