/* Study Path additions for /resources, /thanks, /privacy, and 404.
   Loaded after study-path.css. No font faces and no inline styles. */

.vh { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.hero-act { margin: var(--s-5) 0 0; }
.hero-plan .lede { max-width: 42rem; }

.cert p.cert-covers { font-size: var(--fs-sm); font-weight: 650; color: var(--ink); margin-bottom: var(--s-2); }
.cert-resources { margin-top: auto; padding-top: var(--s-4); display: flex; flex-direction: column; align-items: stretch; gap: var(--s-2); }
.cert-resources .cert-link,
.cert-resources .cert-soon { margin-top: 0; }
.cert-resources .cert-soon { display: inline-flex; align-items: center; min-height: 44px; }
.cert-resources .btn { width: 100%; }

.plan-sec { background: var(--surface-2); border-block: 1px solid var(--line); }
.plan-sec .sec-head { max-width: 46rem; }
.kit-note { margin: var(--s-5) 0 0; max-width: 46rem; }
.plan-actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-3); margin-top: var(--s-5); }
.plan-actions .btn { width: 100%; }
@media (min-width: 600px) {
  .plan-actions { flex-direction: row; flex-wrap: wrap; align-items: center; }
  .plan-actions .btn { width: auto; }
}

.res-status { margin: var(--s-2) 0 0; font-size: var(--fs-sm); color: var(--ink); }
.res-status:empty { display: none; }
.res-status:not(:empty) { background: var(--opt-checked); border: 1px solid var(--link); border-radius: 10px; padding: .6rem .75rem; font-weight: 600; }
.res-status:not(:empty)::before { content: "✓" / ""; color: var(--link); font-weight: 800; margin-right: .4rem; }
.plan-sec .res-status:not(:empty) { max-width: 46rem; }
.btn[aria-disabled="true"] { background: var(--surface); color: var(--link); border-color: var(--link); cursor: default; }

.known-msg { background: var(--form-bg); border: 1px solid var(--form-line); border-radius: 20px; padding: var(--s-6); box-shadow: var(--form-shadow); }
.known-t { font: 700 var(--fs-h3)/1.3 var(--f-display); margin: 0 0 var(--s-4); color: var(--ink); }

.text-col { max-width: 46rem; }
.simple .text-col { margin-inline: auto; width: min(100% - 2.5rem, 46rem); }
.simple h1 { margin-bottom: var(--s-3); }
.next-step { margin-top: var(--s-6); padding: var(--s-5); border: 1px solid var(--card-line); border-radius: 16px; background: var(--surface); display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-2); }
.next-step .kicker { margin-bottom: 0; }
.next-step .cert-link { margin-top: 0; }
.rel-3 { margin-top: var(--s-6); }
@media (min-width: 760px) { .rel.rel-3 { grid-template-columns: repeat(3, 1fr); } }

.plan-signup-grid { display: grid; gap: var(--s-6); align-items: start; }
.ps-copy { max-width: 40rem; }
@media (min-width: 900px) {
  .plan-signup-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: var(--s-8); }
}

.page-thanks .menu { margin-left: auto; }
.page-privacy .text-col { max-width: 70ch; font-size: var(--fs-read); line-height: 1.6; }
.page-privacy .text-col a { text-decoration: underline; }
.page-privacy .text-col h1 { margin-bottom: var(--s-3); }
.page-privacy .text-col li { margin: 0; }

@media (max-width: 600px) {
  .simple .text-col { width: calc(100% - 2rem); }
  .known-msg { padding: var(--s-5); border-radius: 16px; }
}
