/* Existing six-panel Industries gallery and its single expansion only.
   Keep scene assets, node coordinates, content and cinematic timing intact. */
.obor-field-ledger .relay-gallery { --ig-gap: clamp(20px, 3vw, 48px); }
.obor-field-ledger .relay-gallery__head { left: var(--ig-gap); width: 26%; top: 88px; }
.obor-field-ledger .relay-gallery__section-no { font-size: 10px; line-height: 1.5; letter-spacing: .12em; margin-bottom: 20px; }
.obor-field-ledger .relay-gallery__eyebrow { font-size: 10px; line-height: 1.5; letter-spacing: .08em; }
.obor-field-ledger .relay-gallery__head h3 { font-size: clamp(29px, 3vw, 64px); line-height: .98; margin-top: 18px; letter-spacing: -.045em; }
.obor-field-ledger .relay-gallery__head > p:not(.relay-gallery__eyebrow) { font-size: clamp(13px, .95vw, 16px); line-height: 1.65; letter-spacing: 0; margin-top: 24px; }
.obor-field-ledger .relay-gallery__standard { font-size: 11px; line-height: 1.5; letter-spacing: .07em; }
.obor-field-ledger .relay-gallery__panels { top: 88px; bottom: 40px; right: var(--ig-gap); gap: 10px; }
.obor-field-ledger .relay-gallery__panel-label { padding: 18px 12px; grid-template-columns: 1fr; gap: 12px; }
.obor-field-ledger .relay-gallery__panel-copy { gap: 8px; }
.obor-field-ledger .relay-gallery__panel-copy small { font-size: 10px; line-height: 1.4; letter-spacing: .05em; }
.obor-field-ledger .relay-gallery__panel-copy b { font-size: clamp(15px, 1.15vw, 22px); line-height: 1.13; letter-spacing: -.015em; overflow-wrap: normal; }
.obor-field-ledger .relay-gallery__panel-copy em,
.obor-field-ledger .relay-gallery__panel-copy u { font-size: 11px; line-height: 1.5; letter-spacing: 0; }
.obor-field-ledger .relay-gallery__panel:hover .relay-gallery__panel-copy em,
.obor-field-ledger .relay-gallery__panel:focus-visible .relay-gallery__panel-copy em,
.obor-field-ledger .relay-gallery__panel:hover .relay-gallery__panel-copy u,
.obor-field-ledger .relay-gallery__panel:focus-visible .relay-gallery__panel-copy u { max-height: 7em; }

/* Natural compact gallery: content determines the header height, not a
   percentage of the viewport. The next card remains visible as a swipe cue. */
