{"id":1658,"date":"2025-08-13T15:12:18","date_gmt":"2025-08-13T19:12:18","guid":{"rendered":"https:\/\/www.texasabacenters.com\/?page_id=1658"},"modified":"2026-01-21T11:23:51","modified_gmt":"2026-01-21T16:23:51","slug":"workable","status":"publish","type":"page","link":"https:\/\/www.texasabacenters.com\/es\/workable\/","title":{"rendered":"workable"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1658\" class=\"elementor elementor-1658\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2a1b757 e-flex e-con-boxed e-con e-parent\" data-id=\"2a1b757\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1f77029 elementor-widget elementor-widget-heading\" data-id=\"1f77029\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Careers<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fc8fa34 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"fc8fa34\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-722164e\" data-id=\"722164e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-de138d8 elementor-widget elementor-widget-html\" data-id=\"de138d8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Workable jobs embed: split pane (desktop) + mobile drawer, clean filters, full-card click, robust dates -->\r\n<div class=\"wb-filters-top\" id=\"wb-filters\">\r\n  <input type=\"search\" id=\"wb-q\" placeholder=\"Job title or keyword\u2026\" aria-label=\"Search by title\" \/>\r\n  <select id=\"wb-state\" aria-label=\"Filter by state\"><option value=\"\">State<\/option><\/select>\r\n  <select id=\"wb-loc\" aria-label=\"Filter by location (city only)\"><option value=\"\">Location<\/option><\/select>\r\n  <select id=\"wb-dept\" aria-label=\"Filter by department\"><option value=\"\">Department<\/option><\/select>\r\n  <button id=\"wb-clear\" type=\"button\" class=\"wb-btn wb-primary\">CLEAR FILTERS<\/button>\r\n<\/div>\r\n\r\n<div class=\"wb-board wb-single\">\r\n  <div class=\"wb-left\" id=\"wb-left\">\r\n    <div class=\"wb-count\" id=\"wb-count\" aria-live=\"polite\"><\/div>\r\n    <div id=\"whr_embed_hook\"><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"wb-right\">\r\n    <div class=\"wb-right-shell\" id=\"wb-shell\">\r\n      <button id=\"wb-close\" type=\"button\" class=\"wb-close\" title=\"Close\">\u2715<\/button>\r\n      <div id=\"wb-placeholder\" class=\"wb-empty\">Select a job to see details.<\/div>\r\n      <iframe id=\"wb-detail\" title=\"Job details\" style=\"display:none;\" loading=\"lazy\"><\/iframe>\r\n      <div id=\"wb-fallback\" class=\"wb-empty\" style=\"display:none;\">We couldn\u2019t show the job inside this page.<\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- Mobile full-screen drawer -->\r\n<div class=\"wb-drawer\" id=\"wb-drawer\" aria-hidden=\"true\">\r\n  <div class=\"wb-drawer-header\">\r\n    <button class=\"wb-nav-btn\" id=\"wb-back\">\u2190 Results<\/button>\r\n    <div class=\"wb-drawer-spacer\"><\/div>\r\n    <button class=\"wb-nav-btn\" id=\"wb-prev\" aria-label=\"Previous job\">\u25c0<\/button>\r\n    <button class=\"wb-nav-btn\" id=\"wb-next\" aria-label=\"Next job\">\u25b6<\/button>\r\n  <\/div>\r\n  <iframe id=\"wb-drawer-iframe\" title=\"Job details (mobile)\" loading=\"lazy\"><\/iframe>\r\n<\/div>\r\n\r\n<!-- Floating Filters toggle (mobile) -->\r\n<button id=\"wb-fab\" class=\"wb-fab\" aria-label=\"Filters\">Filters<\/button>\r\n\r\n<style>\r\n  :root{\r\n    --brand:#0e7a6d; --brand-contrast:#0b5a52; --active-accent:#7dd3c7;\r\n    --border:#e5e9f0; --radius:14px;\r\n    --shadow:0 8px 24px rgba(16,24,40,.06),0 2px 6px rgba(16,24,40,.05);\r\n    --shadow-lg:0 12px 32px rgba(16,24,40,.12),0 6px 12px rgba(16,24,40,.06);\r\n    --pane-h:78vh;\r\n  }\r\n\r\n  \/* Filters (desktop) *\/\r\n  .wb-filters-top{\r\n    display:grid;\r\n    grid-template-columns: 1fr 220px 260px 1fr auto; \/* search | state | location | dept | clear *\/\r\n    gap:.75rem; margin:0 0 1rem;\r\n  }\r\n  .wb-filters-top input,\r\n  .wb-filters-top select{\r\n    padding:.7rem .9rem; border:1px solid var(--border); border-radius:.7rem; background:#fff; width:100%;\r\n    min-height:48px; box-sizing:border-box;\r\n  }\r\n  .wb-btn{padding:.7rem 1rem;border:1px solid var(--border);border-radius:.7rem;background:#fff;color:inherit;cursor:pointer;height:48px}\r\n  .wb-btn:hover{box-shadow:0 2px 6px rgba(0,0,0,.06)}\r\n  .wb-primary{background:var(--brand);border-color:var(--brand);color:#fff}\r\n  .wb-primary:hover{background:var(--brand-contrast);border-color:var(--brand-contrast);color:#fff}\r\n\r\n  \/* Layout *\/\r\n  .wb-board{display:grid; gap:24px; align-items:start; transition:grid-template-columns .25s ease}\r\n  .wb-single{grid-template-columns:1fr}\r\n  .wb-split{ grid-template-columns:1fr 1.25fr }\r\n  .wb-left{min-width:0; max-height:var(--pane-h); overflow:auto}\r\n  .wb-split .wb-left{padding-right:1rem; border-right:1px solid var(--border)}\r\n  .wb-right-shell{position:relative; background:#fff; border:1px solid var(--border); border-radius:var(--radius);\r\n    box-shadow:var(--shadow); padding:56px 12px 12px; max-height:var(--pane-h); overflow:auto;\r\n    opacity:0; transform:translateX(16px); transition:opacity .22s ease, transform .22s ease}\r\n  .wb-split #wb-shell{opacity:1; transform:none}\r\n  #wb-detail{width:100%; height:calc(var(--pane-h) - 68px); border:0; border-radius:calc(var(--radius) - 4px); box-shadow:var(--shadow)}\r\n  .wb-empty{opacity:.85; padding:1rem}\r\n  .wb-count{opacity:.8; margin-bottom:.5rem}\r\n\r\n  \/* Cards *\/\r\n  #whr_embed_hook ul,#whr_embed_hook ol{list-style:none;margin:0;padding:0}\r\n  #whr_embed_hook .whr-item{\r\n    position:relative; background:#fff; border:1px solid var(--border); border-radius:var(--radius);\r\n    box-shadow:var(--shadow); padding:16px 18px; margin:0 0 12px 0; cursor:pointer;\r\n    transition:box-shadow .18s ease,border-color .18s ease,background-color .18s ease;\r\n  }\r\n  #whr_embed_hook .whr-item:hover{box-shadow:var(--shadow-lg)}\r\n  #whr_embed_hook .wb-active{background:#f0fbf9;border-color:var(--active-accent);box-shadow:var(--shadow-lg)}\r\n  #whr_embed_hook .wb-active::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:6px;border-radius:6px 0 0 6px;background:var(--active-accent)}\r\n  #whr_embed_hook .whr-item li, #whr_embed_hook .whr-item ul, #whr_embed_hook .whr-item ol{\r\n    background:transparent !important; border:0 !important; box-shadow:none !important; border-radius:0 !important;\r\n    padding:2px 0 !important; margin:0 !important; list-style:none !important;\r\n  }\r\n  #whr_embed_hook .whr-title, #whr_embed_hook .whr-item a{color:var(--brand);text-decoration:none;font-weight:600}\r\n  #whr_embed_hook .whr-item a:hover{color:var(--brand-contrast);text-decoration:underline}\r\n\r\n  \/* Full-card clickable overlay *\/\r\n  .wb-hit{position:absolute; inset:0; border-radius:var(--radius); z-index:10; display:block; background:transparent; pointer-events:auto}\r\n\r\n  \/* Close button hardening *\/\r\n  .wb-right-shell > #wb-close{\r\n    position:absolute !important;\r\n    top:12px !important;\r\n    right:12px !important;\r\n    left:auto !important;\r\n    width:36px !important;\r\n    height:36px !important;\r\n    padding:0 !important;\r\n    background:#fff !important;\r\n    color:#c62828 !important;\r\n    border:1px solid var(--border) !important;\r\n    border-radius:10px !important;\r\n    display:flex !important;\r\n    align-items:center !important;\r\n    justify-content:center !important;\r\n    font-weight:700 !important;\r\n    font-size:16px !important;\r\n    line-height:1 !important;\r\n    box-shadow:none !important;\r\n    z-index:100 !important;\r\n  }\r\n  .wb-right-shell > #wb-close:hover{box-shadow:0 2px 6px rgba(0,0,0,.08) !important}\r\n\r\n  \/* Mobile drawer *\/\r\n  .wb-drawer{position:fixed; inset:0; background:#fff; z-index:999999; display:none; flex-direction:column; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}\r\n  .wb-drawer[aria-hidden=\"false\"]{display:flex}\r\n  .wb-drawer-header{position:sticky; top:0; z-index:1000000; display:flex; align-items:center; gap:.5rem;\r\n    padding:.75rem; border-bottom:1px solid var(--border); box-shadow:var(--shadow); background:#fff}\r\n  .wb-nav-btn{display:inline-flex; align-items:center; justify-content:center; padding:.55rem .9rem; min-width:92px;\r\n    border:1px solid var(--border); border-radius:.7rem; background:#fff!important; color:#111!important; font-size:16px!important; line-height:1.1!important;\r\n    text-indent:0!important; font-weight:600; cursor:pointer; z-index:1000001;}\r\n  .wb-nav-btn:hover{box-shadow:0 2px 6px rgba(0,0,0,.06)}\r\n  .wb-drawer-spacer{flex:1}\r\n  #wb-drawer-iframe{flex:1; width:100%; border:0}\r\n\r\n  \/* FAB default hidden; shown on mobile below *\/\r\n  .wb-fab{position:fixed; bottom:18px; left:50%; transform:translateX(-50%); z-index:99998;\r\n    padding:.7rem 1rem; border-radius:999px; border:1px solid var(--border); background:#2f3741; color:#fff; box-shadow:var(--shadow);\r\n    display:none; font-weight:600;}\r\n\r\n  \/* Mobile base layout (will be overridden to stack) *\/\r\n  @media (max-width: 1024px){\r\n    .wb-filters-top{grid-template-columns:1fr 1fr 1fr 1fr auto}\r\n    .wb-split{grid-template-columns:1fr}\r\n    .wb-left{border-right:0;padding-right:0}\r\n    #wb-detail{height:72vh}\r\n    .wb-fab{display:block}\r\n    .wb-filters-top{max-height:0 !important; overflow:hidden !important; padding-bottom:0; transition:max-height .2s ease, padding .2s ease}\r\n    .wb-filters-top.wb-open{max-height:520px !important; padding-bottom:.5rem}\r\n  }\r\n\r\n  \/* --- Mobile-only override: keep Filters button floating --- *\/\r\n  @media (max-width: 1024px){\r\n    #wb-fab, .wb-fab{\r\n      position: fixed !important;\r\n      bottom: 18px !important;\r\n      left: 50% !important;\r\n      transform: translateX(-50%) !important;\r\n      z-index: 2147480000 !important;\r\n      display: block !important;\r\n    }\r\n  }\r\n  @media (min-width: 1025px){\r\n    #wb-fab, .wb-fab{ display:none !important; }\r\n  }\r\n\r\n  \/* --- Mobile-only override: stack filters vertically (one per row) --- *\/\r\n  @media (max-width: 1024px){\r\n    .wb-filters-top{\r\n      grid-template-columns: 1fr !important;   \/* one column *\/\r\n      gap: .6rem !important;\r\n    }\r\n    .wb-filters-top > *{ width: 100% !important; }\r\n    #wb-clear{ width: 100% !important; }       \/* full-width clear button *\/\r\n  }\r\n<\/style>\r\n\r\n<script src=\"https:\/\/www.workable.com\/assets\/embed.js\" type=\"text\/javascript\"><\/script>\r\n<script type=\"text\/javascript\">\r\n  whr(document).ready(function () {\r\n    \/* Workable: no grouping; keep zoom as you prefer *\/\r\n    whr_embed(678129, { base:\"jobs\", detail:\"titles\", zoom:\"state\", grouping:\"none\" });\r\n  });\r\n\r\n  (function () {\r\n    var board = document.querySelector('.wb-board');\r\n    var listHook = document.getElementById('whr_embed_hook');\r\n    var iframe = document.getElementById('wb-detail');\r\n    var placeholder = document.getElementById('wb-placeholder');\r\n    var closeBtn = document.getElementById('wb-close');\r\n    var fallback = document.getElementById('wb-fallback');\r\n    var countEl = document.getElementById('wb-count');\r\n\r\n    var drawer = document.getElementById('wb-drawer');\r\n    var dframe = document.getElementById('wb-drawer-iframe');\r\n    var backBtn = document.getElementById('wb-back');\r\n    var prevBtn = document.getElementById('wb-prev');\r\n    var nextBtn = document.getElementById('wb-next');\r\n\r\n    var fab = document.getElementById('wb-fab');\r\n    var filters = document.getElementById('wb-filters');\r\n\r\n    var inputQ = document.getElementById('wb-q');\r\n    var selState = document.getElementById('wb-state');\r\n    var selLoc = document.getElementById('wb-loc');    \/\/ CITY ONLY\r\n    var selDep = document.getElementById('wb-dept');\r\n\r\n    var itemsCache = [];\r\n    var currentIndex = -1;\r\n\r\n    if (window.matchMedia('(max-width: 1024px)').matches) filters.classList.remove('wb-open');\r\n\r\n    \/* TOP-LEVEL job cards only *\/\r\n    function getCards(){\r\n      var cards = Array.from(document.querySelectorAll('#whr_embed_hook .whr-item'));\r\n      if (cards.length === 0){\r\n        cards = Array.from(document.querySelectorAll('#whr_embed_hook li'))\r\n          .filter(function(li){ return !!li.querySelector('.whr-title a'); });\r\n      }\r\n      return cards;\r\n    }\r\n\r\n    function collectItems(){\r\n      itemsCache = getCards().map(function(card){\r\n        var a = card.querySelector('a[href]');\r\n        return a ? {card:card, href:a.getAttribute('href')} : null;\r\n      }).filter(Boolean);\r\n    }\r\n    function setActive(card){\r\n      getCards().forEach(function(el){ el.classList.remove('wb-active'); });\r\n      if (card) card.classList.add('wb-active');\r\n    }\r\n\r\n    function openDetailDesktop(href, card){\r\n      setActive(card);\r\n      placeholder.style.display = 'none'; fallback.style.display = 'none';\r\n      iframe.style.display = 'block'; iframe.src = href;\r\n      board.classList.remove('wb-single'); board.classList.add('wb-split');\r\n      var t = setTimeout(function(){\r\n        try{ if (!iframe.contentWindow || !iframe.contentWindow.document){ iframe.style.display='none'; fallback.style.display='block'; } }\r\n        catch(e){ iframe.style.display='none'; fallback.style.display='block'; }\r\n      }, 1200);\r\n      iframe.addEventListener('load', function once(){ clearTimeout(t); fallback.style.display='none'; iframe.style.display='block'; iframe.removeEventListener('load', once); });\r\n    }\r\n    function openDetailMobile(index){\r\n      currentIndex = index;\r\n      if (currentIndex < 0 || currentIndex >= itemsCache.length) return;\r\n      var entry = itemsCache[currentIndex];\r\n      setActive(entry.card);\r\n      drawer.setAttribute('aria-hidden', 'false');\r\n      dframe.src = entry.href;\r\n      prevBtn.disabled = (currentIndex <= 0);\r\n      nextBtn.disabled = (currentIndex >= itemsCache.length - 1);\r\n    }\r\n    function closeDesktop(){\r\n      iframe.style.display='none'; iframe.removeAttribute('src');\r\n      fallback.style.display='none'; placeholder.style.display='block';\r\n      setActive(null); board.classList.remove('wb-split'); board.classList.add('wb-single');\r\n    }\r\n    function closeMobile(){ drawer.setAttribute('aria-hidden', 'true'); dframe.removeAttribute('src'); }\r\n\r\n    function ensureStretchedLinks(){\r\n      getCards().forEach(function(card){\r\n        if (card.querySelector('.wb-hit')) return;\r\n        var link = card.querySelector('a[href]'); if (!link) return;\r\n        var href = link.getAttribute('href');\r\n        var a = document.createElement('a');\r\n        a.className = 'wb-hit';\r\n        a.href = href;\r\n        a.setAttribute('aria-label', link.textContent.trim() || 'Open job');\r\n        a.addEventListener('click', function(e){\r\n          e.preventDefault();\r\n          collectItems();\r\n          var idx = itemsCache.findIndex(function(x){return x.card===card;});\r\n          if (window.matchMedia('(max-width: 1024px)').matches) openDetailMobile(idx);\r\n          else openDetailDesktop(href, card);\r\n        });\r\n        card.appendChild(a);\r\n      });\r\n    }\r\n\r\n    listHook.addEventListener('click', function(e){\r\n      var a = e.target.closest('a[href]'); if (!a) return;\r\n      var card = a.closest('.whr-item'); if (!card) return;\r\n      var href = a.getAttribute('href'); if (!href) return;\r\n      e.preventDefault();\r\n      collectItems();\r\n      var idx = itemsCache.findIndex(function(x){return x.card===card;});\r\n      if (window.matchMedia('(max-width: 1024px)').matches) openDetailMobile(idx);\r\n      else openDetailDesktop(href, card);\r\n    }, true);\r\n\r\n    closeBtn.addEventListener('click', closeDesktop);\r\n    backBtn.addEventListener('click', closeMobile);\r\n    prevBtn.addEventListener('click', function(){ if (currentIndex>0) openDetailMobile(currentIndex-1); });\r\n    nextBtn.addEventListener('click', function(){ if (currentIndex<itemsCache.length-1) openDetailMobile(currentIndex+1); });\r\n\r\n    fab.addEventListener('click', function(){\r\n      filters.classList.toggle('wb-open');\r\n      if (filters.classList.contains('wb-open')) filters.scrollIntoView({behavior:'smooth', block:'start'});\r\n    });\r\n\r\n    document.getElementById('wb-clear').addEventListener('click', function(){\r\n      inputQ.value=''; selState.value=''; selLoc.value=''; selDep.value=''; applyFilters();\r\n    });\r\n    [inputQ, selState, selLoc, selDep].forEach(function(el){\r\n      el.addEventListener('input', applyFilters);\r\n      el.addEventListener('change', applyFilters);\r\n    });\r\n\r\n    window.refreshUI = function(){\r\n      ensureStretchedLinks();\r\n      populateSelects();\r\n      var visible = getCards().filter(function(el){ return el.offsetParent !== null; }).length;\r\n      countEl.textContent = visible ? visible.toLocaleString() + ' jobs' : '';\r\n      convertCreationDates(getCards());\r\n    };\r\n\r\n    new MutationObserver(window.refreshUI)\r\n      .observe(listHook, {subtree:true, childList:true, attributes:true, attributeFilter:['style']});\r\n  })();\r\n\r\n  \/* ========= UTILITIES ========= *\/\r\n\r\n  function getStateFromLocation(loc){\r\n    if (!loc) return '';\r\n    return String(loc).split(',')[0].trim(); \/\/ \"State, City\" -> \"State\"\r\n  }\r\n  function getCityFromLocation(loc){\r\n    if (!loc) return '';\r\n    var parts = String(loc).split(',');\r\n    return parts.length > 1 ? parts.slice(1).join(',').trim() : parts[0].trim(); \/\/ \"State, City\" -> \"City\"\r\n  }\r\n\r\n  function getMeta(card){\r\n    var titleEl = card.querySelector('.whr-title a, a');\r\n    var title = titleEl ? titleEl.textContent : '';\r\n    var raw = (card.innerText || '').replace(\/\\s+\/g,' ').trim();\r\n\r\n    function extract(label){\r\n      var m = new RegExp(label + ':\\\\s*([^\\\\n]+)', 'i').exec(raw);\r\n      var val = m ? m[1] : '';\r\n      if (!val) return '';\r\n      val = val\r\n        .replace(\/\\s*(Location:|Department:|Creation\\s*date:|Posted\\s+\\d+.*|Work\\s*type:).*$\/i, '')\r\n        .split(' \u00b7 ')[0].split(' | ')[0].trim();\r\n      return val;\r\n    }\r\n\r\n    var loc = extract('Location');\r\n\r\n    var dep = extract('Department');\r\n    if (!dep) {\r\n      var m2 = \/\\bat\\s+([^\u00b7\\n|,]+)\/i.exec(raw);\r\n      if (m2 && m2[1]) dep = m2[1].trim();\r\n    }\r\n    dep = (dep||'').replace(\/\\s*Location:.*$\/i,'').trim();\r\n\r\n    var state = getStateFromLocation(loc);\r\n    var city  = getCityFromLocation(loc);\r\n\r\n    return {\r\n      title: title,\r\n      titleLower: (title||'').toLowerCase(),\r\n      loc: loc,                   \/\/ full \"State, City\"\r\n      city: city,                 \/\/ city only (used in Location dropdown)\r\n      dept: dep,\r\n      state: state,\r\n      locLower: (loc||'').toLowerCase(),\r\n      cityLower: (city||'').toLowerCase(),\r\n      deptLower: (dep||'').toLowerCase(),\r\n      stateLower: (state||'').toLowerCase()\r\n    };\r\n  }\r\n\r\n  \/* Apply filters *\/\r\n  function applyFilters(){\r\n    var inputQ = document.getElementById('wb-q');\r\n    var selState = document.getElementById('wb-state');\r\n    var selLoc  = document.getElementById('wb-loc');  \/\/ city only\r\n    var selDep  = document.getElementById('wb-dept');\r\n\r\n    var term  = (inputQ.value||'').toLowerCase().trim();\r\n    var byState = (selState.value||'').toLowerCase().trim();\r\n    var byCity = (selLoc.value||'').toLowerCase().trim();\r\n    var byDep = (selDep.value||'').toLowerCase().trim();\r\n\r\n    var cards = (function(){ return Array.from(document.querySelectorAll('#whr_embed_hook .whr-item')); })();\r\n    if (cards.length === 0){\r\n      cards = Array.from(document.querySelectorAll('#whr_embed_hook li'))\r\n        .filter(function(li){ return !!li.querySelector('.whr-title a'); });\r\n    }\r\n\r\n    cards.forEach(function(card){\r\n      var m = getMeta(card);\r\n      var ok =\r\n        (!term || m.titleLower.includes(term)) &&\r\n        (!byState || (m.stateLower && m.stateLower.includes(byState))) &&\r\n        (!byCity || (m.cityLower && m.cityLower.includes(byCity))) &&\r\n        (!byDep || (m.deptLower && m.deptLower.includes(byDep)));\r\n      card.style.display = ok ? '' : 'none';\r\n    });\r\n\r\n    window.refreshUI();\r\n  }\r\n\r\n  \/* Dates: \"Creation date: YYYY-MM-DD\" -> \"Posted N days ago\" *\/\r\n  function convertCreationDates(cards){\r\n    var today = new Date();\r\n    cards.forEach(function(root){\r\n      var walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, null);\r\n      var textNodes = [];\r\n      while (walker.nextNode()) textNodes.push(walker.currentNode);\r\n      textNodes.forEach(function(n){\r\n        var s = n.nodeValue;\r\n        s = s.replace(\/Creation\\s*date:\\s*(\\d{4}-\\d{2}-\\d{2})\/ig, function(_, dateStr){\r\n          var d = new Date(dateStr + 'T00:00:00');\r\n          if (isNaN(d)) return _;\r\n          var diff = Math.floor((today - d) \/ 86400000);\r\n          return diff<=0 ? 'Posted today' : (diff===1 ? 'Posted 1 day ago' : 'Posted '+diff+' days ago');\r\n        });\r\n        n.nodeValue = s;\r\n      });\r\n    });\r\n  }\r\n\r\n  \/* Populate dropdowns from cards that match the OTHER active filters *\/\r\n  function populateSelects(){\r\n    var selState = document.getElementById('wb-state');\r\n    var selLoc = document.getElementById('wb-loc');   \/\/ city only\r\n    var selDep = document.getElementById('wb-dept');\r\n\r\n    var q = (document.getElementById('wb-q').value||'').toLowerCase().trim();\r\n    var chosenState = (selState.value||'').toLowerCase().trim();\r\n    var chosenCity  = (selLoc.value||'').toLowerCase().trim();\r\n    var chosenDep   = (selDep.value||'').toLowerCase().trim();\r\n\r\n    var cards = (function(){ return Array.from(document.querySelectorAll('#whr_embed_hook .whr-item')); })();\r\n    if (cards.length === 0){\r\n      cards = Array.from(document.querySelectorAll('#whr_embed_hook li'))\r\n        .filter(function(li){ return !!li.querySelector('.whr-title a'); });\r\n    }\r\n\r\n    var stateSet = new Set(), citySet = new Set(), depSet = new Set();\r\n\r\n    cards.forEach(function(card){\r\n      var m = getMeta(card);\r\n\r\n      var matchesQAndDep = (!q || m.titleLower.includes(q)) &&\r\n                           (!chosenDep || (m.deptLower && m.deptLower.includes(chosenDep)));\r\n      if (matchesQAndDep) {\r\n        if (!chosenCity || (m.cityLower && m.cityLower.includes(chosenCity))) {\r\n          if (m.state) stateSet.add(m.state);\r\n        }\r\n      }\r\n\r\n      if (matchesQAndDep) {\r\n        var inChosenState = !chosenState || (m.stateLower && m.stateLower.includes(chosenState));\r\n        if (inChosenState && m.city) citySet.add(m.city); \/\/ CITY ONLY\r\n      }\r\n\r\n      var matchesQStateCity = (!q || m.titleLower.includes(q)) &&\r\n                              (!chosenState || (m.stateLower && m.stateLower.includes(chosenState))) &&\r\n                              (!chosenCity || (m.cityLower && m.cityLower.includes(chosenCity)));\r\n      if (matchesQStateCity && m.dept) depSet.add(m.dept);\r\n    });\r\n\r\n    fillSelectClean(selState, Array.from(stateSet).sort(), 'State');\r\n    fillSelectClean(selLoc,   Array.from(citySet).sort(),  'Location');\r\n    fillSelectClean(selDep,   Array.from(depSet).sort(),   'Department');\r\n  }\r\n\r\n  function fillSelectClean(select, values, placeholder){\r\n    var previous = select.value;\r\n    select.innerHTML = '<option value=\"\">' + placeholder + '<\/option>' +\r\n      values.map(function(v){ return '<option>' + v.replace(\/<\/g,'&lt;') + '<\/option>'; }).join('');\r\n    if ([].some.call(select.options, function(o){ return (o.value || o.textContent) === previous; })) {\r\n      select.value = previous;\r\n    } else {\r\n      select.value = '';\r\n    }\r\n  }\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Careers State Location Department CLEAR FILTERS \u2715 Select a job to see details. We couldn\u2019t show the job inside this page. \u2190 Results \u25c0 \u25b6 Filters<\/p>","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1658","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/pages\/1658","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/comments?post=1658"}],"version-history":[{"count":0,"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/pages\/1658\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.texasabacenters.com\/es\/wp-json\/wp\/v2\/media?parent=1658"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}