/* Elementor structural layer for the Balanced Intelligence page */

/* section vertical rhythm */
.bi-page .bi-section > .e-con-inner{padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(88px,11vw,150px)}
.bi-page .bi-closing > .e-con-inner{padding-top:clamp(120px,15vw,200px);padding-bottom:clamp(120px,15vw,200px)}
.bi-page .bi-hero > .e-con-inner{padding-top:150px;padding-bottom:90px}

/* kill Elementor default widget margins we manage ourselves */
.bi-page .elementor-widget:not(:last-child){margin-block-end:0}
.bi-page .bi-inner > .elementor-widget,
.bi-page .bi-narrow > .elementor-widget{width:100%}

/* header */
.bi-page .bi-header{position:fixed;top:14px;left:0;right:0;z-index:100;pointer-events:none;--width:100%}
.bi-page .bi-nav{pointer-events:auto;max-width:1280px;margin:0 auto;width:calc(100% - 32px);
  display:flex;align-items:center;gap:18px;flex-wrap:nowrap;
  padding:9px 9px 9px 24px;border-radius:999px;
  border:1px solid rgba(255,255,255,.12);background:rgba(8,9,12,.6);
  backdrop-filter:blur(22px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 24px 60px -24px rgba(0,0,0,.75)}
.bi-page .bi-brand-mark{flex:none;width:auto}
.bi-page .bi-brand-mark img{height:24px;width:auto;display:block}
.bi-page .bi-brand-word{flex:none;width:auto}
.bi-page .bi-brand-word .elementor-heading-title{font-family:var(--bi-display);font-weight:600;font-size:14px;letter-spacing:.14em;line-height:1;white-space:nowrap}
.bi-page .bi-brand-word a{text-decoration:none}
.bi-page .bi-navlinks-wrap{margin-left:auto;width:auto;flex:none}
.bi-page .bi-navcta-wrap,.bi-page .bi-burger-wrap{flex:none;width:auto}
.bi-page .bi-navlinks{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.bi-page .bi-navlinks li{margin:0}
.bi-page .bi-burger{display:none}
@media(max-width:1200px){
.bi-page .bi-navlinks a{font-size:11px;padding:9px 8px;letter-spacing:.1em}
}
@media(max-width:1080px){
.bi-page .bi-burger{display:flex}
.bi-page .bi-navcta-wrap{display:none}
.bi-page .bi-navlinks-wrap{margin-left:0}
.bi-page .bi-burger-wrap{margin-left:auto}
}

/* hero */
.bi-page .bi-hero{min-height:100svh}
.bi-page .bi-hero > .e-con-inner{justify-content:center}
.bi-page .bi-hero .elementor-widget-html{position:absolute;inset:0;z-index:0;width:100%}
.bi-page .bi-hero-inner{position:relative;z-index:2;gap:0}
.bi-page .bi-hero-status-wrap{margin-bottom:34px}
.bi-page .bi-hero-sub{margin-top:34px}
.bi-page .bi-cta-row{margin-top:44px;flex-wrap:wrap;width:100%}
.bi-page .bi-cta-row .elementor-widget-button{width:auto}
.bi-page .bi-cta-center{justify-content:center}

/* closing */
.bi-page .bi-closing .elementor-widget-html{position:absolute;inset:0;z-index:0;width:100%}
.bi-page .bi-closing-inner{position:relative;z-index:2;align-items:center;text-align:center}
.bi-page .bi-closing-inner .bi-eyebrow{text-align:center}

/* rows */
.bi-page .bi-row{flex-wrap:wrap;align-items:flex-start}
.bi-page .bi-col{width:100%}
@media(min-width:1025px){
.bi-page .bi-row > .e-con{flex-shrink:1}
}
@media(max-width:1024px){
.bi-page .bi-row > .e-con{width:100% !important}
}

/* capability grid */
.bi-page .bi-caps{border-radius:18px;overflow:hidden;border:1px solid var(--bi-line);box-shadow:var(--bi-bezel);background-color:var(--bi-line);gap:1px}
.bi-page .bi-caprow{gap:1px;flex-wrap:wrap;align-items:stretch}
.bi-page .bi-cap{background-color:var(--bi-surface)}
@media(max-width:820px){
.bi-page .bi-caprow > .e-con{width:100% !important}
}
.bi-page .bi-capviz img{height:88px;width:auto;display:block;margin-bottom:12px}
.bi-page .bi-cap-title .elementor-heading-title{font-size:22px;font-weight:600}
.bi-page .bi-phase-title .elementor-heading-title{font-size:20px}

/* ledger */
.bi-page .bi-ledger{border-top:1px solid var(--bi-line);gap:0}
.bi-page .bi-ledger-row{display:grid;grid-template-columns:96px 1fr;gap:clamp(18px,4vw,54px);
  padding:34px 6px;border-bottom:1px solid var(--bi-line);align-items:baseline;
  transition:background .35s var(--bi-ease),padding-left .35s var(--bi-ease);width:100%}
.bi-page .bi-ledger-row:hover{background:rgba(255,255,255,.018);padding-left:16px}
.bi-page .bi-no-w .elementor-heading-title{font-family:var(--bi-mono);font-size:13px;letter-spacing:.1em;font-variant-numeric:tabular-nums;font-weight:500;color:var(--bi-ink)}
.bi-page .bi-ledger-row:hover .bi-no-w .elementor-heading-title{color:var(--bi-lime)}
.bi-page .bi-ledger-copy p{font-family:var(--bi-display);font-weight:500;font-size:clamp(19px,2.3vw,27px);line-height:1.25;margin:0}
@media(max-width:767px){.bi-page .bi-ledger-row{grid-template-columns:1fr;gap:10px}}

/* terms */
.bi-page .bi-terms{gap:0}
.bi-page .bi-term{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:24px;width:100%;
  padding:28px 32px;background-color:var(--bi-surface);border-bottom:1px solid var(--bi-line)}
.bi-page .bi-term:last-child{border-bottom:none}
.bi-page .bi-term:hover{background-color:var(--bi-surface-2)}
@media(max-width:1024px){.bi-page .bi-term{grid-template-columns:1fr;gap:8px}}

/* ask */
.bi-page .bi-ask{flex-wrap:wrap}
.bi-page .bi-ask-num-wrap{width:auto;flex:none}
.bi-page .bi-ask-txt{flex:1 1 320px}

/* stats */
.bi-page .bi-stat-num-wrap{width:100%}
.bi-page .bi-stat-body p{margin:0}

/* market */
.bi-page .bi-market-big .elementor-heading-title{font-family:var(--bi-display);font-weight:500;font-size:clamp(26px,3.2vw,40px);line-height:1.18;letter-spacing:-.005em}

/* contact + footer */
.bi-page .bi-corg{color:var(--bi-ink);margin-top:10px;font-size:16px}
.bi-page .bi-frow{flex-wrap:wrap;align-items:center}
.bi-page .bi-foot-logo{width:auto;flex:none}
.bi-page .bi-foot-logo img{height:22px;width:auto}
.bi-page .bi-ftxt-wrap{width:auto;flex:none}
.bi-page .bi-fright-wrap{margin-left:auto}

/* ---------- system panel ---------- */
.bi-page .bi-sys-wrap{width:100%}
.bi-sys-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:18px 26px;border-bottom:1px solid var(--bi-line)}
.bi-sys-t{font-family:var(--bi-mono);font-size:13px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--bi-blue-bright);display:flex;align-items:center;gap:12px}
.bi-sys-t .bi-ind{width:7px;height:7px;border-radius:50%;background:var(--bi-lime);box-shadow:0 0 10px rgba(178,210,53,.8)}
.bi-sim-toggle{font-family:var(--bi-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
  background:none;border:1px solid rgba(255,255,255,.16);color:var(--bi-ink);
  border-radius:999px;padding:10px 18px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;
  transition:all .3s var(--bi-ease)}
.bi-sim-toggle .bi-sw{width:26px;height:14px;border-radius:8px;background:rgba(255,255,255,.14);position:relative;transition:background .3s;flex:none}
.bi-sim-toggle .bi-sw::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#FFFFFF;transition:all .3s}
.bi-sim-toggle.bi-on{border-color:rgba(178,210,53,.5);color:var(--bi-lime)}
.bi-sim-toggle.bi-on .bi-sw{background:rgba(178,210,53,.14)}
.bi-sim-toggle.bi-on .bi-sw::after{left:14px;background:var(--bi-lime)}
.bi-sys-body{padding:clamp(18px,3.5vw,44px)}
#bi-whatif{width:100%;height:auto;display:block}
.bi-sys-caption{padding:0 26px 22px;font-family:var(--bi-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bi-blue-bright)}
.bi-wf-lane line{stroke:rgba(255,255,255,.09);stroke-width:1}
.bi-wf-node{fill:var(--bi-surface-2);stroke:rgba(255,255,255,.28);stroke-width:1}
.bi-wf-label{font-family:var(--bi-mono);font-size:11.5px;fill:#FFFFFF;letter-spacing:.08em;text-transform:uppercase}
.bi-wf-base{stroke:var(--bi-blue-bright);stroke-width:2;fill:none;transition:opacity .6s var(--bi-ease)}
.bi-wf-alt{stroke:var(--bi-lime);stroke-width:2;fill:none;stroke-dasharray:900;stroke-dashoffset:900;
  transition:stroke-dashoffset 1.4s var(--bi-ease) .15s,opacity .3s}
.bi-wf-x{opacity:0;transition:opacity .4s var(--bi-ease)}
.bi-wf-packet{fill:var(--bi-blue-bright)}
.bi-sim-on .bi-wf-base{opacity:.18}
.bi-sim-on .bi-wf-alt{stroke-dashoffset:0}
.bi-sim-on .bi-wf-x{opacity:1}
.bi-sim-on .bi-wf-packet{fill:var(--bi-lime)}
@media (prefers-reduced-motion: reduce){
.bi-wf-alt{transition:none}
}

/* ---------- explicit text colours (beat Elementor global typography) ---------- */
.bi-page .elementor-widget-text-editor,
.bi-page .elementor-widget-text-editor p,
.bi-page .elementor-widget-text-editor li,
.bi-page .elementor-widget-text-editor div,
.bi-page .elementor-widget-text-editor span,
.bi-page .elementor-widget-heading .elementor-heading-title,
.bi-page .elementor-widget-heading .elementor-heading-title a{
  color:var(--bi-ink);
}
.bi-page .elementor-widget-text-editor strong{color:var(--bi-lime)}
.bi-page .bi-panel-label span,
.bi-page .bi-panel-label{color:var(--bi-blue-bright)}
.bi-page .bi-panel-label .bi-warn{color:#C9743F}
.bi-page .bi-phase-label{color:var(--bi-blue-bright)}
.bi-page .bi-key{color:var(--bi-blue-bright)}
.bi-page .bi-role{color:var(--bi-blue-bright)}
.bi-page .bi-eyebrow .bi-idx{color:var(--bi-blue-bright)}
.bi-page .bi-hl,.bi-page .bi-stat-num,.bi-page .bi-ask-num{color:var(--bi-lime)}
.bi-page .bi-stat-num .bi-unit{color:var(--bi-ink)}
.bi-page .bi-mission-big .elementor-heading-title .bi-hl,
.bi-page .bi-market-big .elementor-heading-title .bi-hl,
.bi-page .bi-closing-h2 .elementor-heading-title em{color:var(--bi-lime)}
.bi-page .bi-hero-h1 .bi-l2,.bi-page .bi-h2 .bi-l2{color:var(--bi-blue-bright)}
.bi-page .bi-navcta{color:#0A0B06}

/* ---------- Elementor editor safety ----------
   In the editor the canvas widgets are absolutely positioned and the reveal
   script never runs, which previously made every widget unselectable or
   invisible. Inside the editor we flatten them so each widget can be clicked. */
.bi-editing .bi-rv{opacity:1 !important;transform:none !important;filter:none !important}
.bi-editing .bi-hero .elementor-widget-html,
.bi-editing .bi-closing .elementor-widget-html{
  position:relative;inset:auto;min-height:64px;
  border:1px dashed rgba(178,210,53,.5);border-radius:8px;
}
.bi-editing .bi-hero-canvas,
.bi-editing .bi-closing-canvas{position:relative;min-height:62px}
.bi-editing .bi-hero-canvas::after,
.bi-editing .bi-closing-canvas::after{display:none}
.bi-editing .bi-hero{min-height:0}
.bi-editing .bi-header{position:relative;top:0}
.bi-editing .bi-navlinks{position:static;opacity:1;visibility:visible;pointer-events:auto}
