/* The approved concept photos, captions and links are independent DOM content. */
.selected-stage { position: relative; }
.selected:focus { outline: none; }
.selected .concept-card { overflow: visible; background: transparent; transform: none; opacity: 1; }
.selected .concept-card::after { display: none; }
.selected .concept-card::before { content: ""; position: absolute; inset: 0; border: 1px solid #e5e1da; background: var(--ivory); }
.concept-link { display: block; position: absolute; inset: 0; color: #fff; text-decoration: none; }
.concept-visual { position: absolute; inset: 0; overflow: hidden; background: #47483f; }
.concept-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.concept-visual::after { content: ""; position: absolute; inset: 38% 0 0; background: linear-gradient(transparent, #0000001f 38%, #000000c2); }
.concept-caption { pointer-events: none; }
.concept-action { position: absolute; z-index: 3; right: 6%; bottom: 7%; display: grid; place-items: center; width: clamp(27px, 2.65vw, 44px); aspect-ratio: 1; border: 1px solid #ffffffe0; border-radius: 50%; font-size: clamp(18px, 1.65vw, 27px); opacity: 0; }
.concept-link:hover .concept-action, .concept-link:focus-visible .concept-action { opacity: 1; }
.concept-link:hover::after, .concept-link:focus-visible::after { content: ""; position: absolute; inset: auto 0 -2px; border-bottom: 3px solid #194bff; }
.concept-link:focus-visible { outline: 3px solid #174cff; outline-offset: 5px; }
.concept-card.image-unavailable .concept-visual img { visibility: hidden; }
.selected-ribbon, .mobile-concept-ribbon { display: none; pointer-events: none; }

/* Work owns only its own reveal. The accepted hero's original variables stay intact. */
.selected.work-ready { z-index: auto; background: transparent; border-top-color: transparent; }
.selected.work-ready .selected-stage { z-index: 3; }
.selected.work-ready .concept-card { transform: none; opacity: 1; }
.selected.work-ready .concept-card::before { background: transparent; }
.selected.work-ready .concept-grid { background: transparent; z-index: 1; }
.selected.work-ready .concept-visual { clip-path: inset(0 0 0 var(--concept-cover, 0%)); }
.selected.work-ready .concept-caption { visibility: var(--caption-ready, hidden); }
.selected.work-ready .selected-ribbon { display: block; position: absolute; inset: 0 auto auto 0; width: 100%; overflow: visible; z-index: 2; }
.selected.work-ready .eyebrow { z-index: 3; }
.selected.work-ready:focus-within .concept-visual { clip-path: none; }
.selected.work-ready:focus-within .concept-caption { visibility: visible; }
.selected.work-ready:focus-within .selected-ribbon,
.selected.work-ready:focus-within .mobile-concept-ribbon { visibility: hidden; }
.selected.work-ready .concept-link:focus-visible { z-index: 4; }
.selected.work-ready .concept-action { opacity: 0; }
.selected.work-ready .concept-card[data-reveal="1.0000"] .concept-link:hover .concept-action,
.selected.work-ready:focus-within .concept-link:hover .concept-action,
.selected.work-ready .concept-link:focus-visible .concept-action { opacity: 1; }
.unified-work-ribbon { display: none; position: absolute; z-index: 2; overflow: visible; pointer-events: none; opacity: 1; }
.selected-arrival-frames { display: none; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; fill: none; stroke: #e5e1da; stroke-width: 1; }
.work-surface-active .selected-arrival-frames, .work-surface-active .unified-work-ribbon { display: block; }
.work-surface-active .concept-card::before { border-color: transparent; }
.work-surface-active .ribbon-front { visibility: hidden; }

@media (min-width: 681px) {
  .selected.work-reserved::after { content: ""; display: block; height: 105svh; }
  .selected.work-reserved .selected-stage { position: sticky; top: clamp(24px, 8svh, 84px); }
  .selected.work-ready .selected-ribbon { display: block; }
}
@media (max-width: 680px) {
  /* Stacked cards retain the existing vertical, ordinary-flow reveal. */
  .selected.work-ready .concept-visual { clip-path: inset(var(--concept-cover, 0%) 0 0); }
  .selected.work-ready .selected-ribbon { display: none; }
  .selected.work-ready .mobile-concept-ribbon { display: block; position: absolute; left: -7%; top: 0; width: 114%; height: 90px; overflow: visible; z-index: 2; }
  .concept-action { width: 30px; font-size: 20px; }
  .concept-link:focus-visible { outline-offset: 3px; }
}
@media (prefers-reduced-motion: reduce) {
  .selected.work-reserved::after { display: none; height: 0; }
  .selected.work-reserved { padding-bottom: 3.1vw; }
  .selected.work-reserved .selected-stage { position: relative; top: auto; }
  .selected .concept-visual { clip-path: none !important; }
  .selected-ribbon, .mobile-concept-ribbon { display: none !important; }
  .unified-work-ribbon { display: none !important; }
  .ribbon-front { visibility: visible !important; }
}
@media (prefers-reduced-motion: reduce) and (max-width: 680px) {
  .selected.work-reserved { padding-bottom: 32px; }
}
