/* Luminous dimensional opening; the original photograph remains the fallback. */
.hero-scene {
  background:none;
  mask-image:linear-gradient(transparent,black 13%,black 91%,transparent);
}
.hero-scene canvas {filter:none;}

/* Identical adjacent groups loop without an empty tail or a visible reset. */
.lticker {display:flex;align-items:stretch;overflow:hidden;background:#100c09;}
.ticker-viewport {flex:1;min-width:0;overflow:hidden;}
.lticker-in {
  display:flex;width:max-content;min-width:0;padding:0;gap:0;
  font:11px/1.5 var(--mono);
}
.ticker-group {display:flex;flex-shrink:0;align-items:center;gap:36px;padding:19px 18px;min-width:calc(100vw - 52px);}
.ticker-group>span {display:flex;gap:14px;white-space:nowrap;}
.ticker-running .lticker-in {animation:market-flow var(--ticker-duration,55s) linear infinite;}
.ticker-toggle {flex:0 0 52px;border:0;border-left:1px solid var(--line);background:#140e0a;color:var(--gold);font:16px var(--sans);cursor:pointer;}
.ticker-toggle:disabled {opacity:.35;cursor:default;}
.ticker-viewport:hover .lticker-in,
.ticker-paused .lticker-in,.ticker-offscreen .lticker-in,.ticker-background .lticker-in,
.motion-paused .lticker-in {animation-play-state:paused;}
.ticker-reading .ticker-viewport {overflow-x:auto;}
.ticker-reading .lticker-in {animation:none;transform:none;}
.ticker-reading .ticker-group[aria-hidden] {display:none;}
@keyframes market-flow {to {transform:translateX(-50%);}}

/* Four milestones share a panoramic architectural horizon. */
#roadmap {padding:76px 0 70px;min-height:0;background:#100b08;}
#roadmap .roadmap-grid {display:block;}
#roadmap .rh {display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin:0 0 32px;max-width:none;}
#roadmap .rh .note {max-width:340px;font-size:14px;line-height:1.8;}
.roadmap-panorama {margin:0;overflow:hidden;background:#100b08;}
.roadmap-panorama img {display:block;width:100%;height:320px;object-fit:cover;object-position:center 64%;}
.rmap {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid #a58a5a;}
.rmap>.model {display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:30px 24px 28px;border-top:0;border-left:1px solid var(--line);background:#110d0a;}
.rmap>.model:first-child {border-left:0;}
.rmap h3 {font:500 26px/1.25 var(--sans);letter-spacing:-.035em;margin:0;}
.rmap .ct {min-height:0;margin-top:12px;color:var(--lilac);font:13px/1.6 var(--sans);}
.rmap .rgt {padding:0;}
.rmap li {font:14px/1.85 var(--sans);color:#c3b9ab;margin-bottom:14px;}
.rmap ul {margin:0;padding-left:16px;}
.rmap .cond {margin-top:22px;padding-top:17px;border-top:1px solid var(--line);font:12px/1.85 var(--sans);}
.rmap .foot {grid-column:1/-1;margin:0;padding:25px 0 0;border-top:1px solid var(--line);font:12px/1.8 var(--sans);max-width:100%;}

/* The accounting identity is the centrepiece of this banner. */
#books {min-height:0;padding:85px 0 80px;background:#0c0907;}
#books .rail {display:block;}
#books .rh {display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:none;margin:0 0 40px;}
#books .rh h2 {max-width:720px;}
#bookNote {max-width:300px;font:13px/1.8 var(--sans);text-align:right;}
.books-grid {display:grid;grid-template-columns:1fr;gap:36px;}
.books-grid .ledger {
  grid-row:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.16fr);
  padding:0;border:1px solid #b9a17b55;border-top:2px solid var(--gold);
  background:#17110c;backdrop-filter:none;border-radius:0;
}
.books-grid .ledger>.row,.books-grid .ledger>.row+.row {
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  padding:38px 24px!important;gap:25px;min-width:0;border-top:0;border-left:1px solid var(--line);
}
.books-grid .ledger>.row:first-child {border-left:0;}
.books-grid .ledger>.row .l {font:13px/1.5 var(--sans);max-width:none;}
.books-grid .ledger>.row .v {font:500 clamp(20px,2vw,31px)/1.2 var(--mono);letter-spacing:-.05em;white-space:normal;overflow-wrap:anywhere;}
.books-grid .ledger>.row.sum {background:#d8bf910b;}
.books-grid .ledger>.row.sum .l,.books-grid .ledger>.row.sum .v {color:var(--gold);}
.books-grid .ledger>.row:only-child {grid-column:1/-1;}
.books-grid .ledger>.row .ledger-error {font:14px/1.8 var(--sans);letter-spacing:0;}
.books-grid .ledger .checks {
  grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  border-top:1px solid var(--line);padding:25px 24px;gap:20px;background:#100c09;
}
.books-grid .ledger .checks .row {display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;}
.books-grid .ledger .checks .l {font:12px/1.7 var(--sans);}
.books-grid .ledger .checks .v {font:12px/1.7 var(--mono);white-space:normal;overflow-wrap:anywhere;}
.books-context {display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:start;}
.books-context .exp {max-width:none;margin:0;font:15px/1.85 var(--sans);color:#c3b9ab;}
.books-context .curl {margin:0;align-self:center;border:1px solid var(--line);border-left:2px solid var(--lilac);background:#15100d;padding:25px;font-size:12px;}

/* A physical invitation on one side, a usable access sequence on the other. */
#getting-started {padding:78px 0;min-height:0;background:#130e0a;}
#getting-started .rail {display:block;}
#getting-started .rh {display:flex;justify-content:space-between;align-items:flex-end;max-width:none;margin:0 0 34px;gap:30px;}
#getting-started .note {font-size:13px;}
.access-composition {display:grid;grid-template-columns:.94fr 1.06fr;background:#0f0b08;border:1px solid var(--line);}
.access-art {position:relative;margin:0;min-width:0;overflow:hidden;}
.access-art img {display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;}
.access-composition .steps {display:flex;flex-direction:column;gap:0;padding:0 38px;}
.access-composition .step {display:grid;grid-template-columns:45px 1fr;align-content:center;align-items:start;gap:10px 26px;min-height:185px;padding:30px 0;border-bottom:1px solid var(--line);background:none;}
.access-composition .step:last-child {border-bottom:0;}
.access-composition .step .num {grid-row:1/3;font:500 36px/1.1 var(--serif);margin:0;color:var(--lilac);}
.access-composition .steph {font:500 24px/1.2 var(--sans);letter-spacing:-.03em;margin:0;}
.access-composition .step p {font:15px/1.8 var(--sans);margin:0;max-width:420px;color:#c3b9ab;}
.access-composition .step-icon {display:none;}

/* The luminous mark blends into the footer without a black image tile. */
.footer-top .brand img {mix-blend-mode:screen;background:none;box-shadow:none;border:0;}

/* Native financial data illustrations: precise, legible and independent of image loading. */
.machine-visual {background:#100b08;}
.machine-visual:after {display:none;}
.machine-data-art {padding:14px 8px;transform:translateY(12px);font-family:var(--mono);transition:opacity .42s ease,transform .65s cubic-bezier(.2,.7,.2,1);}
.machine-data-art.is-active {transform:translateY(0);}
.machine-data-art text {letter-spacing:.025em;}
.machine-key-hint {color:var(--muted);}
.machine-in-view .is-active .data-flow {stroke-dasharray:150 440;animation:data-observations 9s linear infinite;}
.machine-in-view .is-active .normalized-cell {animation:data-align .75s both;animation-delay:calc(var(--cell) * 25ms);transform-box:fill-box;transform-origin:center;}
.machine-in-view .is-active .index-contribution {animation:data-index 1s both;}
.machine-in-view .is-active .settlement-line {stroke-dasharray:900;animation:data-window 1.1s both;}
.motion-paused .machine-data-art * {animation:none!important;}
@keyframes data-observations {to {stroke-dashoffset:-590;}}
@keyframes data-align {from {opacity:.15;transform:scaleX(.15);}to {transform:scaleX(1);}}
@keyframes data-index {from {stroke-width:1;}to {stroke-width:12;}}
@keyframes data-window {from {stroke-dashoffset:900;}to {stroke-dashoffset:0;}}
@media(max-width:600px) {
  .machine-data-art {padding:0 8px;}
  .machine-key-hint {display:none;}
  .machine-live #mcExp {grid-column:auto;margin-left:0;font-family:var(--mono);}
}
@media(prefers-reduced-motion:reduce) {
  .machine-data-art * {animation:none!important;}
  .machine-data-art .data-flow {stroke-dasharray:none!important;}
}

@media(min-width:601px) and (max-width:1050px) {
  .rmap {grid-template-columns:repeat(2,minmax(0,1fr));}
  .rmap>.model:nth-child(3) {border-left:0;border-top:1px solid var(--line);}
  .rmap>.model:nth-child(4) {border-top:1px solid var(--line);}
  .books-grid .ledger {grid-template-columns:repeat(2,minmax(0,1fr));}
  .books-grid .ledger>.row:nth-child(3) {border-left:0;border-top:1px solid var(--line);}
  .books-grid .ledger>.row:nth-child(4) {border-top:1px solid var(--line);}
  .books-grid .ledger>.row .v {font-size:28px;}
  .books-context {grid-template-columns:1fr;gap:25px;}
  .access-composition {grid-template-columns:.8fr 1.2fr;}
  .access-composition .steps {padding:0 25px;}
  .access-composition .step {grid-template-columns:32px 1fr;gap:10px 17px;}
  .access-composition .steph {font-size:21px;}
}
@media(max-width:600px) {
  .ticker-group {font-size:10px;gap:26px;padding:17px 13px;min-width:calc(100vw - 44px);}
  .ticker-group>span {gap:10px;}
  .ticker-toggle {flex-basis:44px;}
  #roadmap,#books,#getting-started {padding:38px 0;}
  #roadmap .rh,#books .rh,#getting-started .rh {display:block;margin-bottom:25px;}
  #roadmap .rh .note,#getting-started .note {font-size:13px;line-height:1.8;margin-top:16px;}
  .roadmap-panorama {margin:0 -20px;}
  .roadmap-panorama img {height:auto;min-height:145px;object-fit:cover;}
  .rmap {display:block;}
  .rmap>.model {display:block;border-left:0;border-bottom:1px solid var(--line);padding:0 15px;}
  .rmap .quarter-summary {padding:23px 30px 23px 0;}
  .rmap .quarter-summary:after {right:0;top:22px;}
  .rmap h3 {font-size:25px;}
  .rmap .ct {margin-top:6px;font-size:12px;}
  .rmap .rgt {padding:0 0 25px;}
  .rmap li {font-size:14px;}
  .rmap .foot {border-top:0;font-size:12px;padding:23px 0 0;}
  #bookNote {max-width:none;text-align:left;font-size:12px;margin-top:20px;}
  .books-grid {gap:28px;}
  .books-grid .ledger {display:block;}
  .books-grid .ledger>.row,.books-grid .ledger>.row+.row {flex-direction:row;align-items:center;justify-content:space-between;padding:24px 18px!important;border-left:0;border-bottom:1px solid var(--line);gap:15px;}
  .books-grid .ledger>.row .l {max-width:135px;font-size:12px;}
  .books-grid .ledger>.row .v {font-size:22px;text-align:right;}
  .books-grid .ledger>.row.sum {padding:30px 18px!important;}
  .books-grid .ledger>.row.sum .v {font-size:25px;}
  .books-grid .ledger .checks {grid-template-columns:1fr 1fr;padding:22px 18px;gap:24px 15px;border-top:0;}
  .books-grid .ledger .checks .l,.books-grid .ledger .checks .v {font-size:11px;}
  .books-context {display:flex;flex-direction:column;gap:24px;min-width:0;}
  .books-context .exp {font-size:14px;}
  .books-context .curl {align-self:stretch;padding:18px 15px;font-size:10px;}
  .access-composition {display:flex;flex-direction:column;margin:0 -20px;border-inline:0;}
  .access-art {height:260px;}
  .access-art img {object-position:center 47%;}
  .access-composition .steps {padding:0 20px;}
  .access-composition .mobile-tabs {margin:0;padding:0 12px;border-top:1px solid var(--line);}
  .access-composition .mobile-tabs button {font-size:12px;min-height:53px;}
  .access-composition .step {grid-template-columns:35px 1fr;min-height:200px;gap:12px 20px;padding:29px 0;}
  .access-composition .step .num {font-size:32px;}
  .access-composition .steph {font-size:24px;}
  .access-composition .step p {font-size:14px;}
  .enhanced-mobile .access-composition .step[hidden] {display:none!important;}
}
@media(prefers-reduced-motion:reduce) {
  .ticker-viewport {overflow-x:auto;}
  .ticker-running .lticker-in {animation:none;transform:none;}
  .ticker-group[aria-hidden] {display:none;}
  .ticker-toggle {display:none;}
}