@media (max-width: 900px), (prefers-reduced-motion: reduce) {
  .obor-field-ledger .relay-gallery { height: auto; min-height: 0; }
  .obor-field-ledger .relay-gallery__room { position: relative; inset: auto; padding: 72px 0 32px; }
  .obor-field-ledger .relay-gallery__head { position: relative; inset: auto; width: auto; margin: 0 var(--ig-gap) 28px; }
  .obor-field-ledger .relay-gallery__head h3 { font-size: clamp(32px, 10.4vw, 58px); }
  .obor-field-ledger .relay-gallery__head > p:not(.relay-gallery__eyebrow) { max-width: 48ch; font-size: 14px; margin-top: 18px; }
  .obor-field-ledger .relay-gallery__panels { position: relative; inset: auto; width: 100%; height: clamp(320px, 83vw, 440px); padding: 0 var(--ig-gap) 14px; gap: 14px; scroll-padding-inline: var(--ig-gap); scrollbar-width: thin; scrollbar-color: #7595b9 transparent; }
  .obor-field-ledger .relay-gallery__panels::-webkit-scrollbar { display: block; height: 3px; }
  .obor-field-ledger .relay-gallery__panels::-webkit-scrollbar-thumb { background: #7595b9; }
  .obor-field-ledger .relay-gallery__panel { flex-basis: 82%; scroll-snap-align: start; }
  .obor-field-ledger .relay-gallery__panel-label { padding: 20px; }
  .obor-field-ledger .relay-gallery__panel-copy b { font-size: 24px; }
  .obor-field-ledger .relay-gallery__panel-copy em { font-size: 13px; max-height: 5em; }
  .obor-field-ledger .relay-gallery__panel-copy u { font-size: 11px; max-height: 4em; letter-spacing: .04em; }
  .obor-field-ledger .relay-gallery__panel-label > i { display: none; }
}
@media (min-width: 601px) and (max-width: 900px) {
  .obor-field-ledger .relay-gallery__head h3 { font-size: clamp(44px, 6.2vw, 58px); }
  .obor-field-ledger .relay-gallery__head h3 br:first-child { display: none; }
  .obor-field-ledger .relay-gallery__panel { flex-basis: 46%; }
  .obor-field-ledger .relay-gallery__panels { height: clamp(350px, 48vw, 420px); }
}
/* Portrait tablets above the cinematic breakpoint: a 3 x 2 gallery inside
   the original pin, with the title above the cards. */
@media (min-width: 901px) and (max-aspect-ratio: 4/3) {
  .obor-field-ledger .relay-gallery__head { top: 80px; right: var(--ig-gap); width: auto; }
  .obor-field-ledger .relay-gallery__head h3 { font-size: clamp(38px, 4.3vw, 58px); }
  .obor-field-ledger .relay-gallery__head h3 br { display: none; }
  .obor-field-ledger .relay-gallery__head > p:not(.relay-gallery__eyebrow) { max-width: 66ch; margin-top: 14px; }
  .obor-field-ledger .relay-gallery__standard { display: none; }
  .obor-field-ledger .relay-gallery__panels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); left: var(--ig-gap); top: 300px; bottom: 32px; }
  .obor-field-ledger .relay-gallery__panel-copy b { font-size: 22px; }
  .obor-field-ledger .relay-gallery__panel-copy em { max-height: 4em; opacity: 1; font-size: 12px; }
  .obor-field-ledger .relay-gallery__panel-label > i { display: none; }
}
@media (min-width: 681px) and (max-height: 650px) {
  .obor-field-ledger .relay-gallery { min-height: 0; }
  .obor-field-ledger .relay-gallery__room { min-height: 100svh; padding: 64px 24px 24px; display: grid; grid-template-columns: minmax(240px, .85fr) minmax(0, 1.15fr); gap: 28px; align-items: center; }
  .obor-field-ledger .relay-gallery__head { position: relative; inset: auto; width: auto; margin: 0; }
  .obor-field-ledger .relay-gallery__section-no { font-size: 10px; margin-bottom: 12px; }
  .obor-field-ledger .relay-gallery__head h3 { font-size: clamp(29px, 4vw, 42px); margin-top: 12px; }
  .obor-field-ledger .relay-gallery__head h3 br { display: block; }
  .obor-field-ledger .relay-gallery__head > p:not(.relay-gallery__eyebrow) { font-size: 12px; margin-top: 14px; }
  .obor-field-ledger .relay-gallery__standard { display: none; }
  .obor-field-ledger .relay-gallery__panels { position: relative; inset: auto; width: 100%; height: clamp(270px, calc(100svh - 88px), 450px); display: flex; padding: 0 12px 8px 0; overflow-x: auto; overflow-y: hidden; justify-content: flex-start; scroll-snap-type: x mandatory; }
  .obor-field-ledger .relay-gallery__panel { flex: 0 0 86%; min-height: 0; scroll-snap-align: start; }
  .obor-field-ledger .relay-gallery__panel-copy b { font-size: 22px; }
  .obor-field-ledger .relay-gallery__panel-copy em,
  .obor-field-ledger .relay-gallery__panel-copy u { max-height: 4em; opacity: 1; }
}

