/* Full-card studio scenes, with live wording on a protected reading area. */
.topic-choice {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:132px;
  padding:18px 16px;
  background:linear-gradient(110deg,#232928,#1a2020);
  border-color:#ffffff14;
}
.topic-choice::after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,#222827fa 0%,#222827eb 36%,#22282775 60%,#22282700 84%);
}
.topic-choice[aria-selected="true"]::after {
  background:linear-gradient(90deg,#363a32fa 0%,#363a32e8 36%,#363a3270 60%,#363a3200 84%);
}
.topic-name { min-width:0; width:60%; }
.topic-mini {
  position:absolute;
  inset:0 6px 0 30%;
  z-index:-2;
  pointer-events:none;
}
.topic-mini img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:right center;
  filter:drop-shadow(0 6px 5px #0008);
  transition:transform .3s ease;
}
.topic-choice[data-topic="family"] .topic-mini { inset:-2px 4px -2px 28%; }
.topic-choice[data-topic="police-conduct"] .topic-mini { inset:0 0 0 38%; }
.topic-choice[data-topic="police-conduct"] .topic-mini img { object-fit:cover; object-position:center 25%; filter:none; mask-image:linear-gradient(90deg,transparent,#000 34%,#000); }
.topic-choice:is(:hover,:focus-visible,[aria-selected="true"]) .topic-mini img { transform:scale(1.035); }
.topic-choice .topic-arrow { position:relative; margin-left:auto; align-self:flex-end; padding-bottom:2px; color:#edc39c; }

/* The envelope lives in the left studio area; the form stays on a clear surface. */
.waitlist { align-items:center; }
.waitlist .waitlist-form { align-self:center; }
.waitlist-copy { position:relative; isolation:isolate; padding-bottom:306px; }
.waitlist-art {
  display:block;
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:auto -24px -12px -24px;
  height:290px;
  overflow:hidden;
}
.waitlist-art img {
  display:block;
  position:absolute;
  left:50%;
  width:auto;
  max-width:none;
  height:100%;
  transform:translateX(-50%);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);
  mask-composite:intersect;
}
@media(min-width:721px) and (max-width:1000px) {
  .topic-choice { gap:8px; padding:14px 12px; min-height:142px; }
  .topic-name { width:58%; }
  .topic-mini { inset:0 4px 0 26%; }
  .topic-choice[data-topic="family"] .topic-mini { inset:0 0 0 26%; }
  .topic-choice[data-topic="police-conduct"] .topic-mini { inset:0 0 0 26%; }
}
@media(max-width:720px) {
  .topic-choice { gap:12px; min-height:124px; padding:16px; }
  .topic-name { width:61%; }
  .waitlist-copy { padding-bottom:280px; }
  .waitlist-art { height:258px; inset:auto -12px -10px; }
}
@media(prefers-reduced-motion:reduce) {
  .topic-mini img { transition:none; }
  .topic-choice:is(:hover,:focus-visible,[aria-selected="true"]) .topic-mini img { transform:none; }
}

/* Remove the former label column while keeping the story and its heading aligned. */
.idea-grid { display:block; }
.idea-grid>div { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); gap:64px; align-items:start; }
.idea-grid .idea-copy { display:grid; grid-template-columns:1fr; gap:18px; margin-top:0; }
@media(max-width:1000px) and (min-width:721px) {
  .idea-grid>div { gap:36px; }
}
@media(max-width:720px) {
  .idea-grid>div { grid-template-columns:1fr; gap:24px; }
}

/* Rendered paper movement; the real signup stays outside the animation. */
.envelope-sequence { position:absolute; inset:0 auto; left:50%; width:auto; height:100%; aspect-ratio:16/9; transform:translateX(-50%); pointer-events:none; mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent); mask-composite:intersect; }
.waitlist-art.sequence-ready img { opacity:0; }
@media(prefers-reduced-motion:reduce) {
  .envelope-sequence { display:none; }
  .waitlist-art.sequence-ready img { opacity:1; }
}
@media(max-width:360px) {
  .waitlist-copy { padding-bottom:252px; }
  .waitlist-art { height:230px; }
}

/* Keep the useful external court guide after removing the editorial status notes. */
.resource-note { justify-content:flex-end; }
.resource-note>a { padding-top:0; }
