/* Book a call page (book.html only). Reuses .field/.input/.choice/.err/.hp from styles.css. */
.ct-hero{padding-bottom:var(--sect)}
.ct-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,88px);align-items:start}
.ct-intro h1{max-width:12ch}
.ct-points{margin-top:36px;border-top:1px solid var(--hair)}
.ct-points li{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--hair)}
.ct-points b{font-weight:600}
.ct-points span{color:var(--muted);font-size:.95rem}
.ct-points a{color:var(--cyan)}
.ct-form{padding:clamp(22px,3.4vw,40px)}
.ct-topics{border:0;padding:0;margin:0 0 8px;min-width:0}
.ct-topics legend{font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;padding:0}
.ct-form .choice span{font-size:1.05rem;padding:15px 18px}
.ct-form .field label small{font-weight:500;letter-spacing:.04em;text-transform:none;color:var(--faint)}
.ct-form textarea.input{resize:vertical;min-height:110px;line-height:1.5}
.ct-form .two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.ct-submit{width:100%;margin-top:4px}
.ct-submit:disabled{opacity:.7;cursor:progress}
.ct-note{margin-top:14px;color:var(--faint)}
.ct-done{outline:none}
.ct-done-title{font-size:clamp(1.95rem,3.8vw,3.4rem);font-weight:600;letter-spacing:-.035em;line-height:1.05;color:var(--ink);margin:0 0 16px;max-width:none}
@media (max-width:899px){.ct-grid{grid-template-columns:1fr}.ct-intro h1{max-width:none}}
@media (max-width:560px){.ct-form .two{grid-template-columns:1fr}}
.ct-seats{display:block;margin-top:12px}
.ct-seats .mini-seats span{font-size:11px}
#cohort h2 + .lede{margin-top:20px}
/* phones: heading, then the form, then the info list */
@media (max-width:899px){.ct-intro{display:contents}.ct-form{order:2}.ct-points{order:3;margin-top:8px}}
