/* Get involved — participation finder, Purpose Club starter, enquiry */

/* Hero */
.ct-hero { min-height: min(78vh, 820px); display: flex; align-items: flex-end; }
.ct-hero > .container { width: 100%; }
.ct-hero canvas.rays { opacity: .8; }
.ct-jump { align-self: end; display: grid; gap: 1rem; }
.ct-jump ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line-on-dark); }
.ct-jump li { border-bottom: 1px solid var(--line-on-dark); }
.ct-jump a { display: grid; grid-template-columns: 2.25rem minmax(0, 1fr) auto; gap: .75rem; align-items: center; min-height: 64px; padding: .7rem 0; text-decoration: none; }
.ct-jump a .mono { color: var(--gold); }
.ct-jump a strong { display: block; font-weight: 650; }
.ct-jump a span span { display: block; font-size: .8125rem; color: var(--mist); }
.ct-jump a .icon-arrow { color: var(--gold); transition: transform var(--dur-2) var(--ease-out); }
.ct-jump a:hover .icon-arrow { transform: translateY(3px); }
.ct-jump .btn { justify-self: start; }

/* Finder */
.ct-finder__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.ct-quiz { display: grid; gap: 1.75rem; position: sticky; top: calc(var(--header-h) + 1.5rem); }
.ct-q { border: 0; margin: 0; padding: 0; min-width: 0; }
.ct-q legend { display: flex; align-items: baseline; gap: .75rem; margin-bottom: .75rem; padding: 0; font-weight: 700; font-size: 1rem; }
.ct-q legend .mono { color: var(--gold-ink); font-weight: 500; }
.ct-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem; }
.ct-options--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ct-options .choice { padding: .7rem .8rem; font-size: .875rem; min-height: 48px; align-items: center; }
.ct-options .choice input { margin-top: 0; }
.ct-quiz__foot { display: flex; align-items: center; gap: 1rem; padding-top: .5rem; border-top: 1px solid var(--line-on-light); }

.ct-results { min-width: 0; }
.ct-results__head { display: grid; gap: .25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line-on-light); }
.ct-paths { list-style: none; margin: 0; padding: 0; display: grid; }
.ct-path { display: grid; gap: .6rem; padding: 1.5rem 0; border-bottom: 1px solid var(--line-on-light); transition: background-color var(--dur-2) var(--ease-out); }
.ct-path__top { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.ct-path__rank:empty { display: none; }
.ct-path__rank { padding: .25rem .55rem; background: var(--navy-900); color: var(--gold-soft); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; border-radius: 2px; }
.ct-path__title { max-width: 30ch; }
.ct-path__what { color: var(--slate); max-width: 60ch; }
.ct-path__why { font-size: .875rem; color: var(--ink); padding-left: .8rem; border-left: 2px solid var(--gold-deep); max-width: 60ch; }
.ct-path__caveat { font-size: .8125rem; color: var(--slate); max-width: 60ch; }
.ct-path__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin-top: .25rem; }
.ct-linkbtn { background: none; border: 0; padding: .4rem 0; min-height: 44px; font: inherit; font-size: .875rem; font-weight: 650; color: var(--gold-ink); text-decoration: underline; text-underline-offset: .22em; cursor: pointer; }
.on-dark .ct-linkbtn, .section--dark .ct-linkbtn { color: var(--gold-soft); }
.ct-path.is-top { padding-inline: 1.25rem; margin-top: .75rem; border: 1px solid var(--line-on-light); background: var(--white); }
.ct-path.is-top:first-child { border-color: var(--gold-deep); box-shadow: var(--shadow-lift); }
.ct-path.is-rest { gap: .35rem; padding-block: 1rem; }
.ct-path.is-rest .ct-path__title { font-size: 1.25rem; }
.ct-path.is-rest .ct-path__what { font-size: .875rem; }
.ct-path.is-rest .ct-path__actions .btn--outline { display: none; }
.ct-path.is-rest .ct-path__actions .btn:not(.btn--outline) { --btn-bg: transparent; --btn-fg: var(--ink); --btn-bd: var(--line-on-light-strong); --btn-hover: var(--ivory); min-height: 40px; }

@media (max-width: 960px) {
  .ct-finder__grid { grid-template-columns: 1fr; }
  .ct-quiz { position: static; }
}
@media (max-width: 520px) {
  .ct-options, .ct-options--3 { grid-template-columns: 1fr; }
  .ct-path.is-top { padding-inline: 1rem; }
}

/* Purpose Club starter */
.ct-school__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.ct-ready { position: sticky; top: calc(var(--header-h) + 1.5rem); display: grid; gap: 1.25rem; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--line-on-dark); background: rgba(246, 241, 231, .03); }
.ct-ready__head { display: grid; gap: .5rem; }
.ct-ready__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .1rem; border-top: 1px solid var(--line-on-dark); }
.ct-ready__list li { padding-block: .7rem; border-bottom: 1px solid var(--line-on-dark); }
.ct-ready__list .check { font-size: .9rem; }
.ct-ready__list strong { display: block; font-weight: 650; }
.ct-ready__note { display: block; font-size: .8125rem; color: var(--mist); margin-top: .1rem; }
.ct-ready__meter { height: 3px; background: var(--line-on-dark); overflow: hidden; }
.ct-ready__meter span { display: block; height: 100%; width: 0; background: var(--gold); transition: width var(--dur-3) var(--ease-out); }
.ct-ready__status { font-size: .9375rem; color: var(--ivory); }
.ct-school__form .status-note { margin-bottom: .25rem; }
.ct-school__form .status-note .icon { color: var(--gold); }
@media (max-width: 960px) {
  .ct-school__grid { grid-template-columns: 1fr; }
  .ct-ready { position: static; }
}

/* Enquiry */
.ct-enquiry__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.ct-establish { list-style: none; margin: 1.5rem 0 0; padding: 0; border-top: 1px solid var(--line-on-light); }
.ct-establish li { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: .5rem; padding-block: .7rem; border-bottom: 1px solid var(--line-on-light); font-size: .9375rem; }
.ct-establish .mono { color: var(--gold-ink); padding-top: .15rem; }
.ct-contact dl { margin: .75rem 0 0; display: grid; gap: .75rem; }
.ct-contact dl > div { display: grid; grid-template-columns: 9rem minmax(0, 1fr); gap: 1rem; align-items: baseline; }
.ct-contact dt { font-family: var(--font-mono); font-size: var(--fs-micro); letter-spacing: .06em; text-transform: uppercase; color: var(--slate); }
.ct-contact dd { margin: 0; font-size: .9375rem; }
.ct-contact dd a { color: var(--gold-ink); }
.ct-enquiry__form { padding: clamp(1.25rem, 3vw, 2.5rem); background: var(--paper); border: 1px solid var(--line-on-light); }
.ct-enquiry__form .status-note { margin-bottom: 1.25rem; }
@media (max-width: 960px) { .ct-enquiry__grid { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .ct-contact dl > div { grid-template-columns: 1fr; gap: .2rem; } }
