.jobs-page .jobs-search-box{position:relative;min-width:0}
.jobs-page #job-search{width:100%;min-height:58px;padding:15px 50px 15px 50px;border-color:#d5ad45;border-radius:9px;background:#0e1c28;appearance:none;-webkit-appearance:none}
.jobs-page #job-search::-webkit-search-cancel-button{display:none}
.jobs-search-icon{position:absolute;z-index:1;left:17px;top:18px;width:22px;height:22px;color:#ffd044;pointer-events:none}
.jobs-search-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.jobs-page .jobs-search-clear{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:6px;color:#c2d1dc;background:transparent;font-size:24px;font-weight:400}
.jobs-page .jobs-search-clear[hidden]{display:none}
.jobs-page .jobs-search-clear:hover{background:#ffffff0d;color:#ffd044}
.jobs-search-feedback{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-height:22px;margin-top:9px;font-size:12px;line-height:1.5;color:#b9c9d4}
.jobs-search-keys{font-size:11px;color:#92a7b5;white-space:nowrap}
.jobs-page .jobs-search-results{position:absolute;z-index:32;top:calc(100% + 8px);left:0;right:0;list-style:none;padding:6px;margin:0;border:1px solid #66714d;border-radius:11px;background:#112230;box-shadow:0 14px 35px #0007;max-height:var(--jobs-search-list-height,320px);overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:none}
.jobs-page .jobs-search-results[hidden]{display:none}
.jobs-page .jobs-search-results.is-above{top:auto;bottom:calc(100% + 8px)}
.jobs-page .jobs-search-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:11px 12px;border-radius:6px;cursor:pointer;color:#edf3f7;font-size:14px;line-height:1.4}
.jobs-search-match{min-width:0;overflow-wrap:anywhere}
.jobs-search-option small{flex:none;color:#a5b9c6;font-size:11px;white-space:nowrap}
.jobs-page .jobs-search-option:hover,.jobs-page .jobs-search-option[aria-selected="true"]{background:#ffd04417;outline:1px solid #ffd04465;outline-offset:-1px}
.jobs-page .jobs-search-option mark{background:transparent;color:#ffda6b;font-weight:700}
.jobs-page .jobs-search-box :focus-visible{outline:3px solid #ffe49d;outline-offset:3px}
@media(max-width:700px){.jobs-search-keys{display:none}.jobs-page .jobs-search-option{align-items:flex-start;padding:12px 10px}.jobs-search-option small{padding-top:2px}.jobs-page #job-search{font-size:16px}}

.jobs-page .jobs-filter .filter-fields{grid-template-columns:minmax(0,1fr)}

/* Search sits directly in the header, centred independently of the brand. */
.jobs-page header{display:grid;grid-template-columns:44px 190px minmax(0,1fr);gap:18px;position:relative;min-height:88px}
.jobs-page .jobs-header-search{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,40vw);min-width:0}
.jobs-page .jobs-header-search #job-search{margin:0;min-height:52px;height:52px;font-size:16px;padding-top:12px;padding-bottom:12px}
.jobs-page .jobs-header-search .jobs-search-icon{top:15px}
.jobs-page .jobs-header-search .jobs-search-clear{top:4px}
.jobs-page .results-heading{margin-top:0}
@media(max-width:1000px){.jobs-page header{grid-template-columns:44px minmax(0,1fr);padding-bottom:18px}.jobs-page .jobs-header-search{position:static;grid-column:1/-1;transform:none;width:100%;max-width:600px;justify-self:center}}
