/* Zuyini Academy -- homepage-only structural styling for the sections that
   only exist on the homepage (hero chips, Popular Paths, Capstone
   Spotlight, Credentials, founder quote, the final signup band). Loaded
   only by academy/index.html, after academy.css and academy-theme.css --
   no color tokens are redefined here, so the homepage inherits the same
   dark/gold --pdf-* variables (and the rest of the shared theme) that
   every generated page uses. Overrides win on specificity (the
   body.landing-font prefix), not load order. */

body.landing-font a {
  color: inherit;
}

/* Header */
body.landing-font .site-header {
  background-color: var(--pdf-surface);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .logo {
  color: var(--pdf-text);
}

body.landing-font .logo-mark {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .nav-links a {
  color: var(--pdf-text-soft);
  text-transform: none;
  letter-spacing: 0;
}

body.landing-font .nav-links a:hover {
  color: var(--pdf-green);
}

body.landing-font .header-cta {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .header-cta:hover {
  background-color: var(--pdf-green-dark);
}

/* Hero */
body.landing-font .academy-hero {
  background-color: var(--pdf-bg);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .hero-glow {
  background: radial-gradient(closest-side, rgba(255, 198, 41, 0.16), rgba(255, 198, 41, 0) 70%);
}

body.landing-font .section-label {
  color: var(--pdf-green);
  border-color: rgba(255, 198, 41, 0.35);
  background: var(--pdf-green-soft);
}

body.landing-font .academy-hero h1,
body.landing-font .academy-hero .hero-tagline-heading {
  background: none;
  -webkit-text-fill-color: var(--pdf-text);
  color: var(--pdf-text);
}

body.landing-font .hero-accent {
  -webkit-text-fill-color: var(--pdf-text);
  color: var(--pdf-text);
}

body.landing-font .hero-description {
  color: var(--pdf-text-soft);
}

body.landing-font .skill-finder {
  display: flex;
  gap: 10px;
}

body.landing-font .skill-finder input {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .skill-finder input::placeholder {
  color: var(--pdf-text-mute);
}

body.landing-font .skill-finder button {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
  border: none;
}

body.landing-font .skill-finder button:hover {
  background-color: var(--pdf-green-dark);
}

body.landing-font .hero-chips-label {
  color: var(--pdf-text-mute);
}

body.landing-font .hero-chip {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .hero-chip:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

body.landing-font .hero-secondary-cta a {
  color: var(--pdf-green);
}

body.landing-font .hero-fineprint {
  color: var(--pdf-text-mute);
}

/* Hero role-preview card */
body.landing-font .role-preview-card {
  background: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  box-shadow: 0 1px 3px rgba(20, 22, 15, 0.06);
}

body.landing-font .role-preview-kicker {
  color: var(--pdf-text-mute);
}

body.landing-font .role-preview-tag {
  background-color: var(--pdf-green-soft);
  color: var(--pdf-green);
}

body.landing-font .role-preview-title {
  color: var(--pdf-text);
}

body.landing-font .role-preview-meta {
  color: var(--pdf-text-mute);
}

body.landing-font .role-preview-progress-track {
  background-color: var(--pdf-bg-alt);
}

body.landing-font .role-preview-progress-fill {
  background-color: var(--pdf-green);
}

body.landing-font .role-preview-progress-label {
  color: var(--pdf-text-mute);
}

body.landing-font .role-preview-step {
  background-color: var(--pdf-bg);
}

body.landing-font .role-preview-step-icon {
  border-color: var(--pdf-border);
  color: var(--pdf-text-mute);
}

body.landing-font .role-preview-step.is-complete .role-preview-step-icon {
  background-color: var(--pdf-green);
  border-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .role-preview-step-label {
  color: var(--pdf-text-mute);
}

body.landing-font .role-preview-step.is-complete .role-preview-step-label {
  color: var(--pdf-green);
}

body.landing-font .role-preview-step p {
  color: var(--pdf-text-soft);
}

body.landing-font .role-preview-capstone {
  border-color: var(--pdf-green);
}

body.landing-font .role-preview-capstone .role-preview-step-label {
  color: var(--pdf-green);
}

body.landing-font .role-preview-link {
  color: var(--pdf-green);
  font-weight: 700;
  text-decoration: none;
}

body.landing-font .role-preview-link:hover {
  text-decoration: underline;
}

/* Hot roles */
body.landing-font .hot-roles-band {
  background: var(--pdf-bg-alt);
  border-top: 1px solid var(--pdf-border);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .hot-roles-label {
  color: var(--pdf-green);
}

body.landing-font .hot-roles-inner h2 {
  color: var(--pdf-text);
}

body.landing-font .hot-roles-intro {
  color: var(--pdf-text-soft);
}

body.landing-font .hot-role-card {
  background: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .hot-role-rank {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .hot-role-card h3 {
  color: var(--pdf-text);
}

body.landing-font .hot-role-openings {
  color: var(--pdf-text-mute);
}

body.landing-font .hot-role-skill-pill {
  background-color: var(--pdf-bg-alt);
  color: var(--pdf-text-soft);
}

body.landing-font .hot-role-cta {
  color: var(--pdf-green);
}

/* Stats / attribution band */
body.landing-font .glance-band {
  background-color: var(--pdf-bg-alt);
  border-top: 1px solid var(--pdf-border);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .glance-band-attribution {
  color: var(--pdf-text-soft);
}

body.landing-font .glance-band-attribution strong {
  color: var(--pdf-text);
}

body.landing-font .glance-band .hero-stat-num {
  color: var(--pdf-text);
}

body.landing-font .glance-band .hero-stat-label {
  color: var(--pdf-text-mute);
}

body.landing-font .hero-stat-tooltip::after {
  background-color: var(--pdf-surface);
  color: var(--pdf-text);
  border: 1px solid var(--pdf-border);
}

/* Job Radar -- light card form, not a dark band, per the PDF */
body.landing-font .job-radar-band {
  background: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .job-radar-inner h2 {
  color: var(--pdf-text);
}

body.landing-font .job-radar-intro {
  color: var(--pdf-text-soft);
}

body.landing-font .job-radar-field label {
  color: var(--pdf-text-soft);
}

body.landing-font .job-radar-field input,
body.landing-font .job-radar-field select {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .job-radar-remote-check {
  color: var(--pdf-text-soft);
}

body.landing-font .job-radar-submit,
body.landing-font .hero-button {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
  border: none;
}

body.landing-font .job-radar-submit:hover {
  background-color: var(--pdf-green-dark);
}

body.landing-font .job-radar-status {
  color: var(--pdf-text-soft);
}

body.landing-font .job-radar-fineprint {
  color: var(--pdf-text-mute);
}

/* Credentials */
body.landing-font .credentials-section {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .credentials-inner h2 {
  color: var(--pdf-text);
}

body.landing-font .credentials-intro {
  color: var(--pdf-text-soft);
}

body.landing-font .credentials-card {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .credentials-card h3 {
  color: var(--pdf-text);
}

body.landing-font .credentials-card p {
  color: var(--pdf-text-mute);
}

body.landing-font .credentials-guide-link {
  color: var(--pdf-green);
}

/* Mode toggle + browse panel */
body.landing-font .mode-toggle-bar {
  background-color: var(--pdf-bg);
  border-bottom: 1px solid var(--pdf-border);
}

body.landing-font .mode-toggle button {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text-soft);
}

body.landing-font .mode-toggle button:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

body.landing-font .mode-toggle button.active {
  background-color: var(--pdf-green);
  border-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .app-shell {
  background-color: var(--pdf-bg);
}

body.landing-font .role-panel {
  background-color: var(--pdf-surface);
  border-right: 1px solid var(--pdf-border);
}

body.landing-font .role-panel-toggle {
  color: var(--pdf-text-soft);
}

body.landing-font .category-select,
body.landing-font .search-box input,
body.landing-font .featured-jobs-controls select {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .role-count {
  color: var(--pdf-text-mute);
}

body.landing-font .role-list a {
  color: var(--pdf-text-soft);
}

body.landing-font .role-list li.active a,
body.landing-font .role-list a:hover {
  color: var(--pdf-green);
}

body.landing-font .role-detail,
body.landing-font .empty-state h2 {
  color: var(--pdf-text);
}

body.landing-font .empty-state p,
body.landing-font .empty-state-picks-label {
  color: var(--pdf-text-soft);
}

body.landing-font .featured-pick {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .featured-pick:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

/* Role detail panel, rendered inline by academy.js when someone searches
   or clicks a role from the homepage browse list -- baseline light theme
   so it doesn't render as a dark card on a light page. The dedicated,
   pixel-matched role page layout from the PDF belongs to the generated
   role-page template, not this homepage stylesheet. */
body.landing-font .detail-card,
body.landing-font .skill-results {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .detail-card h1,
body.landing-font .detail-card h2,
body.landing-font .detail-card h3,
body.landing-font .skill-results h2 {
  color: var(--pdf-text);
}

body.landing-font .mastery-badge {
  background-color: var(--pdf-bg-alt);
  border: 1px solid var(--pdf-border);
}

body.landing-font .mastery-track {
  background-color: var(--pdf-border);
}

body.landing-font .mastery-fill {
  background-color: var(--pdf-green);
}

body.landing-font .mastery-hint,
body.landing-font .role-quickfact,
body.landing-font .competency-coverage,
body.landing-font .detail-benchmark,
body.landing-font .hiring-block-note,
body.landing-font .skill-results-query {
  color: var(--pdf-text-mute);
}

body.landing-font .role-outcomes li,
body.landing-font .rubric-list li,
body.landing-font .level-intro,
body.landing-font .capstone-block p {
  color: var(--pdf-text-soft);
}

body.landing-font .role-cta,
body.landing-font .job-radar-submit {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
  border: none;
}

body.landing-font .pathway-add-btn,
body.landing-font .share-btn {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text-soft);
}

body.landing-font .video-links a {
  color: var(--pdf-text);
}

body.landing-font .video-links a:hover,
body.landing-font .play-icon {
  color: var(--pdf-green);
}

body.landing-font .level-badge {
  background-color: var(--pdf-green-soft);
  color: var(--pdf-green);
}

body.landing-font .level-lock-banner {
  background-color: var(--pdf-bg-alt);
  color: var(--pdf-text-soft);
}

body.landing-font .competency-title {
  color: var(--pdf-text);
}

body.landing-font .role-pill {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text-soft);
}

body.landing-font .role-pill:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

body.landing-font .hiring-fallback-links a,
body.landing-font .hiring-remote-links a,
body.landing-font .featured-job-apply,
body.landing-font .hot-role-cta {
  color: var(--pdf-green);
}

/* Popular Paths + Capstone Spotlight */
body.landing-font .popular-paths-section {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .category-grid-head h2 {
  color: var(--pdf-text);
}

body.landing-font .category-grid-browse-all,
body.landing-font .capstone-spotlight-link {
  color: var(--pdf-green);
}

body.landing-font .popular-paths-intro {
  color: var(--pdf-text-mute);
}

body.landing-font .popular-path-card {
  background: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .popular-path-tag {
  color: var(--pdf-green);
}

body.landing-font .popular-path-card h3 {
  color: var(--pdf-text);
}

body.landing-font .popular-path-card p {
  color: var(--pdf-text-soft);
}

body.landing-font .popular-path-meta {
  color: var(--pdf-text-mute);
}

body.landing-font .pathway-filter-label {
  color: var(--pdf-text-mute);
}

body.landing-font .pathway-chip {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text-soft);
}

body.landing-font .pathway-chip:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

body.landing-font .category-card {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .category-card h3 {
  color: var(--pdf-text);
}

body.landing-font .category-card a {
  color: var(--pdf-text-soft);
}

body.landing-font .category-card a:hover {
  color: var(--pdf-green);
}

body.landing-font .capstone-spotlight-section {
  background-color: var(--pdf-bg-alt);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .capstone-spotlight-text h2 {
  color: var(--pdf-text);
}

body.landing-font .capstone-spotlight-text p {
  color: var(--pdf-text-soft);
}

body.landing-font .capstone-spotlight-card {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .capstone-spotlight-card-label {
  color: var(--pdf-text);
}

body.landing-font .capstone-spotlight-list li {
  color: var(--pdf-text-soft);
}

body.landing-font .capstone-spotlight-list li::before {
  color: var(--pdf-green);
}

/* How It Works */
body.landing-font .how-it-works {
  background-color: var(--pdf-bg);
}

body.landing-font .how-it-works-step {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  border-radius: 14px;
  padding: 22px;
}

body.landing-font .how-it-works-step-label {
  color: var(--pdf-green);
}

body.landing-font .how-it-works-step h3 {
  color: var(--pdf-text);
}

body.landing-font .how-it-works-step p {
  color: var(--pdf-text-soft);
}

body.landing-font .how-it-works-note {
  color: var(--pdf-text-mute);
}

body.landing-font .how-it-works .section-collapse-summary {
  color: var(--pdf-green);
}

/* Featured jobs */
body.landing-font .featured-jobs {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .featured-jobs-inner h2 {
  color: var(--pdf-text);
}

body.landing-font .featured-jobs-intro,
body.landing-font .featured-jobs-empty {
  color: var(--pdf-text-soft);
}

body.landing-font .featured-jobs-controls label {
  color: var(--pdf-text-mute);
}

body.landing-font .featured-job-card {
  background: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .featured-job-title {
  color: var(--pdf-text);
}

body.landing-font .featured-job-meta,
body.landing-font .featured-job-role-link {
  color: var(--pdf-text-mute);
}

body.landing-font .featured-jobs-arrow {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
  color: var(--pdf-text);
}

body.landing-font .featured-jobs-arrow:hover {
  border-color: var(--pdf-green);
  color: var(--pdf-green);
}

/* Why section */
body.landing-font .why-section {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .why-section-split h2 {
  color: var(--pdf-text);
}

body.landing-font .why-section-body {
  color: var(--pdf-text-soft);
}

body.landing-font .why-feature-card {
  background-color: var(--pdf-surface);
  border: 1px solid var(--pdf-border);
}

body.landing-font .why-feature-card h3 {
  color: var(--pdf-text);
}

body.landing-font .why-feature-card p {
  color: var(--pdf-text-soft);
}

/* Founder quote */
body.landing-font .founder-quote-section {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .founder-quote-avatar {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .founder-quote-text {
  color: var(--pdf-text);
}

body.landing-font .founder-quote-byline {
  color: var(--pdf-text-mute);
}

body.landing-font .founder-quote-byline a {
  color: var(--pdf-green);
}

/* Save your path -- no special band fill, just the standard page section
   styling (inline-signup/gate-field/gate-submit are themed globally in
   academy-theme.css), matching the original site's plain signup-band. */
body.landing-font #save-your-path.signup-band {
  border-top: 1px solid var(--pdf-border);
}

body.landing-font #save-your-path .inline-signup-heading {
  font-size: 26px;
}

/* Newsletter CTA */
body.landing-font .newsletter-cta {
  background-color: var(--pdf-bg);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .newsletter-cta-mark {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .newsletter-cta-inner h2 {
  color: var(--pdf-text);
}

body.landing-font .newsletter-cta-inner p {
  color: var(--pdf-text-soft);
}

body.landing-font .newsletter-cta-button {
  background-color: var(--pdf-green);
  color: var(--pdf-black);
}

body.landing-font .newsletter-cta-button:hover {
  background-color: var(--pdf-green-dark);
}

body.landing-font .newsletter-cta-fineprint {
  color: var(--pdf-text-mute);
}

/* Footer */
body.landing-font footer {
  background-color: var(--pdf-surface);
  border-top: 1px solid var(--pdf-border);
}

body.landing-font .footer-links a {
  color: var(--pdf-text-soft);
}

body.landing-font .footer-links a:hover {
  color: var(--pdf-green);
}

body.landing-font .footer-disclaimer {
  color: var(--pdf-text-mute);
}

body.landing-font footer p:not(.footer-disclaimer) {
  color: var(--pdf-text-mute);
}
