/* src/styles/reveal-fix.css */
.rv.in,
.rv.active {
  opacity: 1;
  transform: translateY(0);
}

/* Keep the opened mobile navigation attached to the sticky header. */
.mobilepanel {
  position: sticky;
  top: 76px;
  z-index: 39;
  max-height: calc(100vh - 76px);
  overflow-y: auto;
}

@media (min-width: 1080px) {
  .mobilepanel {
    position: static;
    max-height: none;
    overflow: visible;
  }
}

/* src/styles/field-plate.css */
/* Dimensional field plate - component styles.
 *
 * The original rules were authored as descendant selectors under
 * [data-od-id="hero"], so a second instance of the plate placed outside the
 * hero (currently in the managed-market section) matched almost none of them
 * and rendered as a raw full-bleed image with run-together labels.
 *
 * These are scoped to the component root (figure.hero-field) so the plate
 * styles correctly wherever it is placed. Specificity is 0,2,1 vs the original
 * 0,2,0 and this sheet loads after style.css, so it wins - but the declarations
 * are identical to the hero-scoped originals, so the hero render is unchanged.
 *
 * Kept in a stylesheet code asset rather than the rule store on purpose: bare
 * `.a .b` selectors are treated as reusable-class rules there and are dropped
 * unless the class is assigned to a node, and equal-specificity rules silently
 * no-op on merge.
 */

figure.hero-field .field-heading {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  color: var(--muted);
  border-top: 1px solid var(--border-control);
  padding-top: var(--space-3);
}
figure.hero-field .field-heading span:last-child { text-align: right; }

figure.hero-field .field-stage {
  position: relative;
  perspective: 1100px;
  padding: var(--space-7) var(--space-7) var(--space-8) var(--space-5);
}

figure.hero-field .field-tilt {
  position: relative;
  transform-style: preserve-3d;
  transition: transform var(--motion-fast) var(--ease-standard);
}

figure.hero-field .field-float {
  position: relative;
  transform-style: preserve-3d;
  transform: rotateX(8deg) rotateY(-12deg) rotateZ(2deg);
}

figure.hero-field .field-plane {
  position: absolute;
  inset: 0px;
  pointer-events: none;
  border: 1px solid var(--border-control);
  background: var(--surface);
  transform: translate3d(18px, 16px, -36px);
}

figure.hero-field .field-plane--grid {
  inset: -8px;
  transform: translate3d(32px, 28px, -72px);
  background:
    repeating-linear-gradient(0deg, transparent 0 23px, var(--border) 23px 24px),
    repeating-linear-gradient(90deg, transparent 0 23px, var(--border) 23px 24px),
    var(--bg);
}

figure.hero-field .field-image {
  position: relative;
  padding: var(--space-3);
  border: 1px solid var(--border-control);
  background: var(--surface);
  transform: translateZ(0px);
}
figure.hero-field .field-image img { width: 100%; height: auto; }

figure.hero-field .field-image::before,
figure.hero-field .field-image::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 16px;
  height: 16px;
  border-color: var(--color-ochre);
  pointer-events: none;
}
figure.hero-field .field-image::before {
  top: 4px;
  left: 4px;
  border-top: 2px solid var(--color-ochre);
  border-left: 2px solid var(--color-ochre);
}
figure.hero-field .field-image::after {
  bottom: 4px;
  right: 4px;
  border-bottom: 2px solid var(--color-ochre);
  border-right: 2px solid var(--color-ochre);
}

figure.hero-field .field-scan {
  position: absolute;
  top: var(--space-3);
  bottom: var(--space-3);
  left: var(--space-3);
  width: 1px;
  background: var(--color-paper-white);
  opacity: 0;
  pointer-events: none;
}

figure.hero-field .field-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-3);
  border-top: 1px solid var(--border-control);
  padding-top: var(--space-3);
}
figure.hero-field .field-footer > span { color: var(--muted); }

figure.hero-field .field-motion {
  min-height: 44px;
  padding: var(--space-2) var(--space-3);
  background: transparent;
  color: var(--fg);
  border: 1px solid var(--border-control);
  border-radius: var(--radius-control);
  font: 500 .75rem/1.3 var(--font-mono);
  cursor: pointer;
  transition:
    background-color var(--motion-fast) var(--ease-standard),
    color var(--motion-fast) var(--ease-standard);
}
figure.hero-field .field-motion:hover { background: var(--action-bg); color: var(--action-fg); }
figure.hero-field .field-motion:active { background: var(--action-hover-bg); color: var(--action-hover-fg); }
figure.hero-field .field-motion[hidden] { display: none; }
