/* Career Concierge plan presentation. Scope all rules to the pricing section. */
#pricing.ht-pricing-update {
  background: #020617;
  color: #f1f5f9;
  scroll-margin-top: 10rem;
  font-family: ui-sans-serif, system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.6;
}
#pricing *, #pricing *::before, #pricing *::after { box-sizing: border-box; }
#pricing h2, #pricing h3, #pricing p { margin: 0; }
#pricing h2, #pricing h3 { color: #f8fafc; }
#pricing h2 { font-size: clamp(1.6rem, 3vw, 2.1rem); line-height: 1.25; font-weight: 700; }
#pricing h3 { font-size: 1.35rem; font-weight: 700; }
#pricing a { text-decoration: none; }
#pricing a:focus-visible, #pricing summary:focus-visible { outline: 3px solid #6ee7b7; outline-offset: 5px; }
#pricing .ht-wrap { max-width: 80rem; margin-inline: auto; padding-inline: 1.5rem; }
#pricing .ht-eyebrow { color: #6ee7b7; font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; }
#pricing .ht-shared { padding-block: 2rem; background: #0f172a; border-block: 1px solid #334155; }
#pricing .ht-shared-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.25rem; margin-top: 1rem; }
#pricing .ht-shared-grid div { color: #f1f5f9; font-size: .95rem; }
#pricing .ht-check { color: #6ee7b7; margin-right: .4rem; }
#pricing .ht-section { padding-block: 4rem; }
#pricing #pricing-heading { margin-top: .65rem; }
#pricing .ht-subtitle { color: #cbd5e1; margin-top: .8rem; }
#pricing .ht-plans { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; margin-top: 2.5rem; align-items: stretch; }
#pricing .ht-plan { display: flex; flex-direction: column; padding: 2rem 1.5rem; border: 1px solid #334155; border-radius: 1rem; background: #0f172a; color: #f1f5f9; position: relative; min-width: 0; }
#pricing .ht-plan.ht-featured { border: 2px solid #6ee7b7; padding: calc(2rem - 1px) calc(1.5rem - 1px); }
#pricing .ht-badge { position: absolute; top: -.9rem; left: 1.25rem; max-width: calc(100% - 2.5rem); background: #6ee7b7; color: #06291e; padding: .2rem .7rem; border-radius: 2rem; font-size: .8rem; font-weight: 700; }
#pricing .ht-persona { min-height: 3.2rem; font-size: .9rem; color: #cbd5e1; margin-top: .6rem; }
#pricing .ht-price { font-size: 2.75rem; letter-spacing: -.035em; font-weight: 700; margin-top: 1.25rem; color: #f8fafc; }
#pricing .ht-price span { font-size: .9rem; letter-spacing: 0; color: #cbd5e1; font-weight: 400; }
#pricing .ht-quota { color: #6ee7b7; font-size: 1.1rem; font-weight: 600; margin: .3rem 0 1.5rem; }
#pricing .ht-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: .8rem 1rem; border-radius: .65rem; background: #6ee7b7; color: #06291e; font-size: .95rem; font-weight: 700; border: 1px solid transparent; text-align: center; width: 100%; margin-bottom: 1.5rem; }
#pricing .ht-button:hover { background: #a7f3d0; }
#pricing .ht-button.ht-secondary { color: #f8fafc; background: #1e293b; border-color: #475569; }
#pricing .ht-button.ht-secondary:hover { background: #334155; }
#pricing .ht-list { list-style: none; margin: 0; padding: 0; font-size: .9rem; flex: 1; }
#pricing .ht-list li { margin-bottom: .9rem; padding-left: 1.25rem; position: relative; color: #f1f5f9; }
#pricing .ht-list li::before { content: '✓'; position: absolute; left: 0; color: #6ee7b7; }
#pricing .ht-list li.ht-unavailable { color: #cbd5e1; }
#pricing .ht-list li.ht-unavailable::before { content: '—'; color: #cbd5e1; }
#pricing .ht-detail { display: block; color: #cbd5e1; font-size: .85rem; margin-top: .25rem; }
#pricing .ht-plan-foot { font-size: .85rem; color: #cbd5e1; border-top: 1px solid #334155; padding-top: 1rem; margin-top: 1rem; }
#pricing .ht-note { font-size: .9rem; color: #cbd5e1; margin-top: 1.5rem; text-align: center; }
#pricing .ht-compare { margin-top: 2rem; }
#pricing summary { cursor: pointer; min-height: 44px; padding-block: 1rem; color: #f1f5f9; font-size: 1rem; }
#pricing .ht-table-wrap { overflow-x: auto; }
#pricing table { border-collapse: collapse; width: 100%; font-size: .9rem; min-width: 38rem; color: #f1f5f9; background: #020617; }
#pricing th, #pricing td { padding: 1rem .7rem; border-bottom: 1px solid #334155; text-align: center; }
#pricing th:first-child, #pricing td:first-child { text-align: left; max-width: 17rem; }
#pricing th { font-weight: 600; color: #6ee7b7; }
#pricing .ht-faq { max-width: 54rem; margin-inline: auto; }
#pricing .ht-faq h2 { margin-bottom: 1.5rem; }
#pricing .ht-faq details { border-bottom: 1px solid #334155; }
#pricing .ht-faq details p { padding-bottom: 1.25rem; font-size: 1rem; color: #cbd5e1; }
@media (max-width: 1023px) {
  #pricing .ht-plans { grid-template-columns: 1fr; gap: 2rem; }
  #pricing .ht-persona { min-height: 0; }
  #pricing .ht-shared-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 479px) {
  #pricing .ht-wrap { padding-inline: 1rem; }
  #pricing .ht-section { padding-block: 3rem; }
  #pricing .ht-plan { padding-inline: 1.25rem; }
  #pricing .ht-plan.ht-featured { padding-inline: calc(1.25rem - 1px); }
  #pricing .ht-shared-grid { grid-template-columns: 1fr; }
}


/* Shared scroll padding already clears the site header. */
#pricing #pricing-plans { scroll-margin-top: 0; }

#pricing td[data-availability="included"]{color:#6ee7b7}
#pricing td[data-availability="excluded"]{color:#e6a0a4}
#pricing .ht-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
