/* Direction A: compare prices first, then expand the exact track copy.
   Shared .phero, .card, .btn and .formcard provide the site's design. */
body.courses-tracks{background:var(--paper);color:var(--ink);color-scheme:light}
.courses-tracks [hidden]{display:none!important}
.courses-tracks .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.courses-tracks :is(article,section){scroll-margin-top:105px}
.courses-tracks .tracks-library{padding:36px 0 42px}
.courses-tracks .tracks-grid{display:grid;gap:22px;grid-template-columns:minmax(0,1fr);align-items:start}
.courses-tracks .track-card{min-width:0;display:flex;flex-direction:column;align-items:stretch}
.courses-tracks .track-card:hover{transform:none}
.courses-tracks .track-kicker{color:var(--gold-deep);font-size:.85rem;font-weight:600;margin-bottom:8px}
.courses-tracks .track-card h2{font-size:1.5rem;line-height:1.5;margin-bottom:14px}
.courses-tracks .track-prices{width:100%;border-collapse:collapse;margin:0 0 24px;table-layout:fixed;font-size:.9rem}
.courses-tracks .track-prices caption{text-align:start;color:var(--blue-ink);font-weight:600;padding:0 0 10px}
.courses-tracks .track-prices th,.courses-tracks .track-prices td{text-align:center;border-bottom:1px solid var(--line);padding:14px 4px;vertical-align:middle;overflow-wrap:break-word}
.courses-tracks .track-prices thead{font-size:.8rem;color:var(--ink-2);background:var(--paper)}
.courses-tracks .track-prices thead tr{height:76px}
.courses-tracks .track-prices tbody th{text-align:start;font-weight:500}
.courses-tracks .track-prices td{font-size:1.08rem;font-weight:600;color:var(--blue-ink)}
.courses-tracks .track-card>.btn{justify-content:center;min-height:50px}
/* The site's ink-blue button variant keeps white text above 4.5:1. */
.courses-tracks :is(.btn-primary,.submit,.navcta){background:var(--blue-ink)}
.courses-tracks .track-details{margin-top:18px;border-top:1px solid var(--line)}
.courses-tracks .track-details>summary{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:52px;cursor:pointer;list-style:none;color:var(--blue-ink);font-weight:600}
.courses-tracks .track-details>summary::-webkit-details-marker{display:none}
.courses-tracks .track-details>summary::after{content:'+';font-size:1.5rem}
.courses-tracks .track-details[open]>summary::after{content:'−'}
.courses-tracks .track-copy{padding-top:12px}
.courses-tracks .track-copy p{margin-bottom:18px;font-size:1rem;line-height:1.9}
.courses-tracks .track-method h3{font-size:1.05rem;margin-bottom:12px}
.courses-tracks .track-method ul{padding-inline-start:20px}
.courses-tracks .track-method li{margin-bottom:12px}
.courses-tracks .courses-request{padding:48px 0;background:var(--paper);color:var(--ink)}
.courses-tracks .courses-request>.wrap{max-width:900px}
.courses-tracks .courses-request h2{font-size:clamp(1.5rem,4.4vw,2.2rem);margin-bottom:10px}
.courses-tracks .demo-note{color:var(--blue-ink);font-weight:600}
.courses-tracks .request-fields{border:0;padding:0;min-width:0}
.courses-tracks .request-fields legend{font-size:1.2rem;font-weight:700;margin-bottom:22px}
.courses-tracks .request-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 20px}
.courses-tracks .request-fields h3{font-size:1.1rem;margin:20px 0 18px}
.courses-tracks .request-quote{padding:18px 20px;border-inline-start:4px solid var(--gold);background:var(--paper-2);border-radius:12px;margin:24px 0}
.courses-tracks .request-quote h3{margin:0 0 8px}
.courses-tracks .quote-line{display:block;font-size:1.05rem;font-weight:600}
.courses-tracks .request-quote p{margin:8px 0 0;font-size:.9rem}
.courses-tracks .request-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.courses-tracks .request-actions .submit{flex:1 1 180px;width:auto;background:var(--blue-ink);box-shadow:none}
.courses-tracks .request-actions button{min-height:50px}
.courses-tracks .request-privacy a{display:inline-block;min-height:44px;text-decoration:underline;padding-block:8px}
.courses-tracks .termsrow{min-height:44px;padding-block:10px;align-items:flex-start}
.courses-tracks .termsrow input{margin-top:6px}
.courses-tracks .field .err{font-size:.85rem}
.courses-tracks .request-result{background:var(--paper-2);border:2px solid var(--blue-ink);border-radius:16px;padding:22px;margin-top:24px}
.courses-tracks .request-result:focus{outline:3px solid var(--blue);outline-offset:4px}
.courses-tracks footer{margin-top:24px}
.courses-tracks .request-clear-dialog{margin:auto;border:1px solid var(--line);border-radius:24px;padding:28px;max-width:calc(100% - 32px);width:440px;color:var(--ink);background:#fff;font:inherit}
.courses-tracks .request-clear-dialog::backdrop{background:rgba(0,8,18,.75)}
.courses-tracks .request-clear-dialog h2{font-size:1.35rem;margin-bottom:12px}
.courses-tracks :is(.brand,.navcta,nav.links a){display:inline-flex;align-items:center;min-height:44px}
.courses-tracks .burger{min-width:44px;min-height:44px}
.courses-tracks summary:focus-visible{outline:3px solid var(--blue-ink);outline-offset:4px;border-radius:8px}
@media(min-width:700px){.courses-tracks .request-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1001px){
  .courses-tracks .tracks-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .courses-tracks .track-card{padding:26px 18px}
  .courses-tracks .track-card h2{font-size:1.4rem}
}
@media(prefers-reduced-motion:reduce){.courses-tracks *{scroll-behavior:auto!important;transition:none!important}}
/* Shared controls keep phone-sized targets on the light courses surface. */
.courses-tracks .brand{min-width:44px}
.courses-tracks .cookiebar{background:var(--paper-2);color:var(--ink-2);border-color:var(--line)}
.courses-tracks .cookiebar a{color:var(--blue-ink)}
.courses-tracks :is(.cookiebar-x,.a11y-x){width:44px;height:44px;color:var(--ink);background:var(--white);border-color:var(--line)}
