/* Brand reference: NutriHUB / preview_nova_identidade.html. Scoped to careers. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');
.careers-page { font-family: 'Inter', Arial, sans-serif; font-weight: 400; }
.careers-intro h1, .careers-card h2 { font-family: 'Plus Jakarta Sans', Arial, sans-serif; }
.careers-page { --career-earth: #4b2917; --career-green: #d6e865; --career-border: #ded3c2; color: var(--career-earth); background: #fff8ef; padding: 20px 0 72px; }
.careers-breadcrumb { display: flex; gap: 14px; font-size: 13px; margin: 16px 0 40px; }
.careers-breadcrumb a:hover { text-decoration: underline; }
.careers-layout { display: grid; grid-template-columns: 1fr 1.08fr; gap: clamp(28px, 4vw, 60px); align-items: start; }
.careers-eyebrow { font-size: 11px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; margin: 16px 0 20px; }
.careers-intro h1 { font-size: clamp(48px, 5.5vw, 82px); line-height: 1.02; letter-spacing: -.055em; font-weight: 800; margin: 0 0 24px; }
.careers-intro h1 img { display: inline-block; width: .72em; height: .72em; object-fit: contain; margin-left: 16px; }
.careers-description { font-size: clamp(17px, 1.6vw, 21px); line-height: 1.5; max-width: 520px; margin-bottom: 26px; }
.careers-photo { margin: 0; }
.careers-photo > img { width: 100%; height: 330px; object-fit: cover; object-position: center; border-radius: 22px; }
.careers-photo figcaption { font-size: 12px; letter-spacing: .09em; padding: 14px 0; }
.careers-card { border: 1px solid var(--career-border); border-radius: 20px; padding: clamp(22px, 2.6vw, 38px); box-shadow: 0 10px 35px #4b291708; min-width: 0; }
.careers-card h2 { font-size: clamp(27px, 3vw, 38px); font-weight: 800; letter-spacing: -.045em; line-height: 1.15; margin-bottom: 7px; }
.careers-card__intro { font-size: 14px; margin-bottom: 25px; }
.careers-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 17px 18px; }
.career-field { min-width: 0; }
.career-field--wide { grid-column: 1 / -1; }
.career-field label { display: block; font-size: 13px; line-height: 1.5; margin-bottom: 6px; }
.career-field label > span:not(:last-child), .career-field label > span:only-child, .careers-consent b { color: #a83b13; }
.career-field label small { font-size: 11px; font-weight: 300; }
.career-field input:not([type="checkbox"]), .career-field select, .career-field textarea { display: block; width: 100%; min-height: 44px; border: 1px solid #c9c0b4; border-radius: 6px; background: #fffdf8; padding: 10px 12px; font-size: 14px; line-height: 1.5; font-weight: 300; }
.career-field textarea { resize: vertical; min-height: 92px; }
.career-field input::placeholder, .career-field textarea::placeholder { color: #75685b; opacity: 1; }
.career-field :is(input, select, textarea):focus-visible, .careers-submit:focus-visible, .careers-privacy summary:focus-visible { outline: 2px solid var(--career-earth); outline-offset: 3px; }
.career-field [aria-invalid="true"] { border-color: #a83b13 !important; }
.career-field > small { display: block; font-size: 11px; margin-top: 5px; }
.careers-upload { padding: 17px; border: 1px dashed #b8a48b; border-radius: 9px; background: #f0edca33; }
.careers-upload input[type="file"] { border: 0; padding: 9px 0 0; background: none; font-size: 12px; }
.careers-upload input::file-selector-button { color: #4b2917; background: #fff8ef; border: 1px solid #a68b70; border-radius: 6px; padding: 9px 12px; margin-right: 10px; cursor: pointer; font: inherit; }
#career-file-name { font-size: 12px; overflow-wrap: anywhere; }
.careers-privacy { margin-top: 18px; font-size: 12px; line-height: 1.6; }
.careers-privacy summary { cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.careers-privacy p { margin-top: 10px; font-weight: 300; }
.careers-privacy a { text-decoration: underline; }
.careers-consent { margin: 14px 0 20px; }
.careers-consent label { display: flex; gap: 11px; align-items: start; font-size: 12px; cursor: pointer; }
.careers-consent input { width: 18px; height: 18px; flex: 0 0 18px; accent-color: #4b2917; margin-top: 2px; }
.careers-consent label > span { color: #4b2917 !important; }
.careers-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.careers-submit { display: flex; align-items: center; justify-content: center; gap: 18px; background: var(--career-green); color: var(--career-earth); border-radius: 7px; padding: 14px 24px; width: 100%; min-height: 50px; font-size: 16px; font-weight: 700; transition: background .2s; }
.careers-submit:hover { background: #c8dc50; }
.careers-submit:disabled { opacity: .7; cursor: wait; }
.careers-required { font-size: 11px; margin-top: 12px; }
.careers-status { padding: 14px; margin-bottom: 16px; border-radius: 8px; background: #f0edca; font-size: 14px; line-height: 1.6; }
.careers-status[data-state="success"] { background: #e6edc5; color: #184327; }
.career-error { display: block; font-size: 12px; color: #a83b13; margin-top: 5px; }
.careers-contact-link { display: inline-flex; gap: 14px; align-items: center; margin-top: 20px; border-radius: 8px; padding: 18px 24px; background: #d6e865; color: #4b2917; font-size: 16px; }
@media (max-width: 900px) { .careers-layout { grid-template-columns: 1fr; gap: 24px; } .careers-intro h1 { font-size: clamp(48px, 9vw, 72px); } .careers-photo > img { height: 240px; } .careers-description { max-width: 640px; } .careers-page { padding-bottom: 40px; } }
@media (max-width: 480px) { .careers-fields { grid-template-columns: 1fr; } .careers-breadcrumb { margin-bottom: 28px; } .careers-card { padding: 22px 18px; } .careers-photo > img { height: 190px; } .careers-intro h1 { font-size: 51px; } }
