/* Shared by the existing coach landing pages and the guide library. */
.cr-section { max-width:1180px; margin:0 auto; padding:40px 24px; scroll-margin-top:90px; }
.cr-section h2 { font-size:clamp(24px,4vw,36px); line-height:1.15; margin:8px 0 16px; }
.cr-section p { color:#cbd5e1; line-height:1.65; }
.cr-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0; }
.cr-card { display:block; padding:24px; background:#14243b; border:1px solid #334155; border-radius:16px; color:#f8fafc; text-decoration:none; }
.cr-card strong { display:block; font-size:20px; margin:10px 0; }
.cr-card small { color:#cbd5e1; line-height:1.55; display:block; }
.cr-card:hover { border-color:#7dd3fc; background:#1b304b; }
.cr-kicker { color:#7dd3fc; text-transform:uppercase; letter-spacing:.12em; font-size:12px; font-weight:700; }
.cr-links { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; margin:18px 0; }
.cr-links a { color:#7dd3fc; padding:12px 0; }
.cr-controls { margin:24px 0; padding:20px; border:1px solid #334155; border-radius:16px; background:#14243b; text-align:left; }
.cr-controls label { display:block; margin-bottom:8px; font-weight:700; }
.cr-filters { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.cr-filters button { border:1px solid #64748b; background:transparent; color:#e2e8f0; padding:10px 16px; border-radius:99px; font:inherit; min-height:44px; cursor:pointer; }
.cr-filters button[aria-pressed="true"] { background:#7dd3fc; color:#0f172a; border-color:#7dd3fc; }
.cr-search, .cr-form input, .cr-form textarea, .cr-form select { box-sizing:border-box; width:100%; border:1px solid #64748b; border-radius:8px; background:#0f172a; color:#f8fafc; padding:12px; font:inherit; min-height:44px; }
.cr-search::placeholder, .cr-form input::placeholder { color:#94a3b8; }
.cr-form { max-width:680px; margin:24px 0; text-align:left; }
.cr-form label { display:block; margin:16px 0 6px; color:#f8fafc; font-weight:600; }
.cr-form .cr-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.cr-form .cr-consent { display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.5; font-weight:400; }
.cr-consent input { width:20px; height:20px; min-height:20px; flex:none; margin-top:2px; }
.cr-form .cr-honey { display:none; }
.cr-form .cr-note { font-size:13px; }
.cr-form button { margin-top:16px; cursor:pointer; }
.cr-form button:disabled { opacity:.55; cursor:wait; }
.cr-status { min-height:24px; font-size:15px; }
.cr-status[data-state="error"] { color:#fda4af; }
.cr-status[data-state="success"] { color:#86efac; }
.cr-faq details { border-bottom:1px solid #334155; padding:16px 0; text-align:left; }
.cr-faq summary { cursor:pointer; color:#f8fafc; font-weight:600; min-height:30px; }
.cr-chapters { display:grid; gap:8px; padding:0; list-style:none; }
.cr-chapters button { background:#14243b; border:1px solid #475569; border-radius:8px; padding:12px; min-height:44px; color:#e2e8f0; font:inherit; text-align:left; cursor:pointer; width:100%; }
.cr-section a:focus-visible, .cr-section button:focus-visible, .cr-section input:focus-visible, .cr-section textarea:focus-visible, .cr-section select:focus-visible, .cr-form :focus-visible { outline:3px solid #7dd3fc; outline-offset:4px; }
.gv-card[hidden], .gv-sec[hidden], .cr-section [hidden] { display:none!important; }
.gv-card:target { outline:2px solid #7dd3fc; outline-offset:12px; border-radius:8px; }
@media(max-width:700px) { .cr-grid { grid-template-columns:1fr; } .cr-form .cr-row { grid-template-columns:1fr; gap:0; } .cr-section { padding:28px 16px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } }

.cr-guide-steps { margin:16px 0; font-size:14px; line-height:1.65; }
.cr-guide-steps summary { cursor:pointer; font-weight:750; }
.cr-guide-steps ol { padding-left:22px; }
.cr-guide-steps li { margin:8px 0; }
