.page-shell .page-hero { padding: 8rem 0 6rem; }
.page-shell h1 { font-family: 'Readex Pro', sans-serif; font-size: clamp(2.5rem, 5vw, 4.2rem); color: #fff; }
.page-shell .accent { color: #3d8bff; }
.page-shell .lead { max-width: 48rem; color: #c5d0e3; font-size: 1.15rem; }
.chip-row { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.filter-chip, .badge, .choice span { border: 1px solid #cbd5e6; border-radius: 999px; padding: .55rem 1rem; background: #fff; font: inherit; cursor: pointer; }
.filter-chip.active, .choice input:checked + span { color: #fff; background: #1e6bff; border-color: #1e6bff; }
.job-list { display: grid; gap: 1rem; }
.job-card { display: grid; gap: 1rem; }
.job-details { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); padding: 1rem 0; }
.job-details ul { margin: .5rem 0 0; padding-right: 1.25rem; }
.contact-form { display: grid; gap: 1rem; }
.contact-form label, .contact-form fieldset { display: grid; gap: .5rem; border: 0; padding: 0; margin: 0; }
.contact-form input, .contact-form select, .contact-form textarea { min-height: 3rem; padding: .75rem 1rem; border: 1px solid #cbd5e6; border-radius: .75rem; font: inherit; }
.field-wide { grid-column: 1 / -1; }
.honeypot { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; opacity: 0; pointer-events: none; }
.form-error { color: #8a3b00; background: #fff1e6; padding: .75rem 1rem; border-radius: .75rem; }
.success-card, .summary-card { background: #fff; border: 1px solid #dde4f0; border-radius: 1rem; padding: 1.5rem; }
