/* Native disclosure controls: the complete answer stays in server-rendered HTML. */
.detail-prep-note { max-width: 30em; margin: 20px 0 16px; color: var(--muted); font-size: 16px; line-height: 1.8; }
.detail-prep-heading .text-link { max-width: 100%; font-size: 15px; line-height: 1.7; }
.detail-questions { min-width: 0; border-top: 1px solid var(--line); }
.detail-questions details { border-bottom: 1px solid var(--line); }
.detail-questions summary { position: relative; display: block; min-height: 48px; padding: 22px 30px 22px 0; color: var(--ink); font-size: 18px; font-weight: 600; line-height: 1.6; cursor: pointer; list-style: none; }
.detail-questions summary::-webkit-details-marker { display: none; }
.detail-questions summary::after { content: ''; position: absolute; right: 5px; top: 29px; width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.detail-questions details[open] summary::after { top: 34px; transform: rotate(225deg); }
.detail-questions summary:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.detail-questions p { margin: 0; padding: 0 24px 24px 0; color: var(--muted); font-size: 16px; line-height: 1.85; word-break: keep-all; overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .detail-prep-note { margin-top: 16px; }
  .detail-questions summary { padding-block: 18px; font-size: 16px; }
  .detail-questions summary::after { top: 24px; }
  .detail-questions details[open] summary::after { top: 29px; }
  .detail-questions p { padding-right: 0; font-size: 15px; }
}
