﻿@charset "UTF-8";
/* Colors
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Fonts
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Layout
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Flex Mixins
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Links
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Animations
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Other Mixins
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Color Themes
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
.jigsaw {
  clear: both;
  padding-bottom: 60px; }
  .jigsaw .wrap,
  .jigsaw .grid,
  .jigsaw .copy,
  .jigsaw .inner {
    position: relative;
    z-index: 0; }
  .jigsaw.has-background .wrap::before {
    background-color: #f3f9fc;
    border: none; }
    .theme-green.jigsaw.has-background .wrap::before {
      background: #effbf7; }
    .theme-orange.jigsaw.has-background .wrap::before {
      background: #fef5ed; }
    .theme-purple.jigsaw.has-background .wrap::before {
      background: #f5f1f9; }
    .theme-red.jigsaw.has-background .wrap::before {
      background: #fceff2; }
    .theme-yellow.jigsaw.has-background .wrap::before {
      background: #fff8e5; }
    .theme-gray.jigsaw.has-background .wrap::before {
      background: #f8f8f8; }
  .jigsaw .image-inner-wrap {
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%; }
    .jigsaw .image-inner-wrap,
    .jigsaw .image-inner-wrap picture,
    .jigsaw .image-inner-wrap img {
      height: 100%; }
    .jigsaw .image-inner-wrap img {
      float: left;
      max-width: none; }
  .jigsaw .image-outer-wrap {
    bottom: 0;
    left: 0;
    padding-bottom: 0;
    position: absolute;
    right: 0;
    top: 0; }
  .jigsaw .primary-button {
    margin-right: 24px; }
    .jigsaw .primary-button a {
      font-size: 1.8rem; }
  .jigsaw .copy {
    padding-bottom: 0; }
    .jigsaw .copy::before {
      z-index: 1003; }
    .jigsaw .copy::after {
      z-index: 1001; }
    .jigsaw .copy:after,
    .jigsaw .copy .text .inner {
      box-shadow: -20px 20px 64px -8px rgba(45, 45, 45, 0.15); }
    .jigsaw .copy::after, .jigsaw .copy::before {
      background-color: #fff;
      content: '';
      height: 60px;
      left: 8px;
      position: absolute;
      right: 8px;
      top: 100%; }
    .jigsaw .copy.right .text {
      float: right; }
    .jigsaw .copy .text {
      position: relative;
      width: calc(67% - 16px / 2);
      z-index: 1002; }
    .jigsaw .copy .inner {
      background-color: #fff;
      margin-top: 80px; }
    @media only screen and (min-width: 671px) {
      .jigsaw .copy .inner {
        padding: 30px 62.5px; } }
    @media only screen and (min-width: 781px) {
      .jigsaw .copy .inner .primary-button {
        margin-top: 20px; } }
    @media only screen and (min-width: 971px) {
      .jigsaw .copy .inner {
        padding: 70px calc(17% + 16px / 6) 20px; } }
    @media only screen and (max-width: 970px) {
      .jigsaw .copy::before, .jigsaw .copy::after {
        left: 7px;
        right: 7px; }
      .jigsaw .copy::after {
        right: 7px; }
      .jigsaw .copy .text {
        width: calc(70.5% - 16px / 2); } }
    @media only screen and (max-width: 780px) {
      .jigsaw .copy .inner .chat {
        margin-top: 24px; } }
  @media only screen and (max-width: 780px) {
    .jigsaw {
      padding-bottom: 0; }
      .jigsaw .grid {
        box-shadow: 0 0 64px 0 rgba(45, 45, 45, 0.15);
        margin: 0;
        padding-top: 42px; }
      .jigsaw .image-outer-wrap {
        height: 200px;
        padding: 0;
        position: relative;
        /*z-index: 1004;*/ }
      .jigsaw .copy {
        margin-left: 0; }
        .jigsaw .copy::before, .jigsaw .copy::after {
          content: none; }
        .jigsaw .copy::before {
          z-index: 1003; }
        .jigsaw .copy:after,
        .jigsaw .copy .text .inner {
          box-shadow: none; }
        .jigsaw .copy .text {
          width: auto;
          z-index: 1002; }
        .jigsaw .copy .inner {
          margin-top: 0;
          padding-bottom: 42px;
          padding-top: 30px; } }
  @media only screen and (max-width: 670px) {
    .jigsaw .grid {
      background: white;
      padding-top: 30px; }
    .jigsaw .copy .inner {
      padding-bottom: 48px; }
    .jigsaw .image-outer-wrap {
      left: 0; }
    .jigsaw .copy::before {
      left: calc(10px / 2);
      right: calc(10px / 2); } }
  @media only screen and (max-width: 970px) and (min-width: 781px) {
    .jigsaw .copy .inner {
      padding: 80px calc(14% + 16px / 6) 20px; }
      .jigsaw .copy .inner .primary-button {
        margin-top: 20px; } }
  .jigsaw.bottom-cta {
    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ }
    .jigsaw.bottom-cta .call-btn {
      display: inline-block; }
    .jigsaw.bottom-cta .image-inner-wrap img {
      float: right; }
    .jigsaw.bottom-cta .call-btn {
      transition: none;
      background: none;
      border: none;
      color: #0077B3;
      text-decoration: underline;
      margin-top: 20px; }
      .jigsaw.bottom-cta .call-btn:hover, .jigsaw.bottom-cta .call-btn:focus {
        background: none;
        border: none;
        color: #0077B3;
        text-decoration: none; }
      body:not(.disable-focus-state) #site .jigsaw.bottom-cta .call-btn:focus {
        outline: -webkit-focus-ring-color none 0;
        outline: 3px dashed #0077B3;
        outline-offset: -3px; }
    .jigsaw.bottom-cta .chat a {
      color: #707070; }
      .jigsaw.bottom-cta .chat a:hover {
        text-decoration: none; }
    .jigsaw.bottom-cta .content-extra {
      font-size: 1.4rem; }
      .jigsaw.bottom-cta .content-extra a {
        color: #2d2d2d; }
        .jigsaw.bottom-cta .content-extra a:hover {
          text-decoration: none; }
    @media only screen and (max-width: 780px) {
      .jigsaw.bottom-cta {
        text-align: center; } }
    @media only screen and (max-width: 670px) {
      .jigsaw.bottom-cta .primary-button {
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-top: 20px;
        width: 100%; } }

/* SPACING
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
[data-module="jigsaw"] {
  margin-top: 60px !important;
  padding-top: 60px !important; }

@media only screen and (max-width: 780px) {
  [data-module="jigsaw"] {
    margin-top: 40px !important;
    padding-top: 40px !important; } }

/* CAREERS SOCIAL ICONS
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
.social-list {
  display: flex;
  justify-content: center;
  width: 100%; }
  .social-list .social-icon-wrapper {
    width: 32px;
    height: 32px;
    border-radius: 16px;
    margin-left: 4px;
    margin-right: 4px; }
    .social-list .social-icon-wrapper a {
      width: 100%;
      margin: auto;
      padding: 0;
      background-color: #ffffff;
      border-bottom: none;
      display: inline-block; }
      .social-list .social-icon-wrapper a svg {
        position: static;
        max-width: 32px;
        max-height: 32px; }
        .social-list .social-icon-wrapper a svg path {
          transition: fill 0.3s; }
    .social-list .social-icon-wrapper.twitter a svg path {
      fill: #00aedd; }
    .social-list .social-icon-wrapper.twitter a:hover svg path {
      fill: #0682a4; }
    .social-list .social-icon-wrapper.linkedin a svg path {
      fill: #0085af; }
    .social-list .social-icon-wrapper.linkedin a:hover svg path {
      fill: #026483; }
    .social-list .social-icon-wrapper.youtube a svg path {
      fill: #dd0023; }
    .social-list .social-icon-wrapper.youtube a:hover svg path {
      fill: #a0011a; }
    .social-list .social-icon-wrapper.glassdoor a svg path {
      fill: #76a926; }
    .social-list .social-icon-wrapper.glassdoor a:hover svg path {
      fill: #689423; }
    .social-list .social-icon-wrapper.instagram a svg path {
      fill: #d93175; }
    .social-list .social-icon-wrapper.instagram a:hover svg path {
      fill: #bb2a65; }

/*High Contrast Mode
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Targets displays using any of Windows� High Contrast Mode themes: */
@media screen and (-ms-high-contrast: active) {
  .social-list .social-icon-wrapper.twitter a svg path,
  .social-list .social-icon-wrapper.linkedin a svg path,
  .social-list .social-icon-wrapper.youtube a svg path,
  .social-list .social-icon-wrapper.glassdoor a svg path,
  .social-list .social-icon-wrapper.instagram a svg path {
    fill: #ffffff; }
  .social-list .social-icon-wrapper.twitter a:hover svg path,
  .social-list .social-icon-wrapper.linkedin a:hover svg path,
  .social-list .social-icon-wrapper.youtube a:hover svg path,
  .social-list .social-icon-wrapper.glassdoor a:hover svg path,
  .social-list .social-icon-wrapper.instagram a:hover svg path {
    fill: #a6a6a6; } }

/* Targets displays using the Windows� "High Contrast Black" theme: */
@media screen and (-ms-high-contrast: white-on-black) {
  .social-list .social-icon-wrapper.twitter a svg path,
  .social-list .social-icon-wrapper.linkedin a svg path,
  .social-list .social-icon-wrapper.youtube a svg path,
  .social-list .social-icon-wrapper.glassdoor a svg path,
  .social-list .social-icon-wrapper.instagram a svg path {
    fill: #ffffff; }
  .social-list .social-icon-wrapper.twitter a:hover svg path,
  .social-list .social-icon-wrapper.linkedin a:hover svg path,
  .social-list .social-icon-wrapper.youtube a:hover svg path,
  .social-list .social-icon-wrapper.glassdoor a:hover svg path,
  .social-list .social-icon-wrapper.instagram a:hover svg path {
    fill: #a6a6a6; } }

/* Targets displays using the Windows� "High Contrast White" theme: */
@media screen and (-ms-high-contrast: black-on-white) {
  .social-list .social-icon-wrapper.twitter a svg path,
  .social-list .social-icon-wrapper.linkedin a svg path,
  .social-list .social-icon-wrapper.youtube a svg path,
  .social-list .social-icon-wrapper.glassdoor a svg path,
  .social-list .social-icon-wrapper.instagram a svg path {
    fill: #000000; }
  .social-list .social-icon-wrapper.twitter a:hover svg path,
  .social-list .social-icon-wrapper.linkedin a:hover svg path,
  .social-list .social-icon-wrapper.youtube a:hover svg path,
  .social-list .social-icon-wrapper.glassdoor a:hover svg path,
  .social-list .social-icon-wrapper.instagram a:hover svg path {
    fill: #a6a6a6; } }
