/* Scene 12 overrides. Base styles live in index.html; rules here win. */
#scene-12 .state-layer { position: absolute; inset: 0; }
#scene-12 .s12-cover, #scene-12 .s12-proof { position: relative; width: 100%; height: 100%; overflow: hidden; }
#scene-12 .s12-bg { position: absolute; inset: 0; z-index: 0; }
#scene-12 .s12-bg img { width: 100%; height: 100%; object-fit: cover; object-position: 58% 42%; display: block; }
#scene-12 .s12-shade {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(180deg, rgba(7,9,14,0.55) 0%, rgba(7,9,14,0.18) 40%, rgba(7,9,14,0.62) 100%);
}
#scene-12 .s12-cover-copy {
  position: relative; z-index: 2; height: 100%;
  display: flex; flex-direction: column; justify-content: flex-end;
  padding: 0 96px 84px; max-width: 1180px;
}
#scene-12 .s12-cover-copy .kicker { margin-bottom: 14px; }
#scene-12 .s12-cover-copy .headline { font-size: 68px; line-height: 1.06; margin: 0; }
#scene-12 .s12-proof { display: grid; grid-template-columns: 37% 63%; background: var(--bg); }
#scene-12 .s12-rail { display: flex; flex-direction: column; height: 100%; min-height: 0; background: #05070b; }
#scene-12 .s12-main { position: relative; flex: 1 1 64%; min-height: 0; margin: 0; overflow: hidden; }
#scene-12 .s12-main img { width: 100%; height: 100%; object-fit: cover; object-position: 58% 42%; display: block; }
#scene-12 .s12-main::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to right, transparent 62%, rgba(7,9,14,0.45) 100%);
}
#scene-12 .s12-sub { position: relative; flex: 0 0 36%; min-height: 0; margin: 0; overflow: hidden; border-top: 1px solid rgba(244,240,232,0.14); }
#scene-12 .s12-sub img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; display: block; }
#scene-12 .s12-copy {
  padding: 44px 52px; display: flex; flex-direction: column; justify-content: center;
  min-height: 0; border-left: 1px solid rgba(244,240,232,0.14);
}
#scene-12 .s12-copy .kicker {
  font-family: var(--mono); font-size: 13px; letter-spacing: 0.14em;
  color: var(--muted); margin-bottom: 8px;
}
#scene-12 .s12-copy .headline { font-family: var(--serif); font-weight: 400; font-size: 40px; line-height: 1.06; margin-bottom: 10px; }
#scene-12 .s12-copy .dek { font-size: 16px; line-height: 1.45; color: var(--muted); margin-bottom: 18px; max-width: 60ch; }
#scene-12 .s12-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
#scene-12 .s12-card { background: var(--panel-hi); border: 1px solid rgba(244,240,232,0.14); padding: 13px 16px; }
#scene-12 .s12-card .tag { font-family: var(--mono); font-size: 12.5px; color: var(--gold); margin-bottom: 4px; }
#scene-12 .s12-card h4 { font-family: var(--serif); font-size: 18px; font-weight: 400; margin-bottom: 5px; line-height: 1.2; }
#scene-12 .s12-card p { font-size: 13.5px; line-height: 1.4; color: var(--muted); }
