/* Scoped Terms/Careers foundation. No commerce or global theme overrides. */
.public-content {
  box-sizing: border-box;
  color: #262630;
  font-size: 1.0625rem;
  line-height: 1.7;
  margin: 0 auto;
  max-width: 78ch;
  overflow-wrap: anywhere;
  padding: 2.5rem 1.25rem 4rem;
}
.public-content h1, .public-content h2, .public-content h3 { color: #191922; line-height: 1.3; }
.public-content h1 { font-size: clamp(2rem, 6vw, 3rem); }
.public-content h2 { font-size: 1.5rem; margin: 0 0 1rem; }
.public-content h3 { font-size: 1.2rem; }
.public-policy .policy-banner .banner-title,
.public-policy .policy-banner .highlighted-text,
.public-policy .policy-banner .title-top { color: #191922 !important; }
.public-content p { font-size: inherit; line-height: inherit; margin: 0 0 1rem; }
.public-content a { color: #164773; text-decoration: underline; text-underline-offset: .2em; }
.public-content ul, .public-content ol { padding-left: 1.5rem; }
.public-content ul > li { list-style: disc; }
.public-content ol > li { list-style: decimal; }
.public-content li { margin: .5rem 0; }
.public-content section, .content-heading { margin: 2rem 0; }
.public-content [id], .public-policy [id] { scroll-margin-top: 7rem; }
.public-content :focus-visible, .content-skip-link:focus { outline: 3px solid #185690; outline-offset: 4px; }
.content-skip-link { background: #fff; color: #153c61; left: 1rem; padding: .8rem 1rem; position: fixed; top: -10rem; z-index: 10000; }
.content-skip-link:focus { top: 1rem; }
.policy-toc { background: #f3f5f6; border: 1px solid #cbd0d5; border-radius: .5rem; padding: 1.25rem; }
.policy-toc ol { columns: 2; column-gap: 2rem; }
.policy-toc li { break-inside: avoid; }
.policy-toc a { display: inline-block; padding: .25rem 0; }
.policy-section { border-top: 1px solid #d0d4d9; padding-top: 2rem; }
.content-notice { background: #f3f5f6; border-left: 4px solid #576d7c; padding: 1rem; }
.public-content .careers-list { display: grid; gap: 1rem; padding: 0; }
.public-content .careers-list > li { list-style: none; margin: 0; }
.career-card { border: 1px solid #cbd0d5; border-radius: .5rem; padding: 1.25rem; }
.career-card h3 { margin: 0 0 .5rem; }
.career-card p { margin: 0; }
.career-state { font-weight: 700; }
.career-details { border-block: 1px solid #cbd0d5; padding: 1rem 0; }
.career-details > div { display: grid; gap: .5rem; grid-template-columns: minmax(8rem, 1fr) 2fr; margin: .5rem 0; }
.career-details dt { font-weight: 700; }
.career-details dd { margin: 0; }
.content-action { border: 2px solid #164773; border-radius: .3rem; display: inline-block; font-weight: 700; padding: .65rem 1rem; }
@media (max-width: 600px) {
  .policy-toc ol { columns: 1; }
  .career-details > div { grid-template-columns: 1fr; gap: .1rem; }
  .public-content { padding-inline: 1rem; }
}
@media print {
  .content-skip-link, .policy-toc { display: none; }
  .public-content { max-width: none; padding: 0; }
}
.careers-admin { min-width: 0; overflow-wrap: anywhere; }
.careers-admin form { margin-block: 1.5rem; }
.careers-admin label { display: grid; gap: .35rem; margin-block: .75rem; }
.careers-admin input, .careers-admin textarea { box-sizing: border-box; max-width: 100%; min-width: 0; width: 100%; }
.careers-admin button { min-height: 44px; white-space: normal; }
.careers-admin dd { margin: .4rem 0 1rem; }
.careers-admin :focus-visible { outline: 3px solid #185690; outline-offset: 3px; }
