var zipsearch_widget = function(params) {
  var zrdebug = 0;

  var ze = function(id) { var el = document.getElementById(id); return el ? el : { value : '', style : {} }; }
  var zc = function(name) { if (document.querySelectorAll) { return document.querySelectorAll('.' + name); } else { return  za('.' + name); } }
  var za = function(selector) {
    var doc = document,
      head = doc.documentElement.firstChild,
      styleTag = doc.createElement('STYLE');
    head.appendChild(styleTag);
    doc.__qsaels = [];
    styleTag.styleSheet.cssText = selector + "{x:expression(document.__qsaels.push(this))}";
    window.scrollBy(0, 0);
    return doc.__qsaels;
  }
  var zv = function(id) {
    // Returns true if any part of the element is on the screen
    el = ze(id);
    var rect = el.getBoundingClientRect();

    var windowHeight = (window.innerHeight || document.documentElement.clientHeight);
    var windowWidth = (window.innerWidth || document.documentElement.clientWidth);

    var vertInView = (rect.top <= windowHeight) && ((rect.top + rect.height) >= 0);
    var horInView = (rect.left <= windowWidth) && ((rect.left + rect.width) >= 0);

    return (vertInView && horInView);
  }
  var zs = {};
  zs.log = function(msg) {
    if (zrdebug && window.console && window.console.log) {
      var args = Array.prototype.slice.call(arguments, 1);
      console.log(msg,args);
    }
  }
  zs.ready = function(fn) {
    if (document.addEventListener) {
      document.addEventListener('DOMContentLoaded', fn);
    }
    else {
      document.attachEvent('onreadystatechange', function() {
        if (document.readyState === 'interactive')
          fn();
      });
    }
  }
  zs.getAttribute = function(el, attr) {
    if (el.getAttribute) {
      return el.getAttribute(attr);
    }
    else if (el.attributes) {
      el.attributes[attr].nodeValue;
    }
    return null;
  }
  zs.get = function(args) {
    var generatedFunction = 'jsonp'+Math.round(Math.random()*1000001);
    args.data['api_key'] = params.api_key;
    args.data['callback'] = generatedFunction;
    window[generatedFunction] = function(json){
      args.success(json);
      // remove for ie
      //delete window[generatedFunction];
    };

    var request_args = new Array;
    for (var i in args.data) {
      request_args.push(i + '=' + encodeURIComponent(args.data[i]));
    }
    args.url += '?' + request_args.join('&');

    var jsonpScript = document.createElement('script');
    jsonpScript.setAttribute("src", args.url)
    document.getElementsByTagName("head")[0].appendChild(jsonpScript);
  }
  zs.log_event = function(event_type, user_action) {
    zs.get({
      url : params.log_event_url,
      success : function(){},
      data : {
        event_type : event_type,
        properties : JSON.stringify({ user_action : user_action,
                     widget_type : params.widget_type,
                     widget_event_log_id : params.widget_event_log_id
        })
      }
    });
  }
  zs.on = function(els, event, handler) {
    for (i in els) {
      var el = els[i];
      if (el.addEventListener) {
        el.addEventListener(event, handler);
      }
      else if (el.attachEvent) {
        el.attachEvent('on' + event, function(evt) {
          handler.call(evt.srcElement, evt);
        });
      }
    }
  }
  zs.cookie = function(name, value, days) {
    if (value) {
      var expiration = '';
      if (days) {
        var today = new Date();
        var dt = new Date(today.getTime() + days * 24 * 60 * 60 * 1000);
        expiration = "expires=" + dt.toUTCString() + "; ";
      }
      document.cookie = name + "=" + encodeURIComponent(value) + "; " + expiration + "path=/";
    }
    else {
      if (document.cookie.length > 0) {
        var start = document.cookie.indexOf(name + "=");
        if (start != -1) {
          start = start + name.length + 1;
          end = document.cookie.indexOf(";", start);
          if (end == -1) {
            end = document.cookie.length;
          }
          return decodeURIComponent(document.cookie.substring(start, end));
        }
      }
    }
  }
  zs.search_keyup = function(event) {
    if (event && event.keyCode === 13) {
      (event.preventDefault) ? event.preventDefault() : event.returnValue = false;
      zs.search();
    }
  }
  zs.search_box_keyup = function(event) {
    if (event && event.keyCode === 13) {
      (event.preventDefault) ? event.preventDefault() : event.returnValue = false;
      zs.search_box();
    }
  }
  zs.modal_keyup = function(event) {
    if (event && event.keyCode === 27 && ze("zs_modal").style.display != 'none') {
      ze("zs_modal").style.display = 'none';
      zs.log_event('zipsearch_widget_alert', 'escape');
    }
  }
  zs.urlParam = function(name){
    var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
    return (results) ? decodeURIComponent(results[1]) : false;
  }
  zs.search = function(event) {
    zs.log("Start search...");
    zs.resetOptions();
    var non_interaction = 1;
    if (event) {
      (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;

      // event means we were called by a user action, not automatically during init
      non_interaction = 0;
    }

    if (zs.options.save_state) {
      zs.log("Saving state");
      zs.cookie("zs_search", zs.options.search);
      zs.cookie("zs_location", zs.options.location);
      zs.cookie("zs_radius_miles", zs.options.radius_miles);
      zs.cookie("zs_days_ago", zs.options.days_ago || ' ');
    }

    var page = zs.getAttribute(this, 'data-page');
    if (!page) page = 1;
    ze("zs_results").style.display = 'none';
    ze("zr_attributed").style.display = 'none';
    ze("zs_modal").style.display = 'none';
    ze("ajax_loader").style.display = '';
    zs.get({
      url: params.api_url,
      data : {
        search         : zs.options.search || '',
        location       : zs.options.location || '',
        radius_miles   : zs.options.radius_miles || '',
        days_ago       : zs.options.days_ago == 'anytime' ? '' : zs.options.days_ago || '',
        jobs_per_page  : zs.options.jobs_per_page || '',
        page           : page,
        format         : params.widget_type,
        widget_version : params.widget_version || '',
        widget_event_log_id : params.widget_event_log_id || '',
        non_interaction : non_interaction,
        alerts_api_key : zs.options.alerts_api_key
      },
      success: function(data){
        zs.log("zr jobs widget - ajax req success");
        zs.display(data);

        //When clicking the pager and the results are not visible
        if (page > 1 && !zv("zs_results")) {
          ze("zs_results").scrollIntoView();
        }
      },
      error: function(status, error) {
        if (typeof error == "object") {
          error = "error message: " + error.message;
        }
        zs.log("zr jobs widget error: " + status + ", " + error);
      }
    });
  }
  zs.search_box = function(event) {
    zs.log("Start search...");
    zs.resetOptions();
    if (event)
      (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;

    zs.log_event('zipsearch_widget_click', 'search_box');
    if (zs.options.save_state) {
      var bAll = zs.options.save_state.constructor === Array ? false : true;
      zs.log("Saving state");
      zs.options.days_ago = zs.options.days_ago || ' ';
      for (var i=0; i<zs.search_param_names.length; i++) {
        if (bAll || zs.options.save_state.indexOf(zs.search_param_names[i]) > -1) {
          zs.cookie( 'zs_' + zs.search_param_names[i], zs.options[zs.search_param_names[i]] );
        }
      }
    }

    zs.goto_search_url();
  }
  zs.goto_search_url = function() {
    var search_url = '';
    if (zs.options.search_url) {
      search_url = zs.options.search_url;

      if (zs.options.use_url_params) {
        var url_params = '';
        var bAll = zs.options.use_url_params.constructor === Array ? false : true;
        for (var i=0; i<zs.search_param_names.length; i++) {
          if ( (bAll || zs.options.use_url_params.indexOf(zs.search_param_names[i]) > -1)
              && ! (typeof zs.options[zs.search_param_names[i]] === 'undefined') ) {
            url_params += zs.search_param_names[i] + "=" + encodeURIComponent(zs.options[zs.search_param_names[i]]) + "&";
          }
        }
        url_params = url_params.slice(0, -1);
        if (url_params) {
          search_url += (search_url.indexOf("?") > -1 ? "&" : "?" ) + url_params;
        }
      }
    } else {
      search_url = 'https://www.ziprecruiter.com/candidate/search';
      search_url += '?tsid=' + params.traffic_source_id;
      search_url += '&search=' + encodeURIComponent(zs.options.search);
      search_url += '&location=' + encodeURIComponent(zs.options.location);
    }

    window.location.href = search_url;
  }
  zs.see_more = function(event) {
    if (event)
      (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;

    zs.goto_search_url();
  }
  zs.display = function(data) {
    ze("zs_no_jobs").style.display = 'none';
    ze("zs_results").innerHTML = data.html;
    if (data.total_jobs == 0) {
      ze("zs_no_jobs").style.display = '';
    }
    zs.applyCustomStyles();
    ze("zr_mini").style.display = '';
    ze("ajax_loader").style.display = 'none';
    ze("zs_results").style.display = '';
    ze("zr_attributed").style.display = '';
    zs.on(zc("_zr_pager"),"click", zs.search);
    if (zs.options.alerts_api_key.length && params.widget_type.substr(0, 4) != "mini")
      zs.on(zc("zr_job_link"),"click", zs.showAlertModal);
  }
  zs.resetOptions = function() {
    zs.options = {};
    for (var i in zs.options_original) {
      zs.options[i] = zs.options_original[i];
    }
    //# Order of precedence is elements (search box, select box, etc..), options (url params, cookie values, options passed to init), defaults
    var elements = {
      search       : zs.options['search_id'] ? zs.options['search_id'] : "zs_search",
      location     : zs.options['location_id'] ? zs.options['location_id'] : "zs_location",
      radius_miles : zs.options['radius_id'] ? zs.options['radius_id'] : "zs_radius",
      days_ago     : "zs_days"
    };
    for (var i in elements) {
      var element_value = ze(elements[i]).value;
      if (element_value !== '') {
        zs.options[i] = element_value || zs.options_original[i] || '';
      }
    }

    var use_global = (typeof zs.options.save_state === 'undefined')
                      ? true : zs.options.save_state;

    var defaults = {
      container         : 'zipsearch_container',
      jobs_per_page     : 5,
      alerts_api_key    : '',
      search            : use_global ? params.global_search || '' : '',
      location          : use_global ? params.global_location || params.default_location
                          : params.default_location,
      search_id         : 'zs_search',
      location_id       : 'zs_location',
      radius_id         : 'zs_radius',
      submit_id         : 'zs_submit',
      alert_skip_clicks : 2,
      save_state        : 1
    };
    for (var i in defaults) {
      if (typeof zs.options[i] === 'undefined')
        zs.options[i] = zs.options_original[i];
      if (typeof zs.options[i] === 'undefined')
        zs.options[i] = defaults[i];
    }
  }
  zs.applyCustomStyles = function() {
    var style_options = {
      width                 : { 'class' : "zr_widget", prop : "width" },
      font_family           : { 'id'    : "zr_widget", prop : "fontFamily" },
      font_size_title       : { 'class' : "zr_job_link", prop : "fontSize" },
      font_size_description : { 'class' : "zr_job_desc", prop : "fontSize" },
      color_title           : { 'class' : "zr_job_link", prop : "color" },
      color_description     : { 'class' : "zr_job_desc", prop : "color" },
      color_background      : { 'id'    : "zr_widget_container", prop : "backgroundColor" }
    };
    for (var i in style_options) {
      if (zs.options[i]) {
        var style_type = style_options[i];
        var els = style_type.id ? [ze(style_type.id)] : zc(style_type['class']);
        for (var j=0; j < els.length; j++) {
          els[j].style[style_type.prop] = zs.options[i];
        }
      }
    }
  }
  zs.showAlertModal = function(event) {
    var shown = zs.cookie("shown_modal") || 0;
    var signed_up = zs.cookie("shown_modal_" + zs.options.search) || 0;
    if (signed_up > 0 || parseInt(shown) >= zs.options.alert_skip_clicks) {
      return;
    }
    if (event) {
      (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;
    }
    ze("zs_job_type").innerHTML = zs.options.search;
    ze("zs_location_type").innerHTML = zs.options.location;
    ze("zs_continue_link").href = this.href;
    ze("zs_create_alert").href = this.href;
    ze("zs_modal").style.display = '';
    zs.log_event('zipsearch_widget_alert', 'show');
  }
  zs.continueAlertModal = function(event) {
    var shown = zs.cookie("shown_modal") || 0;
    zs.cookie("shown_modal", parseInt(shown) + 1, 1);
    ze("zs_modal").style.display = 'none';
    zs.log_event('zipsearch_widget_alert', 'skip');
  }
  zs.createAlert = function(event) {
    zs.log("Start alertCreate...");
    zs.resetOptions();
    var email_address = ze("zs_email_address").value;
    if (!email_address.length) {
      alert("Please enter a valid email address");
      (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;
      return false;
    }
    zs.get({
      url: params.create_alert_url,
      data : {
        email_address  : ze("zs_email_address").value,
        search         : zs.options.search,
        location       : zs.options.location,
        radius_miles   : zs.options.radius_miles,
        alerts_api_key : zs.options.alerts_api_key,
        widget_event_log_id : params.widget_event_log_id
      },
      success: function(data){
        zs.log("zr alert create - ajax req success");
        ze("zs_modal").style.display = 'none';
        zs.cookie("shown_modal_" + zs.options.search, 1, 1);
      }
    });
  }

  zs.setSelect = function(element, value) {
    var options = element.options;
    if (!options)
      return;
    for (var i=0; i < options.length; i++) {
      options[i].selected = false;
      if (options[i].value == value) {
        options[i].selected = true;
      }
    }
  }

  zs.init_params = function(options) {
    zs.get({
      url: params.init_url,
      data : {
        widget_version : params.widget_version,
        widget_type    : params.widget_type,
        options        : JSON.stringify(options)
      },
      success: function(data){
        for (var i in data.params) {
          params[i] = data.params[i];
        }

        // data.options is returned from the call, options is the config object passed to this method
        if (zs.init(data.options) && options.callback_post_init && typeof options.callback_post_init === 'function') {
          options.callback_post_init.call();
        }
      }
    });
  }

  zs.init = function(options) {
    var container = ze(options.container);
    if (!container) {
      zs.log("You must specify 'container' in the options", options.container);
      return false;
    }
    var style = document.createElement('style');
    document.getElementsByTagName("head")[0].appendChild(style);
    style.setAttribute('type', 'text/css');
    if (style.styleSheet) {
      style.styleSheet.cssText = params.widget_style;
    }
    else {
      style.innerHTML = params.widget_style;
    }
    container.innerHTML = params.widget_html;

    zs.options_original = options;
    /* options :
      search
      search_id
      location
      location_id
      radius_miles
      radius_id
      submit_id
      days_ago
      jobs_per_page
      container
      alerts_api_key
      width
      font_family
      font_size_title
      font_size_description
      font_size_link
      color_title
      color_description
      color_link
      color_background
      save_state
    */

    zs.resetOptions();
    zs.applyCustomStyles();
    zs.search_param_names = ["search", "location", "radius_miles", "days_ago"];

    var cookie_values = {};
    if (zs.options.save_state) {
      var bAll = zs.options.save_state.constructor === Array ? false : true;
      for (var i=0; i<zs.search_param_names.length; i++) {
        if (bAll || zs.options.save_state.indexOf(zs.search_param_names[i]) > -1) {
          cookie_values[ zs.search_param_names[i] ] = zs.cookie( 'zs_' + zs.search_param_names[i] );
        }
      }
    }

    //# Order of precedence is url parameters, cookies, passed options
    zs.options.search = zs.urlParam("search") || cookie_values["search"] || zs.options.search;
    zs.options.location = zs.urlParam("location") || cookie_values["location"] || zs.options.location;
    zs.options.radius_miles = zs.urlParam("radius_miles") || cookie_values["radius_miles"] || options.radius_miles || zs.options.radius_miles;
    zs.options.days_ago = zs.urlParam("days_ago") || cookie_values["days_ago"] || options.days_ago || zs.options.days_ago;
    ze(zs.options.search_id).value = zs.options.search;
    ze(zs.options.location_id).value = zs.options.location;

    if (params.widget_type == 'search-box') {
      zs.on([ze("zs_submit_box")],"click", zs.search_box);
      zs.on([ze("zs_search")],"keyup", zs.search_box_keyup);
      zs.on([ze("zs_location")],"keyup", zs.search_box_keyup);
    }
    else if (params.widget_type == 'reseller-candidate') {
      zs.on([ze("zs_submit_box")],"click", zs.search_box);
      zs.on([ze("zs_search")],"keyup", zs.search_box_keyup);
      zs.on([ze("zs_location")],"keyup", zs.search_box_keyup);

      zs.on([ze("zs_post_and_print_button")],"click", function() {
        zs.log_event('zipsearch_widget_click', 'reseller_print');
        window.location.href = zs.options['reseller_print_url'];
      });
      zs.on([ze("zs_post_only_button")],"click", function() {
        zs.log_event('zipsearch_widget_click', 'reseller_post');
        window.location.href = zs.options['reseller_post_url'];
      });
    }
    else {
      if (zs.options.alerts_api_key.length && params.widget_type.substr(0, 4) != "mini") {
        zs.on([window], "keyup", zs.modal_keyup);
        zs.on([ze("zs_modal_backdrop")],"click", function() {
          ze("zs_modal").style.display = 'none';
          zs.log_event('zipsearch_widget_alert', 'clickback');
        });
      }
      zs.setSelect(ze(zs.options.radius_id), zs.options.radius_miles);
      zs.setSelect(ze("zs_days"), zs.options.days_ago);
      zs.on([ze(zs.options.submit_id)],"click", zs.search);
      zs.on([ze("zs_radius")],"change", zs.search);
      zs.on([ze("zs_days")],"change", zs.search);
      zs.on([ze(zs.options.search_id)],"keypress", zs.search_keyup);
      zs.on([ze(zs.options.location_id)],"keypress", zs.search_keyup);
      zs.on([ze("zs_create_alert")],"click", zs.createAlert);
      zs.on([ze("zs_continue_link")], "click", zs.continueAlertModal);
      zs.on(zc("zs_search_alt"),"click", function(event) {
        (event.preventDefault) ?  event.preventDefault() : event.returnValue = false;
        ze(zs.options.search_id).value = zs.getAttribute(this, 'data-title') || 'Sales';
        zs.search();
      });
      zs.on([ze("zs_more_button")], "click", zs.see_more);
      zs.search();
    }

    if (zs.options.header_text) {
      ze("zs_header").textContent = zs.options.header_text;
    }

    return true;
  }

  return {
    init : zs.init_params
  };
};
zipsearch = zipsearch_widget({"traffic_source_id":160010539,"api_url":"https://api.ziprecruiter.com/find-jobs/v1","init_url":"https://api.ziprecruiter.com/find-jobs/v1/widget_init","widget_html":"<div id=\"zs_modal\"> <form method=\"post\"> <div id=\"zs_modal_backdrop\"></div> <div id=\"zs_modal_dialog\"> <div id=\"zs_modal_content\"> <div id=\"zs_modal_body\"> <p id=\"zs_get_jobs\">Get the best <strong id=\"zs_job_type\"></strong> jobs in <strong id=\"zs_location_type\"></strong> sent to your inbox daily.</p> <label for=\"email_address\">Email Address:</label> <input name=\"email_address\" type=\"email\" class=\"zs_search_box\" id=\"zs_email_address\" placeholder=\"Enter your email address\"> <a id=\"zs_create_alert\" href=\"#\" target=\"_blank\">Create Alert</a> </form> <div class=\"zs_border_wrap\"> <div class=\"zs_border_center zs_border_title\"> <span>OR</span> </div> </div> <div id=\"zs_continue_block\"> <a id=\"zs_continue_link\" target=\"_blank\" href=\"#\">Skip, View Job</a> </div> </div> </div><!-- /.zs_modal_content --> </div> </form> </div> <form action=\"#\"> <div id=\"zr_pro\" class=\"zr_widget\" style=\"width: 100%;\"> <div id=\"zs_search_cta\">Search Jobs</div> <div id=\"zs_search_container\"> <div id=\"zs_search_module\"> <div class=\"zs_search_container\"> <label for=\"zs_search\" class=\"zs_search_label\">Job Title</label> <input id=\"zs_search\" name=\"zs_search\" class=\"zs_search_box\" value=\"\" placeholder=\"Job title or keywords\"> </div> <div class=\"zs_search_container\"> <label for=\"zs_location\" class=\"zs_search_label\">Location</label> <input id=\"zs_location\" name=\"zs_location\" class=\"zs_search_box\" value=\"\" placeholder=\"City, state, or ZIP\"> </div> <input id=\"zs_submit\" type=\"button\" value=\"Search\"> </div> <div class=\"zs_clear\"></div> </div> <div id=\"zr_pro_widget_filter\"> <div class=\"filter_wrapper\"> <select id=\"zs_radius\" name=\"zs_radius\" class=\"zr_filter_radius\"> <option value=\"100\">within 100 miles</option> <option value=\"50\">within 50 miles</option> <option value=\"25\">within 25 miles</option> <option value=\"10\" selected>within 10 miles</option> <option value=\"5\">within 5 miles</option> </select> <div class=\"zs_down_arrow\"></div> </div> <div class=\"filter_wrapper\"> <select id=\"zs_days\" name=\"zs_days\" class=\"zr_filter_days\"> <option value=\"anytime\" selected>posted anytime</option> <option value=\"30\">within 30 days</option> <option value=\"10\">within 10 days</option> <option value=\"5\">within 5 days</option> <option value=\"1\">within 1 day</option> </select> <div class=\"zs_down_arrow\"></div> </div> </div> <div id=\"zs_results\" style=\"display:none;\"></div> <div id=\"zs_no_jobs\" style=\"display:none;\"> <br> <p id=\"zs_no_jobs_copy\">No jobs found. Check out these popular search terms or try again:</p> <ul> <li><a class=\"zs_search_alt\" data-title=\"Account Manager\" href=\"https://www.ziprecruiter.com/jobs/account-manager\">Account Manager Jobs</a></li> <li><a class=\"zs_search_alt\" data-title=\"Customer Service\" href=\"https://www.ziprecruiter.com/jobs/customer-service\">Customer Service Jobs</a></li> <li><a class=\"zs_search_alt\" data-title=\"Management\" href=\"https://www.ziprecruiter.com/jobs/management\">Management Jobs</a></li> <li><a class=\"zs_search_alt\" data-title=\"Sales Associate\" href=\"https://www.ziprecruiter.com/jobs/sales-associate\">Sales Associate Jobs</a></li> <li><a class=\"zs_search_alt\" data-title=\"Software Engineer\" href=\"https://www.ziprecruiter.com/jobs/software-engineer\">Software Engineer Jobs</a></li> </ul> </div> <div id=\"ajax_loader\" style=\" \"> <div id=\"zs_loader_container\"> <div id=\"zs_loaderG\"> <div id=\"blockG_1\" class=\"zs_loader_blockG\"></div> <div id=\"blockG_2\" class=\"zs_loader_blockG\"></div> <div id=\"blockG_3\" class=\"zs_loader_blockG\"></div> </div> </div> </div> </div> </form>","widget_version":"v2","create_alert_url":"https://api.ziprecruiter.com/job-alerts/widget/alert","widget_type":"pro","api_key":"pip2djw7r25tpxymfny889j4yzzabndw","log_event_url":"https://api.ziprecruiter.com/find-jobs/v1/event","widget_style":"<style> /* Reset */ #zipsearch_container html, #zipsearch_container body, #zipsearch_container div, #zipsearch_container span, #zipsearch_container iframe, #zipsearch_container h1, #zipsearch_container h2, #zipsearch_container h3, #zipsearch_container h4, #zipsearch_container h5, #zipsearch_container h6, #zipsearch_container p, #zipsearch_container pre, #zipsearch_container a, #zipsearch_container em, #zipsearch_container img, #zipsearch_container samp, #zipsearch_container strong, #zipsearch_container sub, #zipsearch_container sup, #zipsearch_container b, #zipsearch_container i, #zipsearch_container ol, #zipsearch_container ul, #zipsearch_container li, #zipsearch_container fieldset, #zipsearch_container form, #zipsearch_container label, #zipsearch_container legend, #zipsearch_container table, #zipsearch_container caption, #zipsearch_container thead, #zipsearch_container tr, #zipsearch_container th, #zipsearch_container td, #zipsearch_container article, #zipsearch_container aside, #zipsearch_container footer, #zipsearch_container header, #zipsearch_container nav, #zipsearch_container section { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #zipsearch_container article, #zipsearch_container aside, #zipsearch_container details, #zipsearch_container figcaption, #zipsearch_container figure, #zipsearch_container #zipsearch_container footer, #zipsearch_container header, #zipsearch_container menu, #zipsearch_container nav, #zipsearch_container section { display: block; } #zipsearch_container body { line-height: 1; } #zipsearch_container form { margin: 0 auto; } #zipsearch_container ol, #zipsearch_container ul { list-style: none; } #zipsearch_container table { border-collapse: collapse; border-spacing: 0; } /* Base CSS */ #zipsearch_container { width: 100%; } #zr_pro_widget_filter { width: 100%; font-family: Arial, Helvetica, sans-serif; } label { font-family: Arial, Helvetica, sans-serif; } #zs_radius, #zs_days { display: inline-block; background: transparent; } #zr_pro_widget_filter select { line-height: 22px; margin: 0 1% 8px 0; font-size: 13px; width: auto; position: relative; z-index: 10; border: 1px solid #111; margin-top: 10px; padding: 5px 35px 5px 5px; border: 1px solid #aaa; color: #666; height: 34px; -webkit-appearance: none; -moz-appearance: none; text-align: center; appearance: none; cursor: pointer; border-radius: 3px; background-size: 10px; } #zr_pro_widget_filter select:last-child { margin-right: 0; } #zr_pro_widget_filter .filter_wrapper { display: inline-block; position: relative; } #zr_pro_widget_filter .zs_down_arrow { z-index: 8; cursor: pointer; width: 0; height: 0; border-left: 7px solid transparent; border-right: 7px solid transparent; display: inline-block; border-top: 7px solid; border-top-color: #aaa; position: absolute; top: 24px; left: 112px; } .zs_search_box { height: 38px; font-size: 15px; line-height: 30px; border: 1px solid #bbb; -webkit-border-radius: 3px; padding: 0px 6px; color: #323436; width: 96%; max-width: 600px; box-sizing: border-box; background-color: #FFF; width: 100%; padding-left:35px; } #zs_search { background: url(\"//www.ziprecruiter.com/img/zs-pro/search_icon.svg\") 10px 11px no-repeat scroll #FFF; background-size: 16px; } #zs_location { background: url(\"//www.ziprecruiter.com/img/zs-pro/pin_icon.svg\") 10px 11px no-repeat scroll #FFF; background-size: 14px; } #zs_submit { font-size: 28px; border: 1px solid #FFF; color: #FFF; font-size: 15px; background-color: #768CFA; padding: 0px 20px; height: 38px; line-height: 30px; clear: both; display: inline-block; outline: 0; margin: 0; min-width: 100px; max-width: 130px; border-radius: 3px; margin-right: 17px; letter-spacing: .4px; margin-bottom: 17px; margin-top: 17px; } #zs_submit:hover{ border: 1px solid #c8c8c8; background: #8fa2ff; } #zs_submit:active{ border: 1px solid #c8c8c8; background: #e9e9e9; background: -webkit-linear-gradient(top,#e9e9e9,#f8f8f8); background: linear-gradient(top,#e9e9e9,#f8f8f8); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#e9e9e9,endColorstr=#f8f8f8,GradientType=1); text-shadow: 0px 1px 1px #ffffff; } .zs_search_container { width: 100%; margin: 0 1% 17px 0; display: inline-block; max-width: 200px; border-radius: 0; text-align: left; } .zs_search_container:last-child { margin-right: 0; } .zs_search_label { font-size: 14px; font-weight: 400; color: #343536; margin-bottom: 3px; } #zs_search_module { margin: 0; width: 100%; } #zs_results { width: 100%; float: left; clear: both; } #zr_attributed { max-width: 768px; clear: both; padding-left: 15px; font-size: 17px; text-align: center; font-family: Arial, Helvetica, sans-serif; margin-bottom: 40px; } #zr_attributed a { text-decoration: none; color: #277f6a; font-size: 15px; display: inline-block; margin-right: 4px; } #zr_attributed span { color: #808080; text-decoration: none; display: inline-block; float: left; padding-top: 10px; } #zr_pro_widget_filter { display: inline-block; width: 100%; height: auto; margin-bottom: 7px; clear: both; } #zs_search_container { margin-top: 15px; padding: 15px; padding-top: 25px; background-color: #f8f8f8; border: 1px solid #ccc; clear: both; } #zs_search_cta { margin-bottom: -15px; display: none; margin-top: 15px; background-color: #ccc; padding: 10px 15px; font-size: 15px; font-weight: 700; color: #333; font-family: Arial, Helvetica, sans-serif; } .zs_clear { visibility: hidden; display: block; font-size: 0; content: \" \"; clear: both; height: 0; } span#zr_logo_container { padding: 7px 5px; height: 50px; width: 120px; } #zs_loader_container { margin: 0 auto; text-align: center; display: block; width: 100%; max-width: 768px; padding-top: 80px; } #zs_loaderG { display: table; margin: 0 auto; } .zs_loader_blockG { background-color:#b2e522; float:left; height:57px; margin: 0 1px; width:15px; opacity:0.1;; -moz-animation-name:bounceG; -moz-animation-duration:0.9s; -moz-animation-iteration-count:infinite; -moz-animation-direction:linear; -moz-transform:scale(0.7); -webkit-animation-name:bounceG; -webkit-animation-duration:0.9s; -webkit-animation-iteration-count:infinite; -webkit-animation-direction:linear; -webkit-transform:scale(0.7); -ms-animation-name:bounceG; -ms-animation-duration:0.9s; -ms-animation-iteration-count:infinite; -ms-animation-direction:linear; -ms-transform:scale(0.7); -o-animation-name:bounceG; -o-animation-duration:0.9s; -o-animation-iteration-count:infinite; -o-animation-direction:linear; -o-transform:scale(0.7); animation-name:bounceG; animation-duration:0.9s; animation-iteration-count:infinite; animation-direction:linear; transform:scale(0.7); } #blockG_1 { -moz-animation-delay:0.27s; -webkit-animation-delay:0.27s; -ms-animation-delay:0.27s; -o-animation-delay:0.27s; animation-delay:0.27s; } #blockG_2 { -moz-animation-delay:0.36s; -webkit-animation-delay:0.36s; -ms-animation-delay:0.36s; -o-animation-delay:0.36s; animation-delay:0.36s; } #blockG_3 { -moz-animation-delay:0.45s; -webkit-animation-delay:0.45s; -ms-animation-delay:0.45s; -o-animation-delay:0.45s; animation-delay:0.45s; } @-moz-keyframes bounceG { 0% { -moz-transform:scale(1.2); opacity:1; } 100% { -moz-transform:scale(0.7); opacity:0.1; } } @-webkit-keyframes bounceG{ 0% { -webkit-transform:scale(1.2); opacity:1; } 100% { -webkit-transform:scale(0.7); opacity:0.1; } } @-ms-keyframes bounceG { 0% { -ms-transform:scale(1.2); opacity:1; } 100% { -ms-transform:scale(0.7); opacity:0.1; } } @-o-keyframes bounceG{ 0% { -o-transform:scale(1.2); opacity:1; } 100% { -o-transform:scale(0.7); opacity:0.1; } } @keyframes bounceG{ 0% { transform:scale(1.2); opacity:1; } 100% { transform:scale(0.7); opacity:0.1; } } #zs_modal { overflow-x: hidden; overflow-y: auto; opacity: 1; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; overflow: hidden; -webkit-overflow-scrolling: touch; outline: 0; -webkit-animation: fadein 300ms ease-out; /* Safari, Chrome and Opera > 12.1 */ -moz-animation: fadein 300ms ease-out; /* Firefox < 16 */ -ms-animation: fadein 300ms ease-out; /* Internet Explorer */ -o-animation: fadein 300ms ease-out; /* Opera < 12.1 */ animation: fadein 300ms ease-out; } #zs_modal_backdrop { opacity: .5; height: 100%; width: 100%; position: absolute; top: 0; right: 0; left: 0; background-color: #000; } @keyframes fadein { from { opacity: 0; } to { opacity: 1; } } /* Firefox < 16 */ @-moz-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } /* Safari, Chrome and Opera > 12.1 */ @-webkit-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } /* Internet Explorer */ @-ms-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } /* Opera < 12.1 */ @-o-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } #zs_modal_dialog { max-width: 600px; margin: 30px auto; position: relative; -webkit-animation: movein 400ms ease-out; /* Safari, Chrome and Opera > 12.1 */ -moz-animation: movein 400ms ease-out; /* Firefox < 16 */ -ms-animation: movein 400ms ease-out; /* Internet Explorer */ -o-animation: movein 400ms ease-out; /* Opera < 12.1 */ animation: movein 400ms ease-out; } @keyframes movein { from { margin: -1000px auto; } to { margin: 30px auto; } } /* Firefox < 16 */ @-moz-keyframes movein { from { margin: -1000px auto; } to { margin: 30px auto; } } /* Safari, Chrome and Opera > 12.1 */ @-webkit-keyframes movein { from { margin: -1000px auto; } to { margin: 30px auto; } } /* Internet Explorer */ @-ms-keyframes movein { from { margin: -1000px auto; } to { margin: 30px auto; } } /* Opera < 12.1 */ @-o-keyframes movein { from { margin: -1000px auto; } to { margin: 30px auto; } } #zs_modal_content { position: relative; background-color: #fff; -webkit-background-clip: padding-box; background-clip: padding-box; border: 1px solid #999; border: 1px solid rgba(0,0,0,.2); border-radius: 6px; outline: 0; -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5); box-shadow: 0 5px 15px rgba(0,0,0,.5); } #zs_modal_header { min-height: 16.43px; padding: 15px; border-bottom: 1px solid #e5e5e5; } #zs_modal_title { float: left; width: 90%; } #zs_modal_body { position: relative; padding: 15px; } #zs_modal_footer { padding: 15px; text-align: right; border-top: 1px solid #e5e5e5; } #zs_close { font-size: 40px; line-height: 0px; text-decoration: none; float: right; width: 10%; text-align: right; padding-top: 3px; } #zs_modal_body label{ display: none; } #zs_email_address { display: block; max-width: 300px; margin: 0 auto; } #zs_create_alert { display:block; font-family: Arial, Helvetica, sans-serif; width: 160px; text-align:center; font-size: 28px; border: 1px solid #c8c8c8; color: #343536!important; font-size: 15px; background: #e9e9e9; background: -webkit-linear-gradient(top,#f8f8f8,#e9e9e9); background: linear-gradient(top,#f8f8f8,#e9e9e9); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#f8f8f8,endColorstr=#e9e9e9,GradientType=1); padding: 0px 8px; height: 38px; line-height: 38px; -webkit-border-radius: 30px; border-radius: 30px; outline: 0; font-weight: bold; text-shadow: 0px 1px 1px #ffffff; display: block; margin: 20px auto; text-decoration:none; } a#zs_create_alert:hover{ border: 1px solid #c8c8c8; background: #f8f8f8; text-shadow: 0px 1px 1px #ffffff; } a#zs_create_alert:active{ border: 1px solid #c8c8c8; background: #e9e9e9; background: -webkit-linear-gradient(top,#e9e9e9,#f8f8f8); background: linear-gradient(top,#e9e9e9,#f8f8f8); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#e9e9e9,endColorstr=#f8f8f8,GradientType=1); text-shadow: 0px 1px 1px #ffffff; } .zs_border_wrap { margin: 30px auto 35px; width: 160px; } .zs_border_center:after { content: \"\"; display: block; height: 1px; background-color: #e3e3e3; margin-top: -11px; } .zs_border_title { font-weight: 400; font-size: 13px; margin-bottom: 20px; text-align: center; margin-top: 2px; text-transform: uppercase; -webkit-margin-before: 1.67em; -webkit-margin-after: 1.67em; -webkit-margin-start: 0px; -webkit-margin-end: 0px; font-family: Arial, Helvetica, sans-serif; } .zs_border_center > span { display: inline-block; padding: 3px 20px; background-color: white; } #zs_continue_block { display: block; width: 100%; margin: 15px auto; text-align: center; } .zs_search_alt, #zs_continue_block a:link, #zs_continue_block a:active { color: #1a0dab; text-decoration: none; font-family: Arial, Helvetica, sans-serif; } .zs_search_alt, #zs_continue_block a:visited { color: #1a0dab; } #zs_continue_block a:hover { text-decoration: underline; } #zs_get_jobs { font-size: 24px; text-align: center; line-height: 30px; font-family: Arial, Helvetica, sans-serif; margin: 15px 0px 30px 0px; padding: 0 15px; } #zs_job_type { text-transform: capitalize; } #zs_location_type { text-transform: capitalize; } #zr_widget_container { overflow: hidden; } #zr_widget_jobs { font-family: Arial, Helvetica, sans-serif; margin: 30px 0px 10px; width: 100%; max-width: 768px; } .zr_job { padding: 15px 0px; } .zr_job:last-child { border-bottom: none; } .zr_job p { padding: 0; margin: 0; } .zr_job_link { text-decoration: none; color: #1a0dab; font-size: 17px; float: left; margin-right: 3px; margin-bottom: 1px; } .zr_job_link:visited { color: #609; } .zr_job_link:hover { text-decoration: underline; } .zr_job_desc { clear: both; font-size: 14px; color: #545454; line-height: 1.4; word-wrap: break-word; } .zr_job_desc b { color: #343536; } .zr_job_desc strong { color: #343536; } .zr_job_detail_container { float: left; } .zr_job_details { font-size: 13px; color: #999999; margin: 3px 0; clear: both; } .zr_job_company { margin-right: 15px; } .building_company, .pin_location { margin-right: 3px; font-size: 15px; width: 12px; height: 12px; } .zr_job_posted_time { font-weight: 400; float: left; margin-top: -3px; font-size: 12px; color: #ee8000; } #pro_widget_paging { font-family: Arial, Helvetica, sans-serif; color: #343536; margin-bottom: 10px; } #jobs_widget_link { text-decoration: none; color: #277f6a; } #jobs_widget_link:hover { text-decoration: none; color: #b2e522; } #zr_pagination { margin: 36px 0 10px; text-align: center; width: 100%; max-width: 768px; } #zr_results { font-family: Arial, Helvetica, sans-serif; color: #808080; line-height: 20px; font-size: 13px; } #zr_pagination a { text-decoration: none; color: #277f6a; font-size: 15px; display: inline-block; padding: 7px; } #zr_pagination a:link, #zr_pagination a:active { color: #1a0dab; } #zr_pagination a:visited { color: #1a0dab; } #zr_pagination a:hover { text-decoration: underline; } span.pager { font-size: 15px; font-weight: bold; display: inline-block; margin-right: 5px; } #zr_pagination .zr_pager_left { display: inline-block; margin-right: 10px; font-weight: bold; } #zr_pagination .zr_pager_right { display: inline-block; margin-left: 10px; font-weight: bold; } #zs_no_jobs ul { list-style-type: none; padding-left: 25px; margin-bottom: 30px; } #zs_no_jobs ul li { line-height: 21px; } #zs_no_jobs ul li { line-height: 21px; } #zs_no_jobs ul li a { text-decoration: none; font-size: 18px; } #zs_no_jobs ul li a:hover { text-decoration: underline; color: #1a0dab; font-size: 18px; } #zs_no_jobs ul li a:link, #zs_no_jobs ul li a:active { color: #1a0dab; } #zs_no_jobs ul li a:visited { color: #609; } #zs_no_jobs_copy { width: 100%; max-width: 768px; font-size: 21px; color: #343536; line-height: 24px; padding-left: 15px; font-family: Arial, Helvetica, sans-serif; text-align: left; } </style>"});