/* Snap Israel: global single-listing redesign. */
body.single-job_listing .snap-listing-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(41, 124, 255, .22), transparent 32%),
    linear-gradient(135deg, #071529 0%, #0c2445 100%);
  color: #fff;
  padding: 26px 0 48px;
}

body.single-job_listing .snap-listing-hero::after {
  position: absolute;
  right: -120px;
  bottom: -190px;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

body.single-job_listing .snap-listing-hero .container {
  position: relative;
  z-index: 2;
}

body.single-job_listing .snap-listing-breadcrumbs {
  display: flex;
  gap: 8px;
  align-items: center;
  min-height: 24px;
  margin: 0 0 20px;
  color: rgba(255, 255, 255, .68);
  font-size: 13px;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
}

body.single-job_listing .snap-listing-breadcrumbs a {
  color: rgba(255, 255, 255, .82);
}

body.single-job_listing .snap-listing-breadcrumbs a:hover,
body.single-job_listing .snap-listing-breadcrumbs a:focus {
  color: #ffab19;
}

body.single-job_listing .snap-listing-breadcrumbs [aria-current="page"] {
  overflow: hidden;
  text-overflow: ellipsis;
}

body.single-job_listing .snap-listing-hero-grid {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: clamp(30px, 3.5vw, 46px);
  align-items: center;
}

body.single-job_listing .snap-listing-hero-media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 248px;
  padding: 26px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 18px;
  box-shadow: 0 24px 55px -28px rgba(0, 0, 0, .72);
}

body.single-job_listing .snap-listing-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

body.single-job_listing .snap-listing-hero-media--empty {
  background: linear-gradient(145deg, #f8fbff, #e8eef7);
}

body.single-job_listing .snap-listing-image-fallback {
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  color: #fff;
  background: #176de5;
  border-radius: 28px;
  font-size: 58px;
  font-weight: 800;
}

body.single-job_listing .snap-listing-hero-content {
  min-width: 0;
}

body.single-job_listing .snap-listing-hero-content .job_listing-title {
  max-width: 760px;
  margin: 0 0 13px !important;
  color: #fff !important;
  font-size: clamp(34px, 3.7vw, 48px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em;
  text-shadow: none !important;
}

body.single-job_listing .snap-listing-hero-content .job_listing-location {
  margin: 0 0 10px;
  color: rgba(255, 255, 255, .88) !important;
  font-size: 16px;
  line-height: 1.55;
}

body.single-job_listing .snap-listing-hero-content .job_listing-location::before {
  margin-right: 7px;
  color: #58a3ff;
}

body.single-job_listing .snap-listing-hero-content .job_listing-location a,
body.single-job_listing .snap-listing-hero-content .content-single-job_listing-title-category a,
body.single-job_listing .snap-listing-hero-content .listing-rating a,
body.single-job_listing .snap-listing-hero-content .astoundify-favorites-link {
  color: rgba(255, 255, 255, .9) !important;
}

body.single-job_listing .snap-listing-hero-content .job_listing-location a:hover,
body.single-job_listing .snap-listing-hero-content .content-single-job_listing-title-category a:hover,
body.single-job_listing .snap-listing-hero-content .listing-rating a:hover,
body.single-job_listing .snap-listing-hero-content .astoundify-favorites-link:hover {
  color: #ffb129 !important;
}

body.single-job_listing .snap-listing-hero-content .content-single-job_listing-title-category {
  margin: 0 0 12px;
  color: rgba(255, 255, 255, .76) !important;
  font-size: 14px;
}

body.single-job_listing .snap-listing-hero-content .listing-rating,
body.single-job_listing .snap-listing-hero-content .astoundify-favorites-link {
  display: inline-flex;
  align-items: center;
  margin: 0 18px 4px 0;
  vertical-align: middle;
}

body.single-job_listing .snap-listing-hero-content .listing-star {
  color: #ffb129;
}

body.single-job_listing .snap-listing-hero-content .astoundify-favorites-icon svg {
  fill: #fff;
}

body.single-job_listing .snap-listing-contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 25px 0 14px;
}

body.single-job_listing .snap-listing-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  padding: 10px 14px;
  color: #fff !important;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

body.single-job_listing .snap-listing-action:hover,
body.single-job_listing .snap-listing-action:focus {
  color: #fff !important;
  background: rgba(255, 255, 255, .14);
  border-color: rgba(255, 255, 255, .65);
  transform: translateY(-1px);
}

body.single-job_listing .snap-listing-action--primary {
  color: #0b1d38 !important;
  background: #ffad1a;
  border-color: #ffad1a;
}

body.single-job_listing .snap-listing-action--primary:hover,
body.single-job_listing .snap-listing-action--primary:focus {
  color: #0b1d38 !important;
  background: #ffc14f;
  border-color: #ffc14f;
}

body.single-job_listing .snap-listing-action--review {
  background: transparent;
}

body.single-job_listing .snap-listing-action-icon {
  margin-right: 7px;
  font-size: 17px;
  line-height: 1;
}

body.single-job_listing .snap-listing-native-actions.content-single-job_listing-hero-actions {
  position: static !important;
  inset: auto !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
  width: 100% !important;
  margin: 4px 0 0 !important;
  padding: 0;
  text-align: left;
  transform: none !important;
}

body.single-job_listing .snap-listing-native-actions .content-single-job_listing-actions-start {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
  margin: 0 !important;
}

body.single-job_listing .snap-listing-native-actions a:not(.button) {
  margin: 0 !important;
  color: rgba(255, 255, 255, .78) !important;
  font-size: 13px;
  text-decoration: none;
}

body.single-job_listing .snap-listing-native-actions a:not(.button):hover,
body.single-job_listing .snap-listing-native-actions a:not(.button):focus {
  color: #ffb129 !important;
}

body.single-job_listing .snap-listing-native-actions .single-job_listing-respond.button {
  display: none !important;
}

body.single-job_listing .snap-listing-primary {
  padding-top: 32px;
  padding-bottom: 56px;
}

body.single-job_listing .snap-listing-hero + #primary {
  padding-top: 32px;
}

body.single-job_listing .snap-listing-layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(285px, 1fr);
  gap: 32px;
  align-items: start;
}

body.single-job_listing .snap-listing-main,
body.single-job_listing .snap-listing-contact-column {
  float: none !important;
  width: auto !important;
  min-width: 0;
  padding: 0 !important;
}

body.single-job_listing .snap-listing-main > .widget,
body.single-job_listing .snap-listing-contact-card,
body.single-job_listing .snap-listing-secondary-widgets > .widget {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 22px !important;
  padding: 25px 28px !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid #e6e2da !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 30px -25px rgba(12, 30, 58, .55) !important;
}

body.single-job_listing .snap-listing-main > .widget:last-child,
body.single-job_listing .snap-listing-secondary-widgets > .widget:last-child {
  margin-bottom: 0 !important;
}

body.single-job_listing .snap-listing-main .widget-title,
body.single-job_listing .snap-listing-contact-card > h2,
body.single-job_listing .snap-listing-secondary-widgets .widget-title {
  margin: 0 0 18px !important;
  color: #0c1e3a !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

body.single-job_listing .snap-listing-main .listify_widget_panel_listing_content {
  font-size: 15px;
  line-height: 1.72;
}

body.single-job_listing .snap-listing-main .listify_widget_panel_listing_content p:last-child {
  margin-bottom: 0;
}

body.single-job_listing .snap-listing-main .widget-title,
body.single-job_listing .snap-listing-main .job_description,
body.single-job_listing .snap-listing-main .job_description p,
body.single-job_listing .snap-listing-main .job_description a,
body.single-job_listing .snap-listing-main .listify_widget_panel_listing_content,
body.single-job_listing .snap-listing-main .listify_widget_panel_listing_content p,
body.single-job_listing .snap-listing-main .listify_widget_panel_listing_content a,
body.single-job_listing .snap-listing-main .comment-content,
body.single-job_listing .snap-listing-contact-detail,
body.single-job_listing .snap-listing-secondary-widgets .job_listing-title {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

body.single-job_listing .snap-listing-main iframe,
body.single-job_listing .snap-listing-main video,
body.single-job_listing .snap-listing-main img,
body.single-job_listing .snap-listing-secondary-widgets iframe,
body.single-job_listing .snap-listing-secondary-widgets img {
  max-width: 100% !important;
  height: auto;
}

body.single-job_listing .snap-listing-main table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

body.single-job_listing .snap-listing-contact-card {
  position: sticky;
  top: 92px;
}

body.single-job_listing .snap-listing-contact-card > .widget {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.single-job_listing .snap-listing-contact-details {
  display: grid;
  gap: 13px;
}

body.single-job_listing .snap-listing-contact-detail {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  color: #24344d;
  font-size: 14px;
  line-height: 1.5;
}

body.single-job_listing .snap-listing-contact-detail > i {
  color: #0c1e3a;
  font-size: 18px;
  line-height: 1.35;
  text-align: center;
}

body.single-job_listing .snap-listing-contact-detail a {
  overflow-wrap: anywhere;
}

body.single-job_listing .snap-listing-contact-card > .widget,
body.single-job_listing .snap-listing-contact-map-only {
  margin-top: 22px !important;
  padding-top: 22px !important;
  border-top: 1px solid #ece7df !important;
}

body.single-job_listing .snap-listing-contact-map-only > .widget {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.single-job_listing .snap-listing-contact-map-only .widget-title {
  display: none !important;
}

body.single-job_listing .snap-listing-contact-map-only .map-widget-sections {
  display: block !important;
}

body.single-job_listing .snap-listing-contact-map-only .map-widget-section,
body.single-job_listing .snap-listing-contact-map-only .map-widget-section--split {
  display: block !important;
  float: none !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
}

body.single-job_listing .snap-listing-contact-map-only .map-widget-section > .job_listing-location,
body.single-job_listing .snap-listing-contact-map-only .map-widget-section > .job_listing-phone,
body.single-job_listing .snap-listing-contact-map-only .map-widget-section > .listing-email,
body.single-job_listing .snap-listing-contact-map-only .map-widget-section > .job_listing-url {
  display: none !important;
}

body.single-job_listing .snap-listing-contact-map-only #listing-contact-map {
  width: 100% !important;
  height: 250px !important;
  min-height: 250px !important;
  border-radius: 9px;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-directions {
  width: 100%;
  margin: 12px 0 0 !important;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-directions > a:not([aria-hidden="true"]) {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 42px;
  margin: 0;
  color: #176de5 !important;
  border: 1px solid #176de5;
  border-radius: 8px;
  font-weight: 700;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-directions > a:hover,
body.single-job_listing .snap-listing-contact-map-only .job_listing-directions > a:focus {
  color: #fff !important;
  background: #176de5;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-get-directions {
  width: 100%;
  margin-top: 12px;
  padding: 16px;
  background: #f7f9fc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-get-directions fieldset {
  margin-bottom: 12px;
}

body.single-job_listing .snap-listing-contact-map-only .job_listing-get-directions input[type="text"] {
  width: 100%;
}

body.single-job_listing .snap-listing-secondary-widgets {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-top: 22px;
}

body.single-job_listing .snap-listing-secondary-widgets .listify_widget_ad {
  text-align: center;
}

body.single-job_listing .snap-listing-secondary-widgets .job_listings,
body.single-job_listing .snap-listing-secondary-widgets .job_listings > ul {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

body.single-job_listing .snap-listing-secondary-widgets .job_listings li.job_listing,
body.single-job_listing .snap-listing-secondary-widgets li.job_listing {
  box-sizing: border-box !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 16px !important;
}

@media (max-width: 991px) {
  body.single-job_listing .snap-listing-hero-grid {
    grid-template-columns: minmax(230px, 310px) minmax(0, 1fr);
    gap: 30px;
  }

  body.single-job_listing .snap-listing-hero-media {
    height: 225px;
  }

  body.single-job_listing .snap-listing-layout {
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, 1fr);
    gap: 24px;
  }
}

@media (max-width: 767px) {
  body.single-job_listing {
    overflow-x: clip;
  }

  body.single-job_listing .snap-listing-hero {
    padding: 20px 0 34px;
  }

  body.single-job_listing .snap-listing-breadcrumbs {
    margin-bottom: 15px;
  }

  body.single-job_listing .snap-listing-hero-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  body.single-job_listing .snap-listing-hero-media {
    width: 100%;
    height: 250px;
    padding: 24px;
  }

  body.single-job_listing .snap-listing-hero-content .job_listing-title {
    font-size: clamp(31px, 10vw, 43px) !important;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  body.single-job_listing .snap-listing-contact-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 22px;
  }

  body.single-job_listing .snap-listing-native-actions.content-single-job_listing-hero-actions {
    justify-content: flex-start;
  }

  body.single-job_listing .snap-listing-hero + #primary {
    padding-top: 32px;
  }

  body.single-job_listing .snap-listing-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    min-width: 0;
  }

  body.single-job_listing .snap-listing-contact-card {
    position: static;
  }

  /* Mobile reading order: About, contact/map, details/photos, reviews, related. */
  body.single-job_listing .snap-listing-main,
  body.single-job_listing .snap-listing-contact-column {
    display: contents !important;
  }

  body.single-job_listing .snap-listing-main > .widget,
  body.single-job_listing .snap-listing-contact-card {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-bottom: 0 !important;
    padding: 20px 18px !important;
  }

  body.single-job_listing .snap-listing-main #respond,
  body.single-job_listing .snap-listing-main .comment-respond,
  body.single-job_listing .snap-listing-main .comment-form,
  body.single-job_listing .snap-listing-main textarea,
  body.single-job_listing .snap-listing-main input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  body.single-job_listing .snap-listing-main select {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.single-job_listing .snap-listing-main #respond,
  body.single-job_listing .snap-listing-main .comment-respond {
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding: 18px !important;
  }

  body.single-job_listing .snap-listing-contact-map-only,
  body.single-job_listing .snap-listing-contact-map-only > .widget,
  body.single-job_listing .snap-listing-contact-map-only .map-widget-sections,
  body.single-job_listing .snap-listing-contact-map-only .map-widget-section,
  body.single-job_listing .snap-listing-contact-map-only #listing-contact-map {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.single-job_listing .snap-listing-secondary-widgets,
  body.single-job_listing .snap-listing-secondary-widgets > .widget,
  body.single-job_listing .snap-listing-secondary-widgets .job_listings,
  body.single-job_listing .snap-listing-secondary-widgets li.job_listing {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.single-job_listing .snap-listing-secondary-widgets .job_listing-title,
  body.single-job_listing .snap-listing-secondary-widgets .job_listing-location,
  body.single-job_listing .snap-listing-secondary-widgets .job_listing-location a {
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    text-overflow: clip !important;
  }

  body.single-job_listing .snap-listing-secondary-widgets .listify_widget_ad,
  body.single-job_listing .snap-listing-secondary-widgets .listify_widget_ad > *,
  body.single-job_listing .snap-listing-secondary-widgets .listify_widget_ad iframe,
  body.single-job_listing .snap-listing-secondary-widgets .listify_widget_ad ins {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  body.single-job_listing .snap-listing-main > .listify_widget_panel_listing_content {
    order: 10;
  }

  body.single-job_listing .snap-listing-contact-card {
    order: 20;
  }

  body.single-job_listing .snap-listing-main > .listify_widget_panel_listing_tags {
    order: 30;
  }

  body.single-job_listing .snap-listing-main > .listify_widget_panel_listing_gallery_slider {
    order: 40;
  }

  body.single-job_listing .snap-listing-main > .listify_widget_panel_listing_video {
    order: 50;
  }

  body.single-job_listing .snap-listing-main > .widget:not(.listify_widget_panel_listing_content):not(.listify_widget_panel_listing_tags):not(.listify_widget_panel_listing_gallery_slider):not(.listify_widget_panel_listing_video):not(.listify_widget_panel_listing_comments) {
    order: 55;
  }

  body.single-job_listing .snap-listing-main > .listify_widget_panel_listing_comments {
    order: 60;
  }

  body.single-job_listing .snap-listing-secondary-widgets {
    order: 70;
    margin-top: 0;
  }
}

@media (max-width: 420px) {
  body.single-job_listing .snap-listing-hero-media {
    height: 220px;
  }

  body.single-job_listing .snap-listing-contact-actions {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.single-job_listing .snap-listing-action {
    transition: none;
  }
}