/* Existing expansion: readable desktop sidebar, stable close target, and a
   real reading flow on compact screens. No duplicated detail markup. */
.obor-field-ledger .relay-gallery__expansion--network { top: 50px; bottom: 0; }
.obor-field-ledger .relay-gallery__solution-bar { height: 64px; }
.obor-field-ledger .relay-gallery__solution-brand { width: 34%; padding-left: var(--ig-gap); }
.obor-field-ledger .relay-gallery__solution-capabilities { width: calc(66% - 110px); }
.obor-field-ledger .relay-gallery__solution-capabilities > span { padding-inline: 12px; gap: 4px 8px; }
.obor-field-ledger .relay-gallery__solution-capabilities b { font-size: 11px; white-space: normal; }
.obor-field-ledger .relay-gallery__solution-capabilities small { font-size: 10px; white-space: normal; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__close { top: 10px; right: 14px; min-height: 44px; padding: 10px 14px; font-size: 11px; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field { top: 92px; left: var(--ig-gap); max-width: 54%; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field strong { font-size: clamp(34px, 3.5vw, 56px); line-height: .98; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field small { font-size: clamp(13px, 1vw, 16px); line-height: 1.55; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence { top: 29%; right: var(--ig-gap); bottom: 110px; width: clamp(280px, 24vw, 390px); padding: 22px; }
.obor-field-ledger .relay-gallery__evidence-kicker { font-size: 13px; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > strong { font-size: clamp(24px, 2vw, 32px); line-height: 1.12; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > p { font-size: 14px; line-height: 1.65; }
.obor-field-ledger .relay-gallery__topology > span,
.obor-field-ledger .relay-gallery__applications > span { font-size: 11px; line-height: 1.5; }
.obor-field-ledger .relay-gallery__topology b { width: 25px; height: 25px; font-size: 12px; }
.obor-field-ledger .relay-gallery__applications li { font-size: 13px; line-height: 1.5; }
.obor-field-ledger .relay-gallery__applications li i { font-size: 15px; }
.obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > small { font-size: 11px; line-height: 1.6; color: #9bafbe; letter-spacing: 0; }
.obor-field-ledger .relay-gallery__scenario-nav { left: var(--ig-gap); right: var(--ig-gap); bottom: 22px; height: 68px; }
.obor-field-ledger .relay-gallery__scenario-nav button { padding: 10px 12px; gap: 8px; }
.obor-field-ledger .relay-gallery__scenario-nav button small { font-size: 10px; }
.obor-field-ledger .relay-gallery__scenario-nav button b { font-size: 12px; line-height: 1.3; white-space: normal; }
.obor-field-ledger .relay-gallery__scenario-nav button > i { font-size: 22px; }

@media (max-width: 900px), (max-aspect-ratio: 4/3), (max-height: 650px) {
  /* Let this existing fixed reading panel extend beyond the closed gallery's
     natural height. Restore the original clipping automatically on close. */
  .obor-field-ledger .relay-gallery.is-expanded { overflow: visible; }
  .obor-field-ledger .lora-portal:has(> .lora-portal__stage > .relay-gallery.is-expanded) { overflow: visible; }
  .obor-field-ledger .system-chain:has(.relay-gallery.is-expanded) { z-index: 100; }
  .obor-field-ledger .relay-gallery__expansion--network { position: fixed; inset: 50px 0 0; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 64px max-content max-content max-content max-content; align-content: start; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; background: #07151f; }
  .obor-field-ledger .relay-gallery__expansion--network::after,
  .obor-field-ledger .relay-gallery__network-shade { display: none; }
  .obor-field-ledger .relay-gallery__solution-bar { position: sticky; inset: auto; top: 0; grid-area: 1 / 1; height: 64px; z-index: 15; }
  .obor-field-ledger .relay-gallery__solution-brand { width: 100%; padding-left: 20px; }
  .obor-field-ledger .relay-gallery__solution-brand img { width: 152px; }
  .obor-field-ledger .relay-gallery__solution-capabilities { display: none; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__close { position: sticky; inset: auto; top: 10px; grid-area: 1 / 1; align-self: start; justify-self: end; margin: 10px 12px 10px 0; z-index: 20; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field { position: relative; inset: auto; grid-area: 2 / 1; max-width: none; margin: 0; padding: 24px 20px; background: #edf3f7; color: #091627; text-shadow: none; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field strong { font-size: clamp(30px, 7.7vw, 48px); }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field small { max-width: 54ch; font-size: 14px; margin-top: 16px; padding-left: 0; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field small::before { display: none; }
  .obor-field-ledger .relay-gallery__expansion--network > img { position: relative; grid-area: 3 / 1; width: 100%; height: auto; aspect-ratio: 1672 / 941; object-fit: contain; object-position: center; filter: saturate(.88) brightness(.92) contrast(1.04); }
  .obor-field-ledger .relay-gallery__network-layer { position: relative; inset: auto; grid-area: 3 / 1; width: 100%; height: 100%; align-self: stretch; }
  .obor-field-ledger .relay-gallery__network-node { width: 24px; height: 24px; }
  .obor-field-ledger .relay-gallery__network-node > em,
  .obor-field-ledger .relay-gallery__network-node > i { display: none; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence { position: relative; inset: auto; grid-area: 4 / 1; width: 100%; min-width: 0; min-height: 0; margin: 0; padding: 26px 20px; border: 0; border-radius: 0; overflow: visible; box-shadow: none; background: #07151f; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > strong { font-size: 28px; }
  .obor-field-ledger .relay-gallery__scenario-nav { position: relative; inset: auto; grid-area: 5 / 1; grid-template-columns: repeat(2, minmax(0, 1fr)); width: auto; height: auto; margin: 0 20px 24px; }
  .obor-field-ledger .relay-gallery__scenario-nav button { min-height: 64px; }
}
@media (min-width: 601px) and (max-width: 900px), (min-width: 901px) and (max-aspect-ratio: 4/3) {
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 28px; }
  .obor-field-ledger .relay-gallery__evidence-kicker,
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > strong,
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > p { grid-column: 1; margin: 0; }
  .obor-field-ledger .relay-gallery__topology { grid-column: 2; grid-row: 1 / 3; margin: 0; }
  .obor-field-ledger .relay-gallery__applications { grid-column: 2; grid-row: 3 / 5; margin: 0; }
  .obor-field-ledger .relay-gallery__scenario-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 681px) and (max-height: 650px) {
  .obor-field-ledger .relay-gallery__expansion--network { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); grid-template-rows: 64px max-content max-content max-content; }
  .obor-field-ledger .relay-gallery__solution-bar,
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__close { grid-area: 1 / 1 / 2 / 3; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field { grid-area: 2 / 1; padding: 18px; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field strong { font-size: 27px; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__field small { font-size: 12px; margin-top: 10px; }
  .obor-field-ledger .relay-gallery__expansion--network > img,
  .obor-field-ledger .relay-gallery__network-layer { grid-area: 3 / 1; align-self: start; }
  .obor-field-ledger .relay-gallery__network-layer { height: auto; aspect-ratio: 1672 / 941; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence { display: block; grid-area: 2 / 2 / 4 / 3; padding: 18px; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > strong { font-size: 24px; margin-top: 12px; }
  .obor-field-ledger .relay-gallery__expansion--network .relay-gallery__evidence > p { font-size: 13px; margin-top: 12px; }
  .obor-field-ledger .relay-gallery__topology,
  .obor-field-ledger .relay-gallery__applications { margin-top: 16px; }
  .obor-field-ledger .relay-gallery__scenario-nav { grid-area: 4 / 1 / 5 / 3; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; }
}
