.field-text, .text-area {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border 0.3s, box-shadow 0.3s;
  -moz-transition: border 0.3s, box-shadow 0.3s;
  transition: border 0.3s, box-shadow 0.3s;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  font-family: 'Avenir Next W01', sans-serif;
  font-weight: 100;
  width: 100%;
  min-width: 10px;
  max-width: 600px;
  height: 25px;
  background: #fafafa;
  border: #c1c5c8 solid 1px;
  border-radius: 4px;
  color: #3a3a3a;
  padding: 2px 10px;
  font-size: 13px; }
  .full-width.field-text, .full-width.text-area {
    max-width: none; }
  .focus .field-text, .focus .text-area, .field-text:focus, .text-area:focus {
    border-color: #71b0c7;
    box-shadow: 0 0 5px #b0b0b0;
    outline: none; }
    
.context-help-wrapper {
  display: inline-block;
  position: relative;
  z-index: 1; }
  .context-help-wrapper .context-help-button {
    -webkit-tap-highlight-color: transparent;
    color: #0e689c;
    cursor: pointer;
    font-size: 0;
    height: 0;
    width: 0; }
    .context-help-wrapper .context-help-button:before {
      width: 18px;
      height: 18px;
      background-position: -151px -96px;
      content: '';
      margin-bottom: -4px; }
      
.error-tooltip {
  position: absolute;
  top: 1px;
  left: 100%;
  background-color: #bf333a;
  color: #fff;
  font-size: 12px;
  margin-left: 6px;
  padding: 8px 10px;
  white-space: nowrap; }
  .error-tooltip:before {
    height: 0;
    width: 0;
    border-bottom: 5px solid transparent;
    border-right: 5px solid #bf333a;
    border-top: 5px solid transparent;
    position: absolute;
    top: 50%;
    left: -5px;
    content: '';
    margin-top: -5px; }

.context-help-wrapper {
  display: inline-block;
  position: relative;
  z-index: 1; }
  .context-help-wrapper .context-help-button {
    -webkit-tap-highlight-color: transparent;
    color: #0e689c;
    cursor: pointer;
    font-size: 0;
    height: 0;
    width: 0; }
    .context-help-wrapper .context-help-button:before {
      width: 18px;
      height: 18px;
      background-position: -151px -96px;
      content: '';
      margin-bottom: -4px; }
  .context-help-wrapper .context-help {
    position: absolute;
    top: auto;
    right: auto;
    bottom: 100%;
    left: 0;
    background: #fff;
    border: #71b0c7 solid 3px;
    box-shadow: 0 0 4px rgba(195, 195, 195, 0.45);
    color: #767676;
    display: none;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    margin-bottom: 15px;
    margin-left: -43px;
    padding: 20px 60px 20px 25px;
    width: 350px;
    z-index: 2; }
    .context-help-wrapper .context-help:before {
      position: absolute;
      top: 100%;
      right: auto;
      bottom: auto;
      left: 35px;
      -webkit-transform: rotate(45deg) skew(-20deg, -20deg);
      -moz-transform: rotate(45deg) skew(-20deg, -20deg);
      -ms-transform: rotate(45deg) skew(-20deg, -20deg);
      -o-transform: rotate(45deg) skew(-20deg, -20deg);
      transform: rotate(45deg) skew(-20deg, -20deg);
      background: #fff;
      border: #71b0c7 solid 4px;
      border-left-color: transparent;
      border-top-color: transparent;
      content: '';
      display: block;
      height: 20px;
      margin-top: -14px;
      width: 20px; }
    .context-help-wrapper .context-help.top-left {
      position: absolute;
      top: auto;
      right: 0;
      bottom: 100%;
      left: auto;
      margin-right: -43px; }
      .context-help-wrapper .context-help.top-left:before {
        position: absolute;
        top: 100%;
        right: 35px;
        bottom: auto;
        left: auto; }
    .context-help-wrapper .context-help.bottom-right {
      bottom: auto;
      margin-bottom: 0;
      margin-top: 15px; }
      .context-help-wrapper .context-help.bottom-right:before {
        -webkit-transform: rotate(225deg) skew(-20deg, -20deg);
        -moz-transform: rotate(225deg) skew(-20deg, -20deg);
        -ms-transform: rotate(225deg) skew(-20deg, -20deg);
        -o-transform: rotate(225deg) skew(-20deg, -20deg);
        transform: rotate(225deg) skew(-20deg, -20deg);
        bottom: 100%;
        margin-bottom: -14px;
        top: auto; }
    .context-help-wrapper .context-help.bottom-left {
      position: absolute;
      top: auto;
      right: 0;
      bottom: auto;
      left: auto;
      margin-bottom: 0;
      margin-right: -43px;
      margin-top: 15px; }
      .context-help-wrapper .context-help.bottom-left:before {
        position: absolute;
        top: auto;
        right: 35px;
        bottom: 100%;
        left: auto;
        -webkit-transform: rotate(225deg) skew(-20deg, -20deg);
        -moz-transform: rotate(225deg) skew(-20deg, -20deg);
        -ms-transform: rotate(225deg) skew(-20deg, -20deg);
        -o-transform: rotate(225deg) skew(-20deg, -20deg);
        transform: rotate(225deg) skew(-20deg, -20deg);
        margin-bottom: -14px; }
  .context-help-wrapper.opened {
    z-index: 50; }
    .context-help-wrapper.opened .context-help {
      display: block; }
  .context-help-wrapper .button-close {
    position: absolute;
    top: 15px;
    right: 15px;
    bottom: auto;
    left: auto;
    background: none;
    border: 0;
    font-size: 0;
    line-height: 0;
    padding: 5px; }
  @media screen and (max-width: 1023px)  {
    .context-help-wrapper {
      position: static; }
      .context-help-wrapper .context-help {
        bottom: auto;
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
        left: 20px;
        margin: -41px 0 0;
        min-width: 360px;
        padding: 35px 10px 10px;
        right: 20px;
        width: auto; }
        .context-help-wrapper .context-help:before {
          display: none; }
        .context-help-wrapper .context-help.top-left {
          right: 20px;
          bottom: auto;
          left: 20px;
          margin: -41px 0 0; }
        .context-help-wrapper .context-help.bottom-right {
          margin: -41px 0 0; }
        .context-help-wrapper .context-help.bottom-left {
          right: 20px;
          left: 20px;
          margin: -41px 0 0; }
        .context-help-wrapper .context-help.mobile-address {
          left: -250px;
          margin-top: -35px;
          min-width: 225px; }
      .context-help-wrapper .button-close {
        position: absolute;
        top: 5px;
        right: 5px;
        bottom: auto;
        left: auto;
        background: none;
        border: 0;
        font-size: 0;
        line-height: 0;
        padding: 5px; } }
  @media screen and (max-width: 603px)  {
    .context-help-wrapper .context-help {
      min-width: 300px; } }
  @media screen and (max-width: 480px)  {
    .context-help-wrapper .context-help {
      min-width: 170px; } }

 .context-help-wrapper .context-help.bottom-right {
      bottom: auto;
      margin-bottom: 0;
      margin-top: 15px; }
      .context-help-wrapper .context-help.bottom-right:before {
        -webkit-transform: rotate(225deg) skew(-20deg, -20deg);
        -moz-transform: rotate(225deg) skew(-20deg, -20deg);
        -ms-transform: rotate(225deg) skew(-20deg, -20deg);
        -o-transform: rotate(225deg) skew(-20deg, -20deg);
        transform: rotate(225deg) skew(-20deg, -20deg);
        bottom: 100%;
        margin-bottom: -14px;
        top: auto; }