@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

::-webkit-input-placeholder {
  color: #95A4B3; }

::-moz-placeholder {
  color: #95A4B3; }

:-ms-input-placeholder {
  color: #95A4B3; }

:-moz-placeholder {
  color: #95A4B3; }

input,
select {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none; }

input[type="text"],
input[type="number"],
input[type="select"],
input[type="date"],
input[type="password"],
textarea,
select {
  height: 4.5rem;
  border: 1px solid #D5E2EC;
  outline: none;
  border-radius: 0.2rem;
  padding: 0 1.5rem;
  font-size: inherit;
  font-family: inherit; }
  input[type="text"]:focus,
  input[type="number"]:focus,
  input[type="select"]:focus,
  input[type="date"]:focus,
  input[type="password"]:focus,
  textarea:focus,
  select:focus {
    border: 1px solid #4579FF;
    box-shadow: 0 0px 6px -0.5px #E5F2FF; }

input[type=text].account-search {
  background-color: var(--gray-1);
  border: 1px solid var(--gray-2); }
  input[type=text].account-search:focus {
    border: 1px solid #4579FF;
    box-shadow: 0 0px 6px -0.5px #E5F2FF; }

textarea {
  height: 10rem;
  width: 100%;
  padding: 1rem;
  resize: none; }

.form-group {
  margin-top: 3rem;
  text-align: left; }
  .form-group.hidden {
    position: absolute;
    left: -9999em;
    pointer-events: none;
    visibility: hidden; }
  .form-group.flex {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center; }
  .form-group.half-size {
    display: inline-block;
    width: calc(50% - 1rem); }
  .form-group.relative {
    position: relative; }
  .form-group.one-liner {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center; }
    .form-group.one-liner label {
      margin: 0;
      padding-right: 3rem; }
    .form-group.one-liner input {
      width: 15rem; }
  .form-group.nested-checkbox label {
    margin-bottom: 1rem; }
  .form-group.nested-checkbox + .form-group.nested-checkbox {
    padding-top: 0; }
    .form-group.nested-checkbox + .form-group.nested-checkbox label {
      margin-bottom: 0; }
  .form-group.two-col, .form-group.three-col {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: justify;
            justify-content: space-between; }
  .form-group.two-col .form-group {
    width: calc(50% - 1rem); }
  .form-group.three-col {
    display: inline-block;
    width: calc(33.3% - 0.84rem); }
    .form-group.three-col + .form-group.three-col {
      margin-left: 1rem; }
  .form-group.address-col {
    display: -webkit-box;
    display: flex;
    margin-top: 1.5rem; }
    .form-group.address-col input + input {
      margin-left: 1.5rem; }
    .form-group.address-col input:nth-child(2) {
      width: 30%; }
    .form-group.address-col input:nth-child(3) {
      width: 40%; }
  .form-group + h4 {
    margin-top: 3rem; }
  .form-group + h5 {
    margin-top: 3rem; }
  .form-group.multi-form {
    padding: 3rem;
    background-color: white;
    padding-top: 0;
    margin-top: 1.5rem;
    border: 1px solid var(--gray-2);
    box-shadow: 0 2px 8px -1.5px #E2EAF0;
    border-radius: 3px; }
    .form-group.multi-form + .btn {
      margin-top: 2rem; }
    .form-group.multi-form.hidden + .m--add {
      display: none; }

.skip + .half-size,
.half-size:first-of-type,
.half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip),
.half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) {
  margin-left: 0; }

.half-size:not(.skip) + .half-size:not(.skip),
.half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip),
.half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) + .half-size:not(.skip) {
  margin-left: 1.5rem; }

label {
  display: inline-block;
  font-weight: 400;
  line-height: 140%;
  margin-bottom: 1rem; }
  label span {
    color: var(--gray-4); }
  label span.sub-label {
    display: block;
    font-size: 1.4rem;
    margin-top: 0.3rem;
    color: var(--gray-35); }
  input + label {
    margin-top: 2rem; }

hr {
  margin: 3rem 0;
  border-top: transparent;
  border-bottom: 1px solid #EFF4F8; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border-radius: 0.2rem;
  background-repeat: no-repeat;
  background-size: 2rem;
  background-position: right 1rem center; }

.select-container {
  position: relative;
  width: 100%; }
  .select-container::after {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    right: 2rem;
    top: 1.7rem;
    width: 0.8rem;
    height: 0.8rem;
    border-right: 0.2rem solid #7D8D9E;
    border-bottom: 0.2rem solid #7D8D9E;
    border-top-right-radius: 0.2rem;
    border-bottom-left-radius: 0.2rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    pointer-events: none; }
  .select-container::before {
    content: '';
    position: absolute;
    z-index: 1;
    display: block;
    top: 0.1rem;
    bottom: 0.1rem;
    right: 0.1rem;
    left: auto;
    width: 0.5rem;
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(40%, white));
    background-image: linear-gradient(to right, transparent 0%, white 40%);
    pointer-events: none; }

h5 + .select-container {
  margin-top: 1.5rem; }

.split-option {
  display: -webkit-box;
  display: flex; }

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none; }

.number-input {
  display: -webkit-box;
  display: flex; }

.number-input button {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: white;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-width: 4.5rem;
  height: 4.5rem;
  cursor: pointer;
  border-left: none;
  border-right: 1px solid #D5E2EC;
  border-top: 1px solid #D5E2EC;
  border-bottom: 1px solid #D5E2EC; }

.number-input button:before,
.number-input button:after {
  display: inline-block;
  position: absolute;
  content: '';
  width: 1rem;
  height: 0.2rem;
  background-color: #303344;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.number-input button.plus:after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg); }

input[type=checkbox] + label {
  display: -webkit-box;
  display: flex;
  padding-left: 2rem;
  margin-top: 1rem; }

input[type=checkbox] {
  display: none; }

input[type=checkbox] + label:before {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 2.2rem;
  height: 2.2rem;
  margin-right: 1rem;
  margin-left: -2rem;
  text-align: center;
  border-radius: 0.2rem;
  background-color: white;
  border: 1px solid #E2EAF0;
  cursor: pointer; }

input[type=checkbox] + label:before {
  content: "\00a0 "; }

input[type=checkbox]:checked + label:before {
  content: url("../assets/images/checkboxcheck.svg");
  background-color: var(--main-color);
  color: white;
  border: 1px solid var(--main-color);
  box-shadow: 0 1px 6px -1px #85B2FD; }

input[type="radio"] {
  display: inline-block;
  width: 2.2rem;
  height: 2.2rem;
  border: 2px solid var(--border-color);
  border-radius: 50%; }
  input[type="radio"]:checked {
    border: 2px solid var(--blue-3);
    box-shadow: inset 0px 0px 0px 0.3rem #fff, inset 0px 0px 0px 1rem var(--blue-3); }

.radio-row {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center; }
  .radio-row label {
    margin: 1rem 0;
    padding-left: 1rem; }
  .radio-row input {
    vertical-align: middle; }
  .radio-row span {
    width: 100%; }
  .radio-row span:last-child {
    text-align: right; }

.radio-selectors {
  display: block; }
  .radio-selectors input {
    margin-right: 1.5rem; }

.radio-group {
  display: -webkit-box;
  display: flex;
  font-size: 1.6rem; }
  .radio-group input[type="radio"] {
    display: none; }
  .radio-group .radio-button {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
    .radio-group .radio-button + .radio-button {
      margin-left: -1px; }
    .radio-group .radio-button ._onboarding-target {
      width: 100%;
      display: -webkit-box;
      display: flex; }
    .radio-group .radio-button img {
      display: block;
      height: 7rem;
      margin-top: 1rem; }
  .radio-group .radio-button label {
    display: inline-block;
    margin: 0;
    width: inherit;
    line-height: 4.5rem;
    overflow: hidden;
    font-weight: normal;
    text-align: center;
    padding: 0 2rem;
    border: 1px solid #D5E2EC; }
  .radio-group input[type="radio"]:checked + label {
    position: relative;
    box-shadow: inset 0 0 0 1px #4579FF, 0 0px 6px 1px #E5F2FF;
    border: 1px solid #4579FF; }
    .radio-group input[type="radio"]:checked + label:after {
      content: "";
      position: absolute;
      right: 0;
      height: 100%;
      border-right: 1px solid #4579FF; }

.range-slider {
  display: -webkit-box;
  display: flex; }
  .range-slider output {
    height: 3.5rem;
    margin-left: 1rem;
    padding: 0 1em;
    border: 1px solid var(--gray-3);
    border-radius: 0.2rem;
    line-height: 3.5rem;
    background-color: white;
    font-family: monospace;
    text-align: center; }

input[type=range] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 1px solid transparent;
  width: 100%;
  height: 0.3rem;
  margin-top: 1.5rem;
  border-radius: 0.4rem;
  display: inline-block;
  background: var(--gray-2); }
  input[type=range]::-webkit-slider-runnable-track {
    height: 1px;
    background: inherit;
    background-size: 0 0;
    border-radius: 0.5rem;
    -webkit-appearance: none;
    appearance: none; }
  input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    border: 2px solid var(--gray-35);
    height: 2.5rem;
    width: 2.5rem;
    border-radius: 50%;
    background: white;
    margin-top: -1.2rem; }
  input[type=range]:focus {
    outline: none; }
  input[type=range]:focus::-webkit-slider-thumb {
    border: 2px solid var(--blue-3); }

.child-indent input[type=range]::-webkit-slider-thumb {
  outline: 0.3rem solid #fff; }

.date-input {
  display: -webkit-box;
  display: flex; }
  .date-input input:not(.stealth) {
    width: 10%; }
    .date-input input:not(.stealth) + input:not(.stealth) {
      margin-left: -1px; }
  .date-input input:nth-child(3) {
    width: 15%; }
  .date-input input.stealth {
    position: absolute;
    right: -9999em;
    visibility: hidden; }

.additional-insured {
  position: relative;
  padding: 2rem;
  margin-top: 2rem;
  background-color: var(--gray-1);
  border: 1px solid var(--gray-2); }
  .additional-insured p:first-child {
    margin-top: 0; }

.delete-addl-insured {
  position: absolute;
  top: 3rem;
  right: 3rem;
  color: var(--gray-35);
  font-size: 2.6rem; }

.dropdown-search-container {
  position: relative;
  padding: 0 1.5rem;
  border: 1px solid #D5E2EC;
  background-color: white; }
  .dropdown-search-container::after {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    right: 2rem;
    top: 1.7rem;
    width: 0.8rem;
    height: 0.8rem;
    border-right: 2px solid #7D8D9E;
    border-bottom: 2px solid #7D8D9E;
    border-top-right-radius: 2px;
    border-bottom-left-radius: 2px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    pointer-events: none; }
  .dropdown-search-container .dds-click-zone {
    position: absolute;
    width: 100%;
    height: 4.5rem;
    top: 0;
    left: 0; }
  .dropdown-search-container input[disabled] {
    border: 0;
    font: inherit;
    height: 4.5rem;
    text-overflow: ellipsis; }
  .dropdown-search-container .dropdown-search-search {
    background-image: url("../assets/images/search.svg");
    background-repeat: no-repeat;
    padding-left: 4rem;
    background-position: left 1rem center; }
  .dropdown-search-container .dropdown-search-results {
    max-height: 40rem;
    margin-top: 1.5rem;
    padding-bottom: 1.5rem;
    overflow-y: scroll; }
  .dropdown-search-container .dropdown-search-results-container {
    display: none; }
    .dropdown-search-container .dropdown-search-results-container.open {
      display: block;
      margin-top: 1.5rem; }
  .dropdown-search-container .dropdown-search-results li {
    line-height: 140%;
    padding: 1.1rem 1.5rem 1rem 1.5rem;
    border-top: none;
    text-transform: capitalize; }
    .dropdown-search-container .dropdown-search-results li:hover {
      background-color: var(--gray-1); }
    .dropdown-search-container .dropdown-search-results li:focus {
      background-color: var(--gray-3); }
    .dropdown-search-container .dropdown-search-results li em {
      background-color: var(--blue-1);
      font-weight: 600; }

.employee-classcode-form {
  padding-top: 3rem; }

.employee-classcode-wrapper {
  display: -webkit-box;
  display: flex; }
  .employee-classcode-wrapper .form-group {
    margin-top: 0;
    width: 100%; }
  .employee-classcode-wrapper input[type=number] {
    width: 8rem; }
    .employee-classcode-wrapper input[type=number]:focus {
      box-shadow: 1px 0 0 #4579FF; }
  .employee-classcode-wrapper select {
    margin-left: -1px;
    width: 100%; }

.companion-classcode.hidden {
  display: none; }

.product-selector {
  border: 1px solid var(--gray-25);
  border-radius: 0.3rem;
  margin-top: 3rem; }
  .product-selector ul {
    list-style: circle;
    padding-left: 2em; }
    .product-selector ul li {
      margin-top: 1rem;
      font-size: 1.4rem; }
  .product-selector summary {
    padding: 1rem 1.5rem;
    margin-top: 1.5rem;
    border: 1px solid var(--gray-3); }

.product-option {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: end;
          align-items: end;
  padding: 3rem; }
  .product-option.product-option-ineligible label {
    pointer-events: none; }
  .product-option + .product-option {
    border-top: 1px solid var(--gray-25); }
  .product-option h4 {
    margin-top: 0 !important; }
  .product-option h4 ~ p {
    margin-top: 1rem;
    font-size: 1.4rem; }

.product-info {
  margin-right: 1.5rem; }

.product-checkbox {
  margin-right: 1.5rem; }
  .product-checkbox label {
    margin-top: 0 !important; }

.product-eligibility {
  display: -webkit-box;
  display: flex;
  margin-left: auto;
  padding: 0.5rem 1rem;
  border-radius: 0.3rem;
  color: var(--green-3);
  background-color: var(--green-1); }
  .product-eligibility.product-ineligible {
    color: var(--gray-4);
    background-color: var(--gray-2); }

.input-table {
  display: block;
  margin-top: 1.5rem; }

.input-table-column-headers {
  display: -webkit-box;
  display: flex;
  margin-left: 8rem;
  margin-bottom: 0.5rem; }

.input-table-column {
  width: 100%; }

.input-row {
  display: -webkit-box;
  display: flex; }
  .input-row > * {
    width: 50%; }

.row-label {
  max-width: 8rem;
  line-height: 4.5rem; }

/*
The div that holds all the lines
*/
#naicsResults {
  position: absolute;
  width: 100%;
  max-height: 40rem;
  overflow-y: scroll; }

#naicsResults,
.pac-container {
  list-style: none;
  z-index: 999999999;
  box-shadow: 0 2px 6px rgba(48, 51, 68, 0.2);
  background-color: white; }
  #naicsResults:after,
  .pac-container:after {
    display: none; }

/*
class for each line of the result
*/
#naicsResults li,
.dropdown-search-results li,
.pac-item {
  font-family: 'GT America', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.6rem;
  line-height: 140%;
  text-transform: capitalize;
  padding: 1.1rem 1.5rem 1rem 1.5rem;
  border-bottom: 1px solid var(--gray-2);
  border-top: none; }
  #naicsResults li:hover,
  .dropdown-search-results li:hover,
  .pac-item:hover {
    background-color: var(--gray-1); }
  #naicsResults li:focus,
  .dropdown-search-results li:focus,
  .pac-item:focus {
    background-color: var(--gray-3); }
  #naicsResults li .highlight,
  .dropdown-search-results li .highlight,
  .pac-item .highlight {
    background-color: #E5F2FF; }

.pac-icon-marker {
  display: none; }

.pac-item span {
  font: inherit; }

.button-group {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
          justify-content: flex-start; }
  .button-group .btn + .btn {
    margin-left: 1.5rem; }
  .button-group .btn--small + .btn--small {
    margin-left: 1rem; }
  .button-group.margin-top {
    margin-top: 3rem; }

.btn {
  display: inline-block;
  text-align: center;
  border-radius: 0.3rem;
  cursor: pointer;
  white-space: nowrap;
  -webkit-transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  transition: all 0.2s cubic-bezier(0, 0, 0, 1); }
  .btn svg {
    stroke: currentColor;
    vertical-align: middle;
    margin-right: 1rem;
    margin-top: -0.3rem; }
  .btn--big {
    height: 5rem;
    padding: 0 3rem;
    font-weight: 500;
    line-height: 5rem; }
  .btn--medium {
    height: 4.5rem;
    line-height: 4.5rem; }
  .btn--small {
    height: 3.5rem;
    padding: 0 1.4rem;
    font-size: 1.2rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
    line-height: 3.5rem; }
  .btn--full-width {
    width: 100%; }
  .btn--primary {
    background-color: var(--blue-3);
    color: white;
    box-shadow: 0 1px 6px -1px #85B2FD; }
    .btn--primary:hover {
      background-color: #2c67ff;
      box-shadow: 0 1px 3px -1px #85B2FD; }
    .btn--primary:active {
      box-shadow: 0 0 0 0 #85B2FD;
      background-color: var(--blue-3); }
  .btn--confirm {
    background-color: var(--green-3);
    color: white;
    box-shadow: 0px 1px 6px -1px #5effc8; }
    .btn--confirm:hover {
      background-color: #1fc29f;
      box-shadow: 0 1px 3px -1px #5effc8; }
    .btn--confirm:active {
      box-shadow: 0 0 0 0 #5effc8;
      background-color: var(--green-2); }
  .btn--secondary {
    box-shadow: inset 0 0 0 1px var(--gray-3), 0 1px 6px -1px #E2EAF0;
    color: var(--text-color);
    background-color: white; }
    .btn--secondary:hover {
      background-color: var(--gray-1);
      box-shadow: inset 0 0 0 1px var(--gray-3), 0 1px 3px -1px #E2EAF0; }
    .btn--secondary:active {
      box-shadow: inset 0 0 0 1px var(--gray-3), 0 0 0 0 #E2EAF0;
      background-color: white; }
  .btn--tertiary {
    color: var(--blue-3); }
    .btn--tertiary:hover {
      background-color: var(--blue-1); }
    .btn--tertiary img {
      vertical-align: middle;
      margin-top: -0.2rem;
      margin-right: 0.6rem; }
  .btn--back {
    color: var(--blue-3);
    padding-left: 0px; }
    .btn--back:hover {
      background-color: var(--blue-1);
      padding-left: 1.5rem; }
  .btn--navigation {
    color: var(--blue-3);
    padding-left: 0; }
    .btn--navigation:hover {
      background-color: white;
      padding-left: 1.5rem; }
  .btn.btn.btn--loading {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
            align-items: center;
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.7; }
    .btn.btn.btn--loading .btn--label {
      display: none; }
    .btn.btn.btn--loading .btn--loading-message {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center; }
    .btn.btn.btn--loading .circle-spinner {
      margin-right: 1rem; }
  .multi-form.hidden + .btn--add {
    display: none; }
  .multi-form + .btn--add {
    display: block; }
  .btn[disabled] {
    opacity: 0.7;
    cursor: not-allowed; }
  .btn .btn--loading-message {
    display: none; }

@font-face {
  font-family: 'GT America';
  src: url("/assets/fonts/GT-America-Standard-Regular.eot");
  src: url("/assets/fonts/GT-America-Standard-Regular.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/GT-America-Standard-Regular.woff2") format("woff2"), url("/assets/fonts/GT-America-Standard-Regular.woff") format("woff"), url("/assets/fonts/GT-America-Standard-Regular.ttf") format("truetype");
  font-weight: normal;
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'GT America';
  src: url("/assets/fonts/GT-America-Standard-Medium.eot");
  src: url("/assets/fonts/GT-America-Standard-Medium.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/GT-America-Standard-Medium.woff2") format("woff2"), url("/assets/fonts/GT-America-Standard-Medium.woff") format("woff"), url("/assets/fonts/GT-America-Standard-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'GT America';
  src: url("/assets/fonts/GT-America-Standard-Bold.eot");
  src: url("/assets/fonts/GT-America-Standard-Bold.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/GT-America-Standard-Bold.woff2") format("woff2"), url("/assets/fonts/GT-America-Standard-Bold.woff") format("woff"), url("/assets/fonts/GT-America-Standard-Bold.ttf") format("truetype");
  font-weight: bold;
  font-weight: 600;
  font-style: normal; }

h1, h2, h3, h4, h5 {
  font-weight: 700;
  margin: 1.414em 0 0;
  line-height: 150%; }

h1 {
  font-size: 2.441em; }

h2 {
  font-size: 1.953em; }

h3 {
  font-size: 1.563em;
  margin-bottom: 0.5rem; }

h4 {
  font-size: 1.8rem; }

h5 {
  font-size: 1.6rem;
  font-weight: 600; }

h6 {
  font-size: 0.85rem;
  color: var(--secondary-text-color); }

h2 + p {
  margin-top: 3rem; }

p {
  margin-top: 1.5rem;
  line-height: 140%; }
  p.note {
    color: var(--secondary-text-color);
    font-size: 1.4rem;
    margin-top: 1rem; }
  p.secondary {
    color: var(--secondary-text-color); }
  p.tooltip {
    color: var(--text-color);
    font-size: 1rem;
    margin-top: 0; }
  p.indent {
    margin-left: 2rem; }
  p.flex-row {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; }

a {
  color: var(--main-color);
  cursor: pointer; }
  a:hover {
    text-decoration: underline; }
  a.a--subtle {
    color: inherit; }
    a.a--subtle:hover {
      color: var(--main-color); }

b {
  font-weight: 600; }

.mini-label, .policy-table th {
  margin-top: 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-transform: uppercase;
  color: var(--gray-4); }

.tag {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 500;
  text-transform: uppercase;
  padding: 0px 1rem;
  border-radius: 0.3rem;
  letter-spacing: 0.05rem; }
  .tag.quoted {
    color: var(--green-35);
    background-color: var(--green-1); }
  .tag.declined {
    color: #f81c4d;
    background-color: #ffe9f0; }
  .tag.referred {
    color: var(--yellow-5);
    background-color: var(--yellow-1); }
  .tag.quoting {
    background-color: var(--blue-1);
    color: var(--blue-3); }

.policy-table td.tag {
  margin: 1.5rem 0 1.5rem 1.5rem; }

sup {
  vertical-align: baseline; }

.quote-detail-header {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  margin-top: 0.3rem;
  margin-bottom: 0.5rem; }

.premium-text {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 600;
  margin-top: 0.5rem;
  margin-bottom: -0.1rem; }

.billing-header,
.billing-search-container,
.billing-controls,
.sort-container,
.pageination-controls {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }

.billing-scrollable {
  overflow-y: scroll;
  padding-bottom: 5rem; }

.billing-header {
  padding: 1.5rem 3rem;
  -webkit-box-align: center;
          align-items: center;
  border-bottom: 1px solid var(--gray-2); }
  .billing-header h4 {
    margin: 0; }
  .billing-header .btn {
    height: 4.5rem;
    line-height: 4.5rem; }

.flex-bar {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }

.billing-header,
.billing-table-container {
  width: 100%; }

.billing-search-container {
  position: relative;
  -webkit-box-align: center;
          align-items: center;
  margin-left: 5rem; }
  .billing-search-container img {
    right: 1.5rem;
    top: 1.3rem;
    position: absolute;
    cursor: pointer; }

input.billing-search {
  width: 35rem;
  background-color: var(--gray-1);
  border: 1px solid var(--gray-2); }

.utility-field {
  width: 25rem; }
  .utility-field + .utility-field {
    margin-left: 1.5rem; }
  .utility-field + .btn {
    margin-left: 6rem .utility-field + .btn; }
    .utility-field + .btn :before {
      position: absolute;
      content: "";
      margin-left: -6.1rem;
      margin-top: 0.5rem;
      height: 3.5rem;
      width: 1px;
      background-color: var(--gray-3); }

.sort-container {
  padding: 3rem 0 1rem;
  -webkit-box-align: center;
          align-items: center; }
  .sort-container select {
    width: 25rem; }

.pageination-controls {
  -webkit-box-align: center;
          align-items: center; }
  .pageination-controls .btn {
    width: 4.5rem;
    height: 4.5rem;
    line-height: 4.5rem; }

.bills-shown {
  color: var(--gray-4); }

.billing-table-container {
  padding: 0 3rem; }
  .billing-table-container table {
    width: 100%;
    padding: 0 3rem; }
  .billing-table-container th {
    margin-top: 0;
    font-size: 1.2rem;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--gray-4);
    text-align: left;
    height: 6rem;
    line-height: 6rem; }
    .billing-table-container th:last-child {
      padding-right: 2rem; }
  .billing-table-container .t__right {
    text-align: right; }
  .billing-table-container .t__padleft {
    padding-left: 2rem; }
  .billing-table-container td {
    position: relative;
    line-height: 6rem;
    padding-bottom: 0; }
    .billing-table-container td .badge {
      position: absolute;
      top: 50%;
      -webkit-transform: translate3d(0, -50%, 0);
              transform: translate3d(0, -50%, 0); }
    .billing-table-container td:last-child {
      padding-right: 2rem; }
    .billing-table-container td.td__tabular {
      font-variant: tabular-nums;
      font-feature-settings: 'tnum' 1; }
  .billing-table-container .td__lob {
    padding-left: 2rem;
    width: 10rem; }
  .billing-table-container tr:nth-child(2n - 1) td {
    background-color: var(--gray-1); }
    .billing-table-container tr:nth-child(2n - 1) td:after {
      background-color: var(--gray-1); }
  .billing-table-container tr.placeholder td p {
    position: relative;
    background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
    background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
    background-size: 200% 100%;
    -webkit-animation: load 1s linear infinite -0.5s;
            animation: load 1s linear infinite -0.5s;
    color: transparent;
    margin: 2.5rem 1.5rem;
    height: 1.1rem; }
    .billing-table-container tr.placeholder td p:after {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      pointer-events: none;
      background: repeating-linear-gradient(transparent, transparent 1.1rem, #fff 1.1rem, #fff 2.2rem); }

@-webkit-keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }
    .billing-table-container tr.placeholder td p:after {
      left: 0; }

.billing-status-label {
  margin-top: 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-transform: uppercase;
  color: var(--gray-4); }
  .billing-status-label:before {
    display: inline-block;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 50%;
    margin-right: 0.7rem; }
  .billing-status-label.billing-status-label-overdue:before {
    background-color: #f81c4d; }
  .billing-status-label.billing-status-label-outstanding:before {
    background-color: var(--blue-3); }
  .billing-status-label.billing-status-label-paid:before {
    background-color: var(--green-3); }
  .billing-status-label.billing-status-label-unbilled:before {
    background-color: var(--gray-35); }
  .billing-status-label.billing-status-label-processing {
    position: relative; }
    .billing-status-label.billing-status-label-processing:before {
      border: 2px solid var(--gray-35);
      margin-bottom: -2px; }
    .billing-status-label.billing-status-label-processing:after {
      position: absolute;
      content: "";
      left: 0.5rem;
      top: calc(50% - 0.7rem);
      height: 1.4rem;
      width: 0.25rem;
      background-color: white;
      z-index: 2;
      -webkit-animation: slowspin 4s linear infinite;
              animation: slowspin 4s linear infinite; }

@-webkit-keyframes slowspin {
  from {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  to {
    -webkit-transform: rotateZ(360deg);
            transform: rotateZ(360deg); } }

@keyframes slowspin {
  from {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  to {
    -webkit-transform: rotateZ(360deg);
            transform: rotateZ(360deg); } }

.invoice-line-items {
  width: 100%;
  text-align: left; }

.rewards-icon {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  text-align: center;
  width: 4rem;
  height: 4rem;
  margin-top: auto !important;
  border-radius: 0.3rem;
  cursor: pointer;
  -webkit-transition: background-color 0.3s cubic-bezier(0, 0, 0, 1);
  transition: background-color 0.3s cubic-bezier(0, 0, 0, 1); }
  .rewards-icon:hover {
    background-color: var(--gray-1); }
    .rewards-icon:hover .balance {
      opacity: 1;
      -webkit-transition: opacity 0.25s ease;
      transition: opacity 0.25s ease; }
  .rewards-icon.animating-balance .balance {
    opacity: 1;
    -webkit-transition: opacity 0.25s ease;
    transition: opacity 0.25s ease; }
  .rewards-icon img {
    position: relative;
    z-index: 1; }

.coin-animation {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none; }

.balance {
  position: absolute;
  top: -1.5rem;
  left: 3rem;
  padding: 0.2rem 1rem;
  font-weight: 600;
  font-size: 1rem;
  opacity: 0;
  background-color: white;
  box-shadow: 0 0.5rem 2rem -0.1rem rgba(48, 51, 68, 0.1);
  -webkit-transition: opacity 0.25s ease 0.5s;
  transition: opacity 0.25s ease 0.5s;
  z-index: 2; }

.main-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: 40%;
  padding: 5rem; }
  .main-container .button {
    display: inline-block; }

.toast-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
          flex-direction: column-reverse;
  position: fixed;
  left: 8rem;
  width: 45rem;
  height: 100%;
  z-index: 999999999999999;
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.65, 0.04, 0.89, 0.49);
  transition: -webkit-transform 0.4s cubic-bezier(0.65, 0.04, 0.89, 0.49);
  transition: transform 0.4s cubic-bezier(0.65, 0.04, 0.89, 0.49);
  transition: transform 0.4s cubic-bezier(0.65, 0.04, 0.89, 0.49), -webkit-transform 0.4s cubic-bezier(0.65, 0.04, 0.89, 0.49); }

.toast {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  padding: 2rem;
  color: #303344;
  background-color: white;
  border-radius: 0.3rem;
  font-size: 1.6rem;
  font-weight: 500;
  pointer-events: auto;
  -webkit-animation: animate-in 0.25s ease;
          animation: animate-in 0.25s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  box-shadow: 0 0.5rem 2rem -0.1rem rgba(48, 51, 68, 0.2); }
  .toast + .toast {
    margin-bottom: 1.5rem; }
  .toast__black {
    background-color: #303344;
    color: white;
    box-shadow: 0 0.5rem 2rem -0.1rem rgba(48, 51, 68, 0.15); }
  .toast__reward {
    box-shadow: inset 0 0 0 2px var(--yellow-3), 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15); }
  .toast__achievement {
    box-shadow: inset 0 0 0 2px var(--yellow-3), 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15);
    color: #303344;
    background-color: var(--yellow-1);
    -webkit-animation: animate-in 0.25s ease, woosh 0.5s ease 0.3s;
            animation: animate-in 0.25s ease, woosh 0.5s ease 0.3s; }

@-webkit-keyframes woosh {
  0% {
    box-shadow: inset 0 0 0 2px #F8D31C, 0 0 0 0rem #F8D31C, 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15); }
  100% {
    box-shadow: inset 0 0 0 2px #F8D31C, 0 0 0 1.2rem transparent, 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15); } }

@keyframes woosh {
  0% {
    box-shadow: inset 0 0 0 2px #F8D31C, 0 0 0 0rem #F8D31C, 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15); }
  100% {
    box-shadow: inset 0 0 0 2px #F8D31C, 0 0 0 1.2rem transparent, 0 0.5rem 2rem -0.1rem rgba(173, 126, 0, 0.15); } }
  .toast__redemption {
    -webkit-box-align: start;
            align-items: flex-start;
    box-shadow: 0 0.5rem 2rem -0.1rem rgba(48, 51, 68, 0.15); }
    .toast__redemption .button {
      white-space: nowrap; }
  .toast .btn {
    margin-top: 0;
    margin-left: 1.5rem; }
  .toast p {
    font-size: 1.4rem;
    font-weight: 400;
    margin-top: 1rem;
    color: var(--gray-4); }
  .toast .tag {
    font-size: 1.1rem;
    text-transform: uppercase;
    padding: 0 0.4rem;
    line-height: 1.8rem;
    font-weight: 500;
    border-radius: 0.2rem; }
    .toast .tag__bonus {
      border: 2px solid var(--yellow-3);
      color: var(--yellow-5);
      margin-right: 1.5rem; }
  .toast .toast-image {
    height: 3rem;
    margin-right: 1.5rem; }
    .toast .toast-image img {
      height: 100%;
      width: auto; }
  .toast canvas {
    position: absolute;
    left: 0;
    margin-top: -3rem; }

@-webkit-keyframes animate-in {
  from {
    opacity: 0;
    -webkit-transform: translateX(3rem);
            transform: translateX(3rem); }
  to {
    opacity: 1;
    -webkit-transform: translateX(0rem);
            transform: translateX(0rem); } }

@keyframes animate-in {
  from {
    opacity: 0;
    -webkit-transform: translateX(3rem);
            transform: translateX(3rem); }
  to {
    opacity: 1;
    -webkit-transform: translateX(0rem);
            transform: translateX(0rem); } }

.coin-spin {
  margin-left: 2rem;
  font-size: 1.4rem;
  font-weight: 500; }
  .coin-spin:after {
    display: inline-block;
    content: "";
    text-align: center;
    line-height: 1.5rem;
    font-size: 1.2rem;
    font-weight: bold;
    width: 1.5rem;
    height: 1.5rem;
    background-image: url("../assets/images/bigcoin.png");
    background-size: cover;
    border-radius: 50%;
    margin-left: 0.3rem;
    margin-bottom: -0.3rem;
    -webkit-animation: coinspin 1s linear infinite;
            animation: coinspin 1s linear infinite; }

@-webkit-keyframes coinspin {
  from {
    -webkit-transform: rotateY(0);
            transform: rotateY(0); }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg); } }

@keyframes coinspin {
  from {
    -webkit-transform: rotateY(0);
            transform: rotateY(0); }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg); } }

.progress {
  font-size: 1.2rem;
  margin-left: 1.5rem; }

.stars {
  display: -webkit-box;
  display: flex;
  margin-left: 1.5rem;
  -webkit-box-align: center;
          align-items: center; }

.modal.modal-rewards-bg .modal-content {
  box-shadow: 0 0.6rem 2.4rem -0.4rem rgba(var(--yellow-5), 0.4);
  background-color: var(--yellow-1);
  background-image: url("../assets/images/reward_bg.png");
  background-size: auto 8rem;
  background-repeat: repeat;
  -webkit-animation: scroll-bg 8s linear infinite;
          animation: scroll-bg 8s linear infinite; }

@-webkit-keyframes scroll-bg {
  from {
    background-position-y: -4rem; }
  to {
    background-position-y: 4rem; } }

@keyframes scroll-bg {
  from {
    background-position-y: -4rem; }
  to {
    background-position-y: 4rem; } }

.modal.modal-rewards-bg .close-modal {
  background-color: white; }

.rewards-balance {
  display: inline-block;
  padding: 1.5rem 2rem;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  border-radius: 3.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  box-shadow: 0 0.5rem 2rem -0.3rem rgba(var(--yellow-4), 0.2); }
  .rewards-balance > * {
    vertical-align: middle; }
  .rewards-balance .balance-label {
    margin-right: 3rem;
    font-weight: 400; }

.rewards-listing {
  margin-top: 3rem; }

.reward-item {
  background-color: #fff;
  padding: 3rem;
  border-radius: 0.3rem;
  box-shadow: 0 0.5rem 2rem -0.3rem rgba(var(--yellow-4), 0.2); }
  .reward-item + .reward-item {
    margin-top: 1.5rem; }

.reward-contents {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
          justify-content: space-between;
  text-align: left; }
  .reward-contents img {
    width: 8rem; }

.modal .modal-content .reward-details {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start; }
  .modal .modal-content .reward-details img {
    width: 8rem; }

.reward-title {
  margin-left: 2rem; }
  .reward-title .reward-title-name {
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 0.5rem; }
  .reward-title span {
    color: var(--gray-35);
    font-size: 1.6rem; }
  .reward-title .coin-spin {
    margin-left: 0;
    margin-top: 1.5rem; }

.reward-price {
  vertical-align: middle; }
  .reward-price img {
    width: 2.5rem; }

.reward-form {
  margin-top: 3rem; }
  .reward-form:not(._hidden) + .button__reward {
    display: none; }
  .reward-form .button__reward {
    margin-top: 3rem; }

.bigcoin-spin {
  position: relative;
  display: inline-block;
  width: 3rem;
  height: 3rem;
  margin-left: 0.5rem;
  background-size: contain;
  background: url("../assets/images/bigcoin.png");
  background-size: contain; }
  .bigcoin-spin:after {
    z-index: 2; }
  .bigcoin-spin:before {
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg); }

._flex-wrap {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  ._flex-wrap__column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }

.acquaint-card {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: end;
          align-items: flex-end;
  position: absolute;
  z-index: 9999999;
  max-width: 24em;
  min-width: 24rem;
  padding: 3rem;
  font-size: 16px;
  line-height: 1.5em;
  border-radius: 3px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background-color: #fff;
  box-shadow: var(--card-box-shadow);
  -webkit-animation: come-in 0.4s ease;
          animation: come-in 0.4s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards; }
  .acquaint-card.acquaint-card__static {
    position: static;
    width: 100%; }
  .acquaint-card.acquaint-card__modal {
    display: block;
    position: fixed;
    max-width: 60rem;
    width: 100%;
    top: 20%;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 5rem;
    border-radius: 0.5rem;
    text-align: center;
    -webkit-transform: translate3d(0 -50%, 0);
            transform: translate3d(0 -50%, 0);
    box-shadow: 0 3px 18px rgba(48, 51, 68, 0.3);
    background-color: #fff;
    color: #303344; }
    .acquaint-card.acquaint-card__modal .acquaint-header {
      font-size: 2.4rem; }
    .acquaint-card.acquaint-card__modal .acquaint-text {
      font-size: 1.6rem;
      color: var(--gray-5); }
    .acquaint-card.acquaint-card__modal .acquaint-count {
      color: var(--gray-4); }
    .acquaint-card.acquaint-card__modal .acquaint-button-group {
      -webkit-box-pack: center;
              justify-content: center; }
  .acquaint-card.acquaint-card__hidden {
    visibility: hidden;
    position: absolute;
    right: -999rem; }

@-webkit-keyframes come-in {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 1.5rem, 0);
            transform: translate3d(0, 1.5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0px, 0);
            transform: translate3d(0, 0px, 0); } }

@keyframes come-in {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 1.5rem, 0);
            transform: translate3d(0, 1.5rem, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0px, 0);
            transform: translate3d(0, 0px, 0); } }
  .acquaint-card .acquaint-close {
    position: absolute;
    top: 1.5em;
    right: 1.5em;
    z-index: 999;
    color: var(--blue-3);
    cursor: pointer; }
  .acquaint-card .acquaint-title {
    width: 100%;
    margin-bottom: 1.5rem;
    font-size: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    color: var(--blue-3);
    text-align: left; }
  .acquaint-card .acquaint-header {
    width: 100%;
    font-weight: bold;
    font-size: 2rem;
    -webkit-box-ordinal-group: 2;
            order: 1;
    margin-top: 0; }
  .acquaint-card .acquaint-text {
    -webkit-box-ordinal-group: 3;
            order: 2;
    width: 100%;
    font-size: 1.6rem;
    margin-top: 1em;
    opacity: 1;
    color: var(--gray-5); }
    .acquaint-card .acquaint-text img {
      width: 100%; }
  .acquaint-card .acquaint-image {
    margin-bottom: 5rem; }
  .acquaint-card .acquaint-button-group {
    display: -webkit-box;
    display: flex;
    -webkit-box-ordinal-group: 4;
            order: 3;
    margin-top: 3rem;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center; }
  .acquaint-card .acquaint-button {
    display: inline-block;
    height: 3.5rem;
    padding: 0 1.4rem;
    font-size: 1.2rem;
    font-weight: 600;
    border-radius: 0.3rem;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
    line-height: 3.5rem;
    cursor: pointer; }
    .acquaint-card .acquaint-button + .acquaint-button {
      margin-left: 1.5rem; }
  .acquaint-card .acquaint-button-next {
    background-color: var(--blue-3);
    color: white;
    box-shadow: 0 1px 6px -1px #85B2FD; }
    .acquaint-card .acquaint-button-next:hover {
      background-color: #2c67ff;
      box-shadow: 0 1px 3px -1px #85B2FD; }
    .acquaint-card .acquaint-button-next:active {
      box-shadow: 0 0 0 0 #85B2FD;
      background-color: var(--blue-3); }
  .acquaint-card .acquaint-button-back {
    box-shadow: inset 0 0 0 1px var(--gray-3), 0 1px 6px -1px #E2EAF0;
    color: var(--text-color);
    background-color: white; }
    .acquaint-card .acquaint-button-back:hover {
      background-color: var(--gray-1);
      box-shadow: inset 0 0 0 1px var(--gray-3), 0 1px 3px -1px #E2EAF0; }
    .acquaint-card .acquaint-button-back:active {
      box-shadow: inset 0 0 0 1px var(--gray-3), 0 0 0 0 #E2EAF0;
      background-color: white; }
  .acquaint-card .acquaint-click-guide {
    display: table;
    -webkit-box-ordinal-group: 4;
            order: 3;
    padding: 5px 20px;
    margin-top: 2em;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
    border-radius: 2px; }
    .acquaint-card .acquaint-click-guide img {
      vertical-align: middle;
      margin-right: 0.5rem; }
  .acquaint-card ul {
    list-style: square;
    padding-left: 1.5em;
    margin-bottom: 1.5rem; }
  .acquaint-card.completed {
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
    -webkit-animation: complete 1s cubic-bezier(0, 1, 0, 1), bounce 2s cubic-bezier(0, 0, 0, 1) infinite, close 0.3s cubic-bezier(0, 1, 0, 1) 1s;
            animation: complete 1s cubic-bezier(0, 1, 0, 1), bounce 2s cubic-bezier(0, 0, 0, 1) infinite, close 0.3s cubic-bezier(0, 1, 0, 1) 1s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-backface-visibility: hidden !important;
            backface-visibility: hidden !important;
    color: #303344; }
    .acquaint-card.completed:before {
      position: absolute;
      top: calc(50% - 1.6em);
      content: attr(data-complete);
      max-width: 17em;
      min-width: 17em;
      background-color: #33F6B2;
      margin-top: -0.4em;
      padding: 1em;
      -webkit-transform: rotateX(180deg);
              transform: rotateX(180deg);
      text-align: center; }

@-webkit-keyframes enter {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes enter {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translate3d(0, -2px, 0);
            transform: translate3d(0, -2px, 0); }
  50% {
    -webkit-transform: translate3d(0, 2px, 0);
            transform: translate3d(0, 2px, 0); }
  100% {
    -webkit-transform: translate3d(0, -2px, 0);
            transform: translate3d(0, -2px, 0); } }

@keyframes bounce {
  0% {
    -webkit-transform: translate3d(0, -2px, 0);
            transform: translate3d(0, -2px, 0); }
  50% {
    -webkit-transform: translate3d(0, 2px, 0);
            transform: translate3d(0, 2px, 0); }
  100% {
    -webkit-transform: translate3d(0, -2px, 0);
            transform: translate3d(0, -2px, 0); } }

@-webkit-keyframes complete {
  0% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg); }
  100% {
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg); } }

@keyframes complete {
  0% {
    -webkit-transform: rotateX(0deg);
            transform: rotateX(0deg); }
  100% {
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg); } }

@-webkit-keyframes close {
  0% {
    -webkit-transform: scaleY(1) rotateX(180deg);
            transform: scaleY(1) rotateX(180deg); }
  100% {
    -webkit-transform: scaleY(0) rotateX(180deg);
            transform: scaleY(0) rotateX(180deg); } }

@keyframes close {
  0% {
    -webkit-transform: scaleY(1) rotateX(180deg);
            transform: scaleY(1) rotateX(180deg); }
  100% {
    -webkit-transform: scaleY(0) rotateX(180deg);
            transform: scaleY(0) rotateX(180deg); } }

.aquaint-minimized {
  position: fixed;
  bottom: 0;
  right: 2.2em;
  padding: 1em;
  line-height: 1em;
  font-size: 0.6em;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  background-color: #303344;
  cursor: pointer;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation: peekup 0.3s cubic-bezier(0, 0, 0, 1);
          animation: peekup 0.3s cubic-bezier(0, 0, 0, 1); }

@-webkit-keyframes peekup {
  0% {
    -webkit-transform: translate3d(0, 2.2em, 0);
            transform: translate3d(0, 2.2em, 0); }
  100% {
    -webkit-transform: translate3d(0, 0em, 0);
            transform: translate3d(0, 0em, 0); } }

@keyframes peekup {
  0% {
    -webkit-transform: translate3d(0, 2.2em, 0);
            transform: translate3d(0, 2.2em, 0); }
  100% {
    -webkit-transform: translate3d(0, 0em, 0);
            transform: translate3d(0, 0em, 0); } }

.acquaint-count {
  color: currentColor;
  margin-top: 1em; }

.acquaint-curtain {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(48, 51, 68, 0.8);
  z-index: 999999; }

.account-policies .acquaint-card {
  width: 100%;
  max-width: 58rem;
  margin-bottom: 1.5rem; }

._acquaint-anchor {
  position: relative; }

._acquaint-target {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; }
  ._acquaint-target:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: calc(100% + 2rem);
    height: calc(100% + 2rem);
    margin-left: -1rem;
    margin-top: -1rem;
    background-color: rgba(35, 216, 177, 0.1);
    border-radius: 0.5rem;
    box-shadow: inset 0 0 0 0.2rem var(--green-3); }

._acquaint-shimmer {
  position: absolute;
  left: 0;
  top: -2rem;
  pointer-events: none; }

::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
:-moz-placeholder {
  color: var(--gray-1); }

:root {
  --gray-1: #F7FBFF;
  --gray-2: #EFF4F8;
  --gray-25: #D5E2EC;
  --gray-3: #E2EAF0;
  --gray-35: #abbac6;
  --gray-4: #7D8D9E;
  --gray-5: #525c6c;
  --black: #303344;
  --blue-1: #E5F2FF;
  --blue-2: #85B2FD;
  --blue-3: #4579FF;
  --blue-4: #3448B5;
  --green-1: #DEFFF8;
  --green-2: #50E3C2;
  --green-3: #23D8B1;
  --green-35: #2DC5A3;
  --green-4: #0C8869;
  --yellow-5: #9D6900;
  --yellow-4: #d9ae00;
  --yellow-3: #F8D31C;
  --yellow-1: #fff6d7;
  --red-1: #FFE9F0;
  --red-3: #F81C4D;
  --bg-color: var(--gray-1);
  --border-color: var(--gray-2);
  --main-color: var(--blue-3);
  --confirm-color: var(--green-3);
  --text-color: var(--black);
  --error-color: var(--red);
  --secondary-text-color: var(--gray-4);
  --quote-sidebar-bg: var(--blue-4);
  --card-box-shadow: 0 1px 6px -1.5px var(--gray-3);
  --big-box-shadow: 0 2px 20px -1px rgba(0,10,30,0.2); }

.account-list {
  --al-bg: white;
  --al-bg-secondary: var(--gray-1);
  --al-bg-text: var(--black);
  --al-bg-text-secondary: var(--gray-4); }

.sidebar-quote,
.sidebar-account,
.sidebar-bind {
  --sb-bg: var(--gray-2);
  --sb-selected: white;
  --sb-text: var(--black);
  --sb-text-selected: var(--blue-3);
  --sb-text-secondary: var(--gray-4); }

body, html {
  height: 100%;
  margin: 0;
  font-size: 10px; }

html {
  box-sizing: border-box; }
  @media (max-width: 768px) {
    html {
      font-size: 8px; } }
  @media (min-width: 1680px) {
    html {
      font-size: 11px; } }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  font-family: 'GT America', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-text-rendering: optimizeLegibility;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  line-height: 140%;
  font-size: 1.6rem;
  color: var(--text-color);
  overflow: hidden; }

._turned-off {
  display: none; }

.alert-bar-container {
  width: 100%; }

.alert-bar {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  width: inherit;
  height: 5rem;
  padding: 0 3rem;
  text-align: center; }
  .alert-bar--warning {
    background-color: var(--yellow-3);
    color: var(--black);
    font-weight: 600; }
  .alert-bar span {
    vertical-align: middle; }
  .alert-bar .tag {
    margin-right: 1.5rem; }

.wrapper {
  height: inherit;
  display: -webkit-box;
  display: flex;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  background-color: var(--gray-1); }

.account-list {
  position: relative;
  max-width: 30rem;
  width: 100%;
  border-right: 1px solid var(--border-color); }

.header {
  display: -webkit-box;
  display: flex; }

.logo img {
  width: 4.5rem; }

.header--top {
  width: 100%;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  padding: 1.5rem;
  border-bottom: 1px solid rgba(48, 51, 68, 0.07); }
  .header--top h4 {
    margin: 0 0 0 1.5rem; }

.logo-container {
  display: -webkit-box;
  display: flex; }

.account-filter-list {
  display: -webkit-box;
  display: flex;
  font-size: 1.4rem;
  margin: 1.5rem; }
  .account-filter-list li {
    padding: 0.5rem 1.5rem;
    text-align: center;
    color: var(--gray-4);
    -webkit-transition: color 0.2s cubic-bezier(0, 0, 0, 1), border-bottom 0.2s cubic-bezier(0, 0, 0, 1);
    transition: color 0.2s cubic-bezier(0, 0, 0, 1), border-bottom 0.2s cubic-bezier(0, 0, 0, 1);
    border-bottom: 1px solid var(--gray-2); }
    .account-filter-list li:hover {
      cursor: pointer;
      color: var(--gray-5); }
    .account-filter-list li.account-filter-active {
      color: var(--blue-3);
      font-weight: 500;
      border-bottom: 2px solid var(--blue-3); }

.header--sidebar {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  height: 100vh;
  min-width: 7.5rem;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  background-color: white;
  box-shadow: inset -1px 0px 6px 0px var(--gray-3); }
  .header--sidebar h4 {
    margin: 0 0 0 1rem;
    font-weight: 600; }
  .header--sidebar > div {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .header--sidebar._turned-off {
    display: none; }
  .header--sidebar span {
    margin-bottom: 1rem; }

.main-navigation-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  margin-top: 1.5rem;
  height: calc(100% - 10rem); }

.main-navigation {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 3rem;
  border-radius: 50%;
  height: 100%; }
  .main-navigation li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    font-size: 1.1rem;
    color: var(--gray-4);
    text-decoration: none;
    font-weight: 500; }
    .main-navigation li.main-navigation-active {
      color: var(--gray-5); }
    .main-navigation li[title="Accounts"].main-navigation-active {
      color: var(--gray-5); }
    .main-navigation li[title="Invoices"].main-navigation-active {
      color: var(--green-4); }
    .main-navigation li[title="Support"].main-navigation-active {
      color: var(--red-3); }
  .main-navigation li + li {
    margin-top: 2rem; }
  .main-navigation li:not(.main-navigation-active) {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    opacity: 0.6; }
  .main-navigation .nav-icon {
    display: inherit;
    pointer-events: none; }
  .main-navigation .nav-icon--notification {
    position: relative; }
    .main-navigation .nav-icon--notification:after {
      position: absolute;
      top: 0;
      right: -0.4rem;
      content: "";
      width: 0.8rem;
      height: 0.8rem;
      border-radius: 50%;
      background-color: var(--green-3);
      box-shadow: 0 0 0 0.4rem currentColor; }

.main-navigation li, .tool-tip.logout {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  text-align: center;
  width: 4rem;
  height: 4rem;
  border-radius: 0.3rem;
  cursor: pointer;
  -webkit-transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  transition: all 0.3s cubic-bezier(0, 0, 0, 1); }
  .main-navigation li svg path, .tool-tip.logout svg path {
    -webkit-transition: color 0.3s cubic-bezier(0, 0, 0, 1);
    transition: color 0.3s cubic-bezier(0, 0, 0, 1); }

.page-container {
  display: inherit;
  width: 100%;
  max-width: 144rem;
  background-color: #fff; }
  .page-container.page-container--hidden {
    display: none; }
  .page-container.page-container--column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }

.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 4.5rem;
  width: 30rem;
  background-color: white;
  box-shadow: 0 -2px 4px -1px var(--border-color);
  text-align: center;
  line-height: 4.5rem; }
  .footer a {
    font-weight: bold; }

.account-listing {
  height: 100%;
  padding-bottom: 12rem;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  overflow-x: hidden; }
  .account-listing #accountList li {
    position: relative;
    padding: 0.75rem 1.5rem;
    margin: 0.5rem 1.5rem 0.5rem 1.5rem;
    color: var(--secondary-text-color);
    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow-x: hidden;
    z-index: 1; }
    .account-listing #accountList li:before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      opacity: 0;
      background-color: var(--blue-1);
      -webkit-transition: all 0.3s cubic-bezier(0, 0, 0, 1);
      transition: all 0.3s cubic-bezier(0, 0, 0, 1);
      z-index: -1; }
    .account-listing #accountList li.account-selected {
      color: var(--blue-3);
      margin: 0.5rem 1.5rem 0.5rem 1.5rem;
      border-radius: 0.2rem; }
      .account-listing #accountList li.account-selected:hover {
        color: var(--blue-3); }
      .account-listing #accountList li.account-selected:before {
        -webkit-transform: translateX(0);
                transform: translateX(0);
        opacity: 1; }
    .account-listing #accountList li.account-demo:after {
      content: "DEMO";
      color: var(--blue-3);
      border: 1px solid var(--blue-3);
      font-size: 1rem;
      padding: 0.2rem 0.3rem;
      border-radius: 0.3rem;
      font-weight: 600;
      letter-spacing: 0.05rem;
      margin-left: 1rem;
      margin-top: -0.5rem;
      vertical-align: middle; }
    .account-listing #accountList li:hover {
      color: #637385; }
    .account-listing #accountList li.account-list-loading {
      margin: 3rem;
      border-radius: 0.3rem;
      position: relative;
      background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
      background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
      background-size: 200% 100%;
      -webkit-animation: load 1s linear infinite -0.5s;
              animation: load 1s linear infinite -0.5s; }
      .account-listing #accountList li.account-list-loading:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 100%;
        pointer-events: none;
        background: repeating-linear-gradient(transparent, transparent 1.5rem, #fff 1.5rem, #fff 3rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }
      .account-listing #accountList li.account-list-loading:first-child {
        margin-top: 1.5rem; }
      .account-listing #accountList li.account-list-loading:nth-child(1) {
        width: 77%; }
      .account-listing #accountList li.account-list-loading:nth-child(2) {
        width: 74%; }
      .account-listing #accountList li.account-list-loading:nth-child(3) {
        width: 63%; }
      .account-listing #accountList li.account-list-loading:nth-child(4) {
        width: 65%; }
      .account-listing #accountList li.account-list-loading:nth-child(5) {
        width: 64%; }
      .account-listing #accountList li.account-list-loading:nth-child(6) {
        width: 69%; }
      .account-listing #accountList li.account-list-loading:nth-child(7) {
        width: 72%; }
      .account-listing #accountList li.account-list-loading:nth-child(8) {
        width: 77%; }
      .account-listing #accountList li.account-list-loading:nth-child(9) {
        width: 58%; }
      .account-listing #accountList li.account-list-loading:nth-child(10) {
        width: 67%; }

.account-search-wrapper {
  position: relative;
  padding: 1.5rem 1.5rem 0rem; }
  .account-search-wrapper img {
    right: 3rem;
    top: 2.8rem;
    position: absolute;
    cursor: pointer; }

.searching {
  color: var(--gray-35);
  margin-left: 0.5rem; }

.account-detail {
  display: -webkit-box;
  display: flex;
  width: 100%;
  height: 100%; }

.account-info {
  max-width: 52rem;
  width: 100%;
  padding: 3rem;
  overflow-y: scroll;
  overflow-x: hidden;
  overscroll-behavior-y: contain; }
  .account-info h4 {
    margin-top: 5rem; }

.loading > * {
  display: none; }

.loaded {
  opacity: 0;
  -webkit-animation: load-in 0.3s cubic-bezier(0, 0, 0, 1);
          animation: load-in 0.3s cubic-bezier(0, 0, 0, 1);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards; }

@-webkit-keyframes load-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes load-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.map {
  width: 100%;
  height: 15.1rem;
  margin-top: -1.5rem;
  background-size: cover;
  box-shadow: var(--card-box-shadow);
  border: 0.5rem solid white;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
  background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
  background-size: 200% 100%;
  -webkit-animation: load 1s linear infinite -0.5s;
          animation: load 1s linear infinite -0.5s; }
  .map:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: repeating-linear-gradient(transparent, transparent 15.1rem, #fff 15.1rem, #fff 15.1rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }
  .map img {
    width: 100%;
    height: 100%; }

.account-contact-info {
  color: var(--gray-4);
  margin-top: 3rem; }
  .account-contact-info li {
    margin-top: 1rem; }
    .account-contact-info li a {
      color: inherit; }
  .account-contact-info img {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    vertical-align: middle; }
  .account-contact-info span {
    display: inline-block;
    text-align: center;
    width: 2.5rem;
    margin-right: 10px; }

.account-sub-info {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 1.5rem; }

.account-number {
  color: var(--gray-4); }
  .account-number span {
    color: var(--black);
    letter-spacing: 0.05rem; }

.edit-account {
  display: inline-block; }

.info-block {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  .info-block .info {
    width: calc(50% - 3rem); }

.info {
  margin-top: 3rem; }
  .info.loading {
    height: 6rem;
    position: relative;
    background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
    background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
    background-size: 200% 100%;
    -webkit-animation: load 1s linear infinite -0.5s;
            animation: load 1s linear infinite -0.5s; }
    .info.loading:after {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      pointer-events: none;
      background: repeating-linear-gradient(transparent, transparent 1.1rem, #fff 1.1rem, #fff 3.1rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

p.loading {
  height: 4.8rem;
  margin-top: 3rem;
  width: 75%;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
  background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
  background-size: 200% 100%;
  -webkit-animation: load 1s linear infinite -0.5s;
          animation: load 1s linear infinite -0.5s; }
  p.loading:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: repeating-linear-gradient(transparent, transparent 1.1rem, #fff 1.1rem, #fff 3.1rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

.header-1 {
  width: 50%;
  height: 3rem;
  margin-top: 5rem;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
  background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
  background-size: 200% 100%;
  -webkit-animation: load 1s linear infinite -0.5s;
          animation: load 1s linear infinite -0.5s;
  border-radius: 0.3rem; }
  .header-1:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: repeating-linear-gradient(transparent, transparent 3rem, #fff 3rem, #fff 3rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

.button-loading {
  width: 7rem;
  height: 3.5rem;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
  background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
  background-size: 200% 100%;
  -webkit-animation: load 1s linear infinite -0.5s;
          animation: load 1s linear infinite -0.5s;
  border-radius: 0.2rem;
  margin-left: 1rem; }
  .button-loading:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: repeating-linear-gradient(transparent, transparent 3.5rem, #fff 3.5rem, #fff 3.5rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

.header-2 {
  width: 50%;
  height: 1.8rem;
  margin-top: 3rem;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
  background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
  background-size: 200% 100%;
  -webkit-animation: load 1s linear infinite -0.5s;
          animation: load 1s linear infinite -0.5s;
  border-radius: 0.3rem; }
  .header-2:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: repeating-linear-gradient(transparent, transparent 2rem, #fff 2rem, #fff 2rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }

.account-policies {
  position: relative;
  width: 100%;
  background-color: var(--bg-color);
  padding: 1.5rem; }

.policy {
  max-width: 58rem;
  width: 100%;
  background-color: white;
  border-radius: 0.5rem;
  box-shadow: var(--card-box-shadow); }
  .policy + .policy {
    margin-top: 1.5rem; }

.onboarding-card {
  position: relative;
  padding: 3rem;
  background-color: var(--blue-3);
  color: #fff; }
  .onboarding-card h4 {
    margin-top: 0; }
  .onboarding-card p {
    max-width: 34rem; }
  .onboarding-card .onboarding-card-image {
    position: absolute;
    right: 3rem;
    bottom: 3rem; }
  .onboarding-card .button-group {
    -webkit-box-pack: start;
            justify-content: flex-start; }
  .onboarding-card .btn {
    box-shadow: none; }

.banner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 9.7rem;
  padding: 3rem;
  border-bottom: 1px solid --var(--gray-2);
  background-color: white; }
  .quote-content .banner {
    padding: 0; }
  .banner .loading-badge {
    width: 4.5rem;
    height: 4.5rem;
    position: relative;
    background: -webkit-gradient(linear, left top, right top, from(#F7FBFF), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), color-stop(#EFF4F8), to(#F7FBFF));
    background: linear-gradient(to right, #F7FBFF, #EFF4F8, #EFF4F8, #EFF4F8, #EFF4F8, #F7FBFF);
    background-size: 200% 100%;
    -webkit-animation: load 1s linear infinite -0.5s;
            animation: load 1s linear infinite -0.5s;
    border-radius: 50%; }
    .banner .loading-badge:after {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      pointer-events: none;
      background: repeating-linear-gradient(transparent, transparent 5rem, #fff 5rem, #fff 10rem); }

@keyframes load {
  0% {
    background-position: 100% 50%; }
  100% {
    background-position: -100% 50%; } }
  .banner .loading-badge + .header-2 {
    margin-left: 1.5rem;
    margin-top: 0; }

.policy-header {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  padding: 3rem;
  border-bottom: 1px solid var(--border-color); }
  .policy-header > div {
    display: inherit;
    -webkit-box-align: inherit;
            align-items: inherit; }
  .policy-header h4 {
    margin: 0; }
  .policy-header span {
    color: var(--blue-3); }

.badge {
  min-width: 4.5rem;
  min-height: 4.5rem;
  max-width: 4.5rem;
  max-height: 4.5rem;
  border-radius: 50%;
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  line-height: 4.5rem;
  margin-right: 1.5rem;
  color: white; }
  .badge.bop-badge {
    background-image: url("../assets/images/bop_badge.png");
    background-size: cover; }
  .badge.wc-badge {
    background: url("../assets/images/wc_badge.png");
    background-size: cover; }
  .badge.xs-badge {
    min-width: 7rem;
    border-radius: 4.5rem;
    background: url("../assets/images/bop_badge.png") 0px 50%/4.5rem 4.5rem no-repeat, url("../assets/images/xs_badge.png") 2.5rem 50%/4.5rem 4.5rem; }
  .badge.hab-badge {
    background: url("../assets/images/hab_badge.png");
    background-size: cover; }
  .badge.badge-bound {
    margin-right: 1.8rem; }
    .badge.badge-bound:after {
      content: "";
      position: absolute;
      left: 3.1rem;
      margin-top: -0.4rem;
      width: 6.3rem;
      height: 6.3rem;
      z-index: -1; }
  .badge.badge-small {
    height: 3.5rem;
    width: 3.5rem;
    min-height: 3.5rem;
    min-width: 3.5rem;
    line-height: 3.5rem; }

.policy-info {
  position: relative;
  padding: 0 1.5rem 1.5rem 1.5rem; }

.policy-actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 1.5rem;
  padding: 0 3rem; }
  .policy-actions h5 {
    margin: 0; }

.document-download {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  vertical-align: middle;
  padding: 1.5rem;
  margin-top: 1.5rem;
  border-radius: 0.4rem;
  cursor: pointer;
  box-shadow: 0 0 0 1px rgba(48, 51, 68, 0.1), 0 1px 6px -1px rgba(48, 51, 68, 0.1); }
  .document-download.document-download_in-card {
    margin: 1.5rem; }
  .document-download .doc-info {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .document-download span {
    margin-left: 1.5rem; }

.guidelines {
  margin-left: 1.5em;
  margin-top: 3rem;
  list-style: disc; }
  .guidelines li {
    color: var(--gray-5); }
  .guidelines li + li {
    margin-top: 1.5rem; }

.inelligible-info {
  padding: 3rem; }
  .inelligible-info h5 {
    margin: 0; }

.quotes-header {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center; }
  .quotes-header h4 {
    margin: 0; }

.policy-table {
  width: 100%;
  margin-top: 3rem;
  text-align: left; }
  .policy-table th {
    padding: 0 1.5rem 1.5rem 1.5rem; }
    .policy-table th:nth-child(4) {
      text-align: right; }
  .policy-table td {
    margin: 1.5rem 0; }
  .policy-table tr:first-child {
    width: calc(100% + 6rem);
    margin-left: -3rem; }
  .policy-table tr:not(:first-child) {
    cursor: pointer; }
    .policy-table tr:not(:first-child):hover {
      background-color: var(--gray-1); }
  .policy-table tr.enter {
    opacity: 0;
    -webkit-transform: translate3d(0, 1rem, 0);
            transform: translate3d(0, 1rem, 0);
    -webkit-animation: quote-load-in 0.3s cubic-bezier(0, 0, 0, 1);
            animation: quote-load-in 0.3s cubic-bezier(0, 0, 0, 1);
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }

@-webkit-keyframes quote-load-in {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1rem, 0);
            transform: translate3d(0, 1rem, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@keyframes quote-load-in {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1rem, 0);
            transform: translate3d(0, 1rem, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }
  .policy-table tr td {
    padding: 0 1.5rem; }
  .policy-table tr .tag {
    padding: 0 0.7rem; }
  .policy-table tr td:nth-child(2) {
    color: var(--secondary-text-color); }
  .policy-table tr td:nth-child(3) {
    display: inline-block; }
  .policy-table tr td:nth-child(4) {
    text-align: right;
    font-weight: 600; }

.bop-excess-combo td:first-child,
.bop-excess-combo th:first-child {
  padding-left: 0; }

.bop-excess-combo td:last-child {
  padding-right: 0;
  text-align: right; }

.bop-excess-combo td img {
  vertical-align: text-bottom; }

.policy-no-quotes {
  padding: 1rem 3rem 3rem 3rem; }
  .policy-no-quotes p {
    margin-bottom: 1rem; }
  .policy-no-quotes .btn {
    width: 100%; }

.new-quote {
  -webkit-animation: glow 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 1s;
          animation: glow 1s cubic-bezier(0.785, 0.135, 0.15, 0.86) 1s;
  border-radius: 0.3rem;
  background-color: var(--green-1);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards; }

@-webkit-keyframes glow {
  0% {
    background-color: var(--green-1); }
  100% {
    background-color: white; } }

@keyframes glow {
  0% {
    background-color: var(--green-1); }
  100% {
    background-color: white; } }
  .new-quote:after {
    content: "new";
    position: absolute;
    left: 120px;
    margin-top: 5px;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--green-3);
    border-radius: 50%;
    -webkit-transform: rotateZ(-30deg);
            transform: rotateZ(-30deg); }

.quote-loading {
  position: absolute;
  left: 9999rem;
  padding: 1.5rem;
  margin: 0 auto;
  color: var(--blue-3);
  background: var(--blue-1);
  background-size: 200% 100%;
  font-weight: 600;
  text-align: center;
  border-radius: 0.2rem;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.2s cubic-bezier(0, 0, 0, 1) 0.2s;
  transition: opacity 0.2s cubic-bezier(0, 0, 0, 1) 0.2s; }
  .quote-loading.show {
    position: static;
    opacity: 1; }
  .quote-loading span {
    margin-left: 1.5rem; }
    .quote-loading span:after {
      content: "Preparing your quote...";
      -webkit-animation: quote-messages 12s linear infinite;
              animation: quote-messages 12s linear infinite; }

@-webkit-keyframes quote-messages {
  0% {
    content: "Preparing your quote..."; }
  20% {
    content: "Crunching the numbers..."; }
  40% {
    content: "Sharpening pencils..."; }
  60% {
    content: "Double checking eligibility..."; }
  80% {
    content: "Stapling documents..."; }
  100% {
    content: "Preparing your quote..."; } }

@keyframes quote-messages {
  0% {
    content: "Preparing your quote..."; }
  20% {
    content: "Crunching the numbers..."; }
  40% {
    content: "Sharpening pencils..."; }
  60% {
    content: "Double checking eligibility..."; }
  80% {
    content: "Stapling documents..."; }
  100% {
    content: "Preparing your quote..."; } }

.quote-detail {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  max-width: 62rem;
  padding: 1.5rem 3rem;
  z-index: 999;
  background-color: white;
  border-left: 1px solid var(--border-color);
  pointer-events: none;
  -webkit-transform: translate3d(1.5rem, 0, 0);
          transform: translate3d(1.5rem, 0, 0);
  opacity: 0;
  -webkit-transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  overflow-y: scroll;
  overscroll-behavior-y: contain; }
  .quote-detail.open {
    pointer-events: auto;
    -webkit-transform: translate3d(0, 0px, 0);
            transform: translate3d(0, 0px, 0);
    opacity: 1; }
  .quote-detail h4 {
    margin-top: 4rem; }
  .quote-detail h5 {
    margin-top: 3rem; }

.quote-header {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }

.quote-subheader {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 4rem;
  padding-bottom: 1.5rem; }
  .quote-subheader .badge {
    margin-top: 0.5rem; }
  .quote-subheader .quote-subhead-details {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
            justify-content: flex-start; }
  .quote-subheader .quote-premium {
    text-align: right; }
  .quote-subheader h3, .quote-subheader h4 {
    margin: 0; }
  .quote-subheader p {
    margin-top: 0.5rem; }
  .quote-subheader span {
    color: var(--secondary-text-color); }

.payment-options {
  width: 100%;
  margin-top: 1rem;
  flex-wrap: wrap;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center; }

.payment-option {
  padding: 2rem 0;
  width: calc(50% - 3rem); }
  .payment-option b {
    display: block;
    font-size: 2.4rem;
    font-weight: 400;
    margin-bottom: 1.5rem;
    color: var(--text-color); }
  .payment-option p {
    margin-top: 0; }
    .payment-option p:first-child {
      color: var(--secondary-text-color); }

.accordion-container {
  margin-top: 2rem; }
  .accordion-container details {
    border-bottom: 1px solid var(--border-color); }
    .accordion-container details:first-child {
      border-top: 1px solid var(--border-color); }
  .accordion-container summary {
    position: relative;
    padding: 1.5rem 0px; }
    .accordion-container summary h5 {
      margin-top: 0;
      margin-bottom: 1.5rem; }
    .accordion-container summary ol {
      margin-top: 1.5rem; }
  .accordion-container summary::-webkit-details-marker {
    display: none; }
  .accordion-container details summary:focus {
    outline: none; }
  .accordion-container details summary:before {
    content: '⌃';
    position: absolute;
    right: 0;
    font-size: 2.1rem;
    -webkit-transition: all 0.1s cubic-bezier(0, 0, 0, 1);
    transition: all 0.1s cubic-bezier(0, 0, 0, 1);
    -webkit-transform: rotateZ(90deg);
            transform: rotateZ(90deg);
    color: var(--blue-3); }
  .accordion-container details summary:after {
    content: "Show";
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    font-size: 1.2rem;
    color: var(--blue-3);
    text-transform: uppercase;
    font-weight: 600; }
  .accordion-container details[open] summary ol {
    display: none; }
  .accordion-container details[open] summary:before {
    -webkit-transform: rotateZ(180deg);
            transform: rotateZ(180deg);
    margin-top: -0.3rem;
    font-weight: 400; }
  .accordion-container details[open] summary:after {
    content: "Hide"; }
  .accordion-container details[open] ol {
    margin-bottom: 1.5rem; }
  .accordion-container li {
    height: 3.5rem;
    line-height: 3.5rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    color: var(--gray-4);
    position: relative;
    overflow-x: hidden;
    z-index: 2; }
    .accordion-container li span {
      position: relative;
      background-color: white;
      z-index: 1; }
    .accordion-container li:before {
      position: absolute;
      content: "";
      width: 100%;
      height: 1px;
      background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%, #fff), color-stop(50%, var(--gray-3)), to(var(--gray-3)));
      background: linear-gradient(to right, #fff, #fff 50%, var(--gray-3) 50%, var(--gray-3));
      background-size: 0.4rem 0.2rem;
      background-repeat: repeat;
      color: var(--gray-35);
      z-index: 0;
      margin-top: 1.5rem; }

.detail-list {
  margin-top: 1.5rem;
  position: -webkit-sticky;
  position: sticky; }
  .detail-list li {
    height: 3.5rem;
    line-height: 3.5rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    position: relative;
    overflow-x: hidden;
    z-index: 2; }
    .detail-list li span {
      position: relative;
      background-color: white;
      z-index: 1; }
    .detail-list li:before {
      position: absolute;
      content: "";
      width: 100%;
      height: 1px;
      background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%, #fff), color-stop(50%, var(--gray-3)), to(var(--gray-3)));
      background: linear-gradient(to right, #fff, #fff 50%, var(--gray-3) 50%, var(--gray-3));
      background-size: 0.4rem 0.2rem;
      background-repeat: repeat;
      color: var(--gray-35);
      z-index: 0;
      margin-top: 2.2rem; }

.flow-container {
  position: absolute;
  left: -9999rem;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 9999;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1); }
  .flow-container.lockdown {
    pointer-events: none;
    cursor: not-allowed; }
  .flow-container.open {
    pointer-events: auto;
    left: 0; }
    .flow-container.open .flow-sidebar,
    .flow-container.open .flow-scollable {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      opacity: 1; }

.flow-sidebar,
.flow-scollable {
  -webkit-transform: translate3d(1.5rem, 0, 0);
          transform: translate3d(1.5rem, 0, 0);
  opacity: 0; }

.flow-wrapper {
  display: -webkit-box;
  display: flex;
  height: inherit;
  background-color: var(--sb-bg); }

.flow-sidebar {
  position: fixed;
  left: 0;
  top: 0;
  min-width: 30rem;
  max-width: 30rem;
  padding: 0 3rem;
  height: inherit;
  background-color: var(--sb-bg);
  -webkit-transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  transition: all 0.3s cubic-bezier(0, 0, 0, 1); }
  .flow-sidebar img {
    width: 4rem; }

.flow-sidebar-header {
  padding-top: 1.5rem; }
  .flow-sidebar-header .badge {
    margin-top: 0.5rem; }

.flow-sidebar-info {
  color: var(--sb-text);
  margin-top: 3rem; }
  .flow-sidebar-info h4 {
    margin-top: 1.5rem; }
  .flow-sidebar-info .sidebar-account-name {
    font-size: 1.4rem;
    color: var(--sb-text-secondary); }

.flow-sidebar-breadcrumb {
  margin-top: 3rem;
  color: var(--sb-text-secondary); }
  .flow-sidebar-breadcrumb li {
    padding: 0.6rem 1.5rem;
    margin: 0.25rem 0 0.25rem 0px;
    font-size: 1.6rem;
    cursor: pointer;
    -webkit-transition: all 0.2s cubic-bezier(0, 0, 0, 1);
    transition: all 0.2s cubic-bezier(0, 0, 0, 1); }
    .flow-sidebar-breadcrumb li:hover {
      color: var(--sb-text); }
  .flow-sidebar-breadcrumb li.selected {
    background-color: white;
    box-shadow: 0px 2px 4px -1px var(--gray-3);
    color: var(--sb-text-selected);
    border-radius: 2px; }
  .flow-sidebar-breadcrumb li.indented {
    margin-left: 1.5rem;
    font-size: 1.4rem; }

.flow-scollable {
  width: calc(100% - 29rem);
  margin-left: 29rem;
  overflow-y: scroll;
  -webkit-transition: all 0.1s cubic-bezier(0, 0, 0, 1) 0.05s;
  transition: all 0.1s cubic-bezier(0, 0, 0, 1) 0.05s; }

.flow-shadow {
  display: -webkit-box;
  display: flex;
  width: calc(100% - 1rem);
  min-height: 100%;
  background-color: white;
  margin-top: 1.5rem;
  border-top-left-radius: 1rem;
  box-shadow: -0.2rem 0px 1.2rem var(--gray-3);
  margin-left: 1rem; }

.flow-content {
  width: 100%;
  min-height: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: white;
  min-width: 74.5rem;
  max-width: 74.5rem;
  padding-bottom: 5rem;
  padding-top: 3rem;
  padding-left: 7rem;
  padding-right: 7rem;
  margin-top: 1.5rem;
  border-top-left-radius: 0.5rem; }
  .flow-content h2 {
    margin-top: 3rem; }
  .flow-content h4 {
    margin-top: 5rem; }
  .flow-content .map {
    position: relative;
    height: auto;
    margin-top: 0rem; }

.flow-rail {
  position: relative;
  height: 100%;
  width: 100%;
  padding: 1.5rem;
  margin-top: 1.5rem;
  background-color: white; }

.rail-card {
  position: absolute;
  max-width: 36rem;
  min-width: 36rem;
  left: -6rem;
  padding: 0 3rem;
  border-radius: 0.2rem;
  background-color: white;
  color: var(--gray-4);
  opacity: 0;
  -webkit-transform: translate3d(0, 3rem, 0);
          transform: translate3d(0, 3rem, 0);
  opacity: 0;
  -webkit-transform: translate3d(0, 1rem, 0);
          transform: translate3d(0, 1rem, 0);
  -webkit-animation: quote-load-in 0.3s cubic-bezier(0, 0, 0, 1);
          animation: quote-load-in 0.3s cubic-bezier(0, 0, 0, 1);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards; }

@keyframes quote-load-in {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 1rem, 0);
            transform: translate3d(0, 1rem, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }
  .rail-card .rail-card-header {
    margin-bottom: 3rem; }
    .rail-card .rail-card-header img {
      width: 5rem;
      margin-bottom: 1.5rem; }
  .rail-card h5 {
    margin-top: 0; }
  .rail-card ol li {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    margin-top: 1rem;
    font-size: 1.4rem;
    position: relative;
    overflow-x: hidden;
    z-index: 2; }
    .rail-card ol li span {
      position: relative;
      background-color: white;
      z-index: 1; }
    .rail-card ol li:before {
      position: absolute;
      content: "";
      width: 100%;
      height: 1px;
      background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%, #fff), color-stop(50%, var(--gray-3)), to(var(--gray-3)));
      background: linear-gradient(to right, #fff, #fff 50%, var(--gray-3) 50%, var(--gray-3));
      background-size: 0.4rem 0.2rem;
      background-repeat: repeat;
      color: var(--gray-35);
      z-index: 0;
      margin-top: 1rem; }

.coverage-table {
  min-width: 25rem; }
  .coverage-table p {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    font-size: 1.4rem; }
    .coverage-table p span:last-child {
      text-align: right;
      flex-shrink: 3; }
    .coverage-table p b:last-child {
      text-align: right; }

.bind-loader {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  text-align: center;
  pointer-events: none;
  padding: 4rem 0 0;
  -webkit-transition: opacity 0.2s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.2s cubic-bezier(0, 0, 0, 1);
  transition: opacity 0.2s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.2s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.2s cubic-bezier(0, 0, 0, 1), opacity 0.2s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.2s cubic-bezier(0, 0, 0, 1), opacity 0.2s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.2s cubic-bezier(0, 0, 0, 1); }
  .bind-loader .circle-spinner {
    width: 4.2rem;
    height: 4.2rem;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    .bind-loader .circle-spinner circle {
      stroke-width: 0.3rem;
      stroke: var(--blue-3); }
  .bind-loader.bound {
    padding: 4rem 0;
    margin-top: -5rem; }
    .bind-loader.bound .binding-status:after {
      content: "Policy bound!";
      -webkit-animation: none;
              animation: none; }
    .bind-loader.bound .binding-status:before {
      content: "Hooray!";
      -webkit-animation: none;
              animation: none; }
    .bind-loader.bound .bound-icon {
      opacity: 1;
      pointer-events: auto;
      position: static;
      -webkit-transform: translate3d(0, 0px, 0) scale(1);
              transform: translate3d(0, 0px, 0) scale(1); }
    .bind-loader.bound .progress-bar {
      opacity: 0;
      pointer-events: none;
      position: absolute; }
    .bind-loader.bound .circle-spinner {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      -webkit-transform: translate3d(0, 1rem, 0) scale(0.9);
              transform: translate3d(0, 1rem, 0) scale(0.9); }
    .bind-loader.bound ~ .button-group {
      display: none; }
  .bind-loader.quoted {
    padding: 4rem 0;
    position: unset; }
    .bind-loader.quoted:before {
      content: "";
      position: absolute;
      width: 60rem;
      height: 40rem;
      border-radius: 0.5rem;
      background-color: white;
      z-index: 0;
      -webkit-transform: scale(0.9);
              transform: scale(0.9);
      opacity: 0;
      -webkit-animation: green-bg-in 0.3s cubic-bezier(0, 0, 0, 1);
              animation: green-bg-in 0.3s cubic-bezier(0, 0, 0, 1);
      -webkit-animation-fill-mode: forwards;
              animation-fill-mode: forwards; }

@-webkit-keyframes green-bg-in {
  0% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes green-bg-in {
  0% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    opacity: 0; }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }
    .bind-loader.quoted h3 {
      position: relative; }
    .bind-loader.quoted .quoting-status:after {
      content: "Loading quote details...";
      -webkit-animation: none;
              animation: none; }
    .bind-loader.quoted .quoting-status:before {
      content: "Success!";
      -webkit-animation: none;
              animation: none; }
    .bind-loader.quoted .bound-icon {
      opacity: 1;
      pointer-events: auto;
      position: static;
      -webkit-transform: translate3d(0, 0px, 0) scale(1);
              transform: translate3d(0, 0px, 0) scale(1); }
    .bind-loader.quoted .circle-spinner {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      -webkit-transform: translate3d(0, 1rem, 0) scale(0.9);
              transform: translate3d(0, 1rem, 0) scale(0.9); }
    .bind-loader.quoted .progress-bar {
      opacity: 0;
      pointer-events: none;
      position: absolute; }
    .bind-loader.quoted ~ .button-group {
      display: none; }
  .bind-loader.show {
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0);
    opacity: 1;
    pointer-events: auto; }

.quotes-collected {
  position: absolute;
  top: 8rem;
  text-transform: uppercase;
  font-size: 3.6rem;
  font-weight: bold;
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), transform 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1); }
  .quotes-collected:empty {
    opacity: 0;
    -webkit-transform: scale(0.9);
            transform: scale(0.9); }

.attune-loader,
.bound-icon {
  -webkit-transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  transition: all 0.3s cubic-bezier(0, 0, 0, 1); }

.bound-icon {
  width: 10rem;
  height: 10rem;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }
  .bound-icon svg {
    vertical-align: middle; }

.quoting-status {
  margin-top: 3rem;
  color: var(--black); }
  .quoting-status:before {
    display: block;
    margin-top: 2rem;
    content: 'Processing quote'; }
  .quoting-status:after {
    content: "Dotting i's...";
    display: block;
    font-size: 1.6rem;
    color: var(--gray-4);
    font-weight: 400;
    -webkit-animation: quote-messages 10s linear infinite;
            animation: quote-messages 10s linear infinite; }

@keyframes quote-messages {
  0% {
    content: "Dotting the i's..."; }
  20% {
    content: "Crossing the t's..."; }
  40% {
    content: "Spellchecking..."; }
  60% {
    content: "Warming up the printer..."; }
  80% {
    content: "Looking for the stapler..."; }
  100% {
    content: "Dotting the i's..."; } }

.binding-status {
  margin-top: 3rem;
  color: var(--black); }
  .binding-status:before {
    display: block;
    margin-top: 2rem;
    content: 'Binding quote'; }
  .binding-status:after {
    content: "Dotting i's...";
    display: block;
    font-size: 1.6rem;
    color: var(--gray-4);
    font-weight: 400;
    -webkit-animation: bind-messages 10s linear infinite;
            animation: bind-messages 10s linear infinite; }

@-webkit-keyframes bind-messages {
  0% {
    content: "Dotting the i's..."; }
  20% {
    content: "Crossing the t's..."; }
  40% {
    content: "Spellchecking..."; }
  60% {
    content: "Shaking hands..."; }
  80% {
    content: "Preparing confetti..."; }
  100% {
    content: "Dotting the i's..."; } }

@keyframes bind-messages {
  0% {
    content: "Dotting the i's..."; }
  20% {
    content: "Crossing the t's..."; }
  40% {
    content: "Spellchecking..."; }
  60% {
    content: "Shaking hands..."; }
  80% {
    content: "Preparing confetti..."; }
  100% {
    content: "Dotting the i's..."; } }

.quoting-canvas,
#proccessingQuote,
#quotedCelebration {
  top: 0;
  left: 0;
  z-index: 99999999999999;
  position: absolute;
  pointer-events: none; }

#proccessingQuote,
#quotedCelebration {
  pointer-events: auto;
  margin-top: 1.5rem; }

.animate-transition {
  -webkit-animation: animate-transition 0.3s cubic-bezier(1, 0, 0, 1);
          animation: animate-transition 0.3s cubic-bezier(1, 0, 0, 1); }

@-webkit-keyframes animate-transition {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  50% {
    opacity: 0;
    -webkit-transform: translate3d(0, 5px, 0);
            transform: translate3d(0, 5px, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@keyframes animate-transition {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  50% {
    opacity: 0;
    -webkit-transform: translate3d(0, 5px, 0);
            transform: translate3d(0, 5px, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.child-indent {
  padding: 3rem 0 3rem 3rem;
  margin-top: 0;
  border-left: 1px solid var(--gray-3);
  background-color: white;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
  -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1), opacity 0.3s cubic-bezier(0, 0, 0, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0, 1), opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1); }
  .child-indent--no-padding {
    padding: 0 3rem 3rem; }
  .child-indent + .child-indent {
    margin-top: -3rem;
    border-top: none; }
  .child-indent.half-size {
    padding-right: 1.5rem;
    width: 50%; }
    .child-indent.half-size + .half-size {
      padding-left: 1.5rem;
      padding-right: 3rem;
      margin-left: -4.5px !important; }
  .child-indent input:not([type="range"]),
  .child-indent select,
  .child-indent .radio-button label {
    background-color: white; }
  @media screen and (max-width: 480px) {
    .child-indent {
      padding: 1rem; } }

.child-no-indent {
  margin-top: 2rem; }
  .child-no-indent + .form-group {
    margin-top: 4rem; }

.warning {
  margin-top: calc(-2rem - 0.2rem);
  margin-left: calc(-2rem - 0.2rem);
  margin-bottom: calc(-2rem - 0.2rem);
  width: calc(100% + 4rem + 0.4rem);
  background-color: #FFF8D7;
  color: #BC8F00;
  line-height: 140%;
  padding: 2rem; }
  .warning h5 {
    margin-top: 0; }
  .warning p {
    margin-top: 0; }

.summary-container {
  margin-top: 3rem; }
  .summary-container h4 {
    margin-bottom: 1.5rem; }
  .summary-container p {
    margin: 0;
    padding: 1rem 0;
    position: relative;
    overflow-x: hidden;
    z-index: 2; }
    .summary-container p span {
      position: relative;
      background-color: white;
      z-index: 1; }
    .summary-container p:before {
      position: absolute;
      content: "";
      width: 100%;
      height: 1px;
      background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%, #fff), color-stop(50%, var(--gray-3)), to(var(--gray-3)));
      background: linear-gradient(to right, #fff, #fff 50%, var(--gray-3) 50%, var(--gray-3));
      background-size: 0.4rem 0.2rem;
      background-repeat: repeat;
      color: var(--gray-35);
      z-index: 0;
      margin-top: 1rem; }
  .summary-container p.indent {
    padding-left: 3rem;
    color: var(--gray-4); }

.payment-table {
  width: 100%;
  margin-top: 2rem; }
  .payment-table h5 {
    margin-top: 3rem;
    margin-bottom: 1.5rem; }
  .payment-table hr {
    margin: 1.5rem 0 1.5rem 0; }
  .payment-table li {
    width: inherit;
    display: -webkit-box;
    display: flex;
    margin-top: 1rem;
    -webkit-box-pack: justify;
            justify-content: space-between; }
  .payment-table h2 {
    margin-top: 0; }
    .payment-table h2 span {
      font-size: 1.8rem;
      font-weight: 400; }
      .payment-table h2 span:first-child {
        vertical-align: baseline; }
      .payment-table h2 span:last-child {
        vertical-align: super; }

hr.double {
  margin: 1rem 0 1rem 0;
  border-top: 1px solid var(--border-color);
  height: 0.5rem;
  border-left: 0;
  border-right: 0;
  border-bottom: 1px solid var(--border-color); }

.modal {
  position: fixed;
  top: -1.5rem;
  left: 0;
  width: 100%;
  height: calc(100% + 1.5rem);
  padding-bottom: 5rem;
  -webkit-transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  z-index: 999999;
  -webkit-transform: translate3d(0, 0px, 0);
          transform: translate3d(0, 0px, 0);
  background-color: rgba(48, 51, 68, 0.75);
  overflow: scroll; }
  .modal.hidden {
    opacity: 0;
    -webkit-transform: translate3d(0, 1.5rem, 0);
            transform: translate3d(0, 1.5rem, 0);
    pointer-events: none; }
  .modal.supersize .modal-content {
    width: 76.8rem; }
  .modal.fullscreen {
    padding-bottom: 0; }
    .modal.fullscreen .modal-content {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      width: 100%;
      height: 100%;
      margin: 0;
      -webkit-box-align: center;
              align-items: center;
      -webkit-box-pack: center;
              justify-content: center;
      background-color: #e5f2ff; }
  .modal .modal-content {
    position: relative;
    padding: 50px;
    width: 60rem;
    margin: 8.5rem auto 0;
    background-color: white;
    border-radius: 0.5rem;
    box-shadow: var(--big-box-shadow);
    text-align: center;
    overflow: hidden; }
    .modal .modal-content img {
      width: 10rem; }
      .modal .modal-content img + h3 {
        margin-top: 3rem; }
    .modal .modal-content canvas {
      z-index: 0;
      pointer-events: auto; }
    .modal .modal-content .close-modal {
      position: absolute;
      top: 1.5rem;
      right: 1.5rem;
      width: 4rem;
      height: 4rem;
      padding: 1.2rem;
      -webkit-transition: background-color 0.2s ease;
      transition: background-color 0.2s ease;
      cursor: pointer; }
      .modal .modal-content .close-modal img {
        width: 100%; }
      .modal .modal-content .close-modal:hover {
        background-color: var(--gray-1); }
  .modal h3 {
    margin-top: 0;
    margin-bottom: 3rem; }
  .modal .button-group {
    margin-top: 5rem;
    -webkit-box-pack: center;
            justify-content: center; }

.butter-bar {
  display: -webkit-box;
  display: flex;
  position: fixed;
  height: 6rem;
  width: 100%;
  top: 0;
  left: 0;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  font-weight: bold;
  z-index: 999999; }
  .butter-bar__error {
    background-color: #F81C4D;
    color: white; }
  .butter-bar .error-type {
    background-color: #fa6687;
    font-size: 1.2rem;
    text-transform: uppercase;
    padding: 0.4rem 1rem;
    margin-right: 1.5rem;
    border-radius: 0.2rem; }

.circle-spinner {
  position: relative;
  vertical-align: middle;
  width: 2.2rem;
  height: 2.2rem; }
  .circle-spinner svg {
    position: relative;
    width: inherit;
    height: inherit;
    z-index: 2;
    display: block;
    margin-top: 0;
    margin-right: 1rem; }
  .circle-spinner circle {
    -webkit-animation: spin 1.3s linear infinite;
            animation: spin 1.3s linear infinite;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    stroke: currentColor; }
  .circle-spinner.account-loading {
    color: var(--gray-35); }

@-webkit-keyframes spin {
  0% {
    stroke-dasharray: 0,1000;
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  50% {
    stroke-dasharray: 66,1000;
    -webkit-transform: rotateZ(250deg);
            transform: rotateZ(250deg); }
  100% {
    stroke-dasharray: 0,1000;
    -webkit-transform: rotateZ(750deg);
            transform: rotateZ(750deg); } }

@keyframes spin {
  0% {
    stroke-dasharray: 0,1000;
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  50% {
    stroke-dasharray: 66,1000;
    -webkit-transform: rotateZ(250deg);
            transform: rotateZ(250deg); }
  100% {
    stroke-dasharray: 0,1000;
    -webkit-transform: rotateZ(750deg);
            transform: rotateZ(750deg); } }

.progress-bar {
  position: relative;
  width: 100%;
  height: 1rem;
  background-color: white;
  margin-top: 3rem;
  border-radius: 0.5rem;
  overflow: hidden; }
  .progress-bar.progress-bar__bg {
    background-color: var(--blue-1); }
  .progress-bar:after {
    position: absolute;
    content: "";
    width: 100%;
    left: 0;
    height: inherit;
    border-radius: 0.5rem;
    background: linear-gradient(-45deg, rgba(255, 255, 255, 0.5) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.5) 75%, transparent 75%, transparent 0), var(--blue-3);
    background-size: 5rem 5rem;
    -webkit-animation: bgcycle 1s linear infinite, progressBar 15s ease;
            animation: bgcycle 1s linear infinite, progressBar 15s ease; }

@-webkit-keyframes bgcycle {
  0% {
    background-position: 0% 0; }
  100% {
    background-position: -50px -50px; } }

@keyframes bgcycle {
  0% {
    background-position: 0% 0; }
  100% {
    background-position: -50px -50px; } }

@-webkit-keyframes progressBar {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  10% {
    -webkit-transform: translateX(-95%);
            transform: translateX(-95%); }
  20% {
    -webkit-transform: translateX(-91%);
            transform: translateX(-91%); }
  30% {
    -webkit-transform: translateX(-76%);
            transform: translateX(-76%); }
  50% {
    -webkit-transform: translateX(-71%);
            transform: translateX(-71%); }
  70% {
    -webkit-transform: translateX(-48%);
            transform: translateX(-48%); }
  90% {
    -webkit-transform: translateX(-32%);
            transform: translateX(-32%); }
  95% {
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%); }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%); } }

@keyframes progressBar {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  10% {
    -webkit-transform: translateX(-95%);
            transform: translateX(-95%); }
  20% {
    -webkit-transform: translateX(-91%);
            transform: translateX(-91%); }
  30% {
    -webkit-transform: translateX(-76%);
            transform: translateX(-76%); }
  50% {
    -webkit-transform: translateX(-71%);
            transform: translateX(-71%); }
  70% {
    -webkit-transform: translateX(-48%);
            transform: translateX(-48%); }
  90% {
    -webkit-transform: translateX(-32%);
            transform: translateX(-32%); }
  95% {
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%); }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%); } }

.dialog {
  padding: 1em;
  margin: 0;
  border-radius: 3px;
  font-size: 1.4rem;
  line-height: 140%; }
  .dialog.dialog-large {
    font-size: 16px; }
  .dialog.dialog-margin {
    margin: 3rem 0; }
  .dialog.dialog-gray {
    margin-top: 1.5rem;
    background-color: var(--gray-1);
    color: var(--gray-4); }
  .dialog.dialog-blue {
    background-color: var(--blue-1);
    color: var(--blue-4); }
  .dialog.dialog-error {
    background-color: var(--red-1);
    color: var(--red-3); }
  .dialog.dialog-warning {
    background-color: var(--yellow-1);
    color: var(--yellow-5); }

.chat {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  height: 4.5rem;
  width: 9rem;
  border-radius: 2.3rem;
  background-color: var(--blue-3);
  text-align: center;
  line-height: 4.5rem;
  font-weight: bold;
  color: white;
  z-index: 999;
  box-shadow: 0 1px 6px -1px #85B2FD; }

.recorder {
  position: fixed;
  bottom: 2rem;
  right: 12rem; }

.stop-record, .play-record {
  display: none; }

.cursor {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999999999; }

.click-animation {
  position: absolute;
  top: -2.5px;
  left: -2.5px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  -webkit-animation: click 0.25s ease forwards;
          animation: click 0.25s ease forwards;
  z-index: 999999999; }

@-webkit-keyframes click {
  from {
    background-color: #4579ff;
    box-shadow: 0 0 0 0px #4579ff; }
  to {
    background-color: rgba(69, 121, 255, 0);
    box-shadow: 0 0 0 20px rgba(69, 121, 255, 0); } }

@keyframes click {
  from {
    background-color: #4579ff;
    box-shadow: 0 0 0 0px #4579ff; }
  to {
    background-color: rgba(69, 121, 255, 0);
    box-shadow: 0 0 0 20px rgba(69, 121, 255, 0); } }

.tippet {
  position: absolute;
  display: inline-block;
  padding: 2rem;
  max-width: 22rem;
  border-radius: 5px;
  font: inherit;
  line-height: 1.5em;
  z-index: 9999;
  background-color: white;
  box-shadow: 0 4px 20px -2px rgba(10, 20, 50, 0.33); }

.tippet * {
  width: 100%; }

.digit-spinner {
  display: none;
  font-size: 3rem;
  font-weight: 600;
  margin-top: 3rem;
  margin-left: -1.2em;
  overflow: hidden;
  height: 1em; }
  .digit-spinner .spinner-col {
    width: 0.6em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    margin-top: -0.15em;
    color: inherit;
    word-break: break-word;
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.98);
    transition: -webkit-transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.98);
    transition: transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.98);
    transition: transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.98), -webkit-transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.98); }

.state-log {
  display: none;
  font-size: 14px;
  background-color: var(--gray-1);
  padding: 1.5rem;
  margin-top: 1.5rem;
  line-height: 20px; }

span[data-tooltip] {
  vertical-align: sub;
  margin-left: 0.3rem; }

.tool-tip {
  position: relative;
  display: inline-block;
  padding: 0;
  white-space: nowrap;
  color: var(--gray-4);
  text-decoration: underline;
  cursor: help; }
  .tool-tip.tool-tip__large {
    white-space: normal; }
    .tool-tip.tool-tip__large:before {
      top: -2rem;
      max-width: 33rem;
      width: 33rem;
      padding: 2rem;
      font-weight: normal;
      font-size: inherit;
      line-height: 1.5em;
      color: white;
      background-color: var(--black);
      box-shadow: 0 0.8rem 5rem -0.3rem rgba(48, 51, 68, 0.3); }
    .tool-tip.tool-tip__large:after {
      top: 0;
      margin-left: -0.7rem;
      border-bottom: 1rem solid transparent;
      border-top: 1rem solid transparent;
      border-right: 0.8rem solid var(--black); }
    .tool-tip.tool-tip__large:before, .tool-tip.tool-tip__large:after {
      -webkit-transform: none;
              transform: none;
      left: 3.5rem;
      -webkit-transform: translate3d(0.5rem, 0, 0);
              transform: translate3d(0.5rem, 0, 0); }
    .tool-tip.tool-tip__large:hover:before, .tool-tip.tool-tip__large:hover:after {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
  .tool-tip::after {
    content: '';
    width: 0;
    height: 0;
    margin-left: -0.4rem;
    border-right: 0.5rem solid var(--blue-4);
    border-bottom: 0.5rem solid transparent;
    border-top: 0.5rem solid transparent;
    -webkit-transform: translate3d(1.5rem, -50%, 0);
            transform: translate3d(1.5rem, -50%, 0); }
  .tool-tip::before {
    content: attr(data-tooltip);
    padding: 0.4rem 0.8rem;
    max-width: 30rem;
    font-size: 1.4rem;
    font-weight: 600;
    border-radius: 0.2rem;
    color: var(--blue-1);
    background-color: var(--blue-4);
    -webkit-transform: translate3d(1.5rem, -50%, 0);
            transform: translate3d(1.5rem, -50%, 0); }
  .tool-tip::before, .tool-tip::after {
    position: absolute;
    left: 100%;
    top: 50%;
    z-index: 999;
    -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), transform 0.3s cubic-bezier(0, 0, 0, 1);
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1), transform 0.3s cubic-bezier(0, 0, 0, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1);
    opacity: 0;
    pointer-events: none; }
  .tool-tip:hover::before, .tool-tip:hover::after {
    opacity: 1;
    pointer-events: none;
    -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0, 1) 0.25s, -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1) 0.25s;
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1) 0.25s, -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1) 0.25s;
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1) 0.25s, transform 0.3s cubic-bezier(0, 0, 0, 1) 0.25s;
    transition: opacity 0.3s cubic-bezier(0, 0, 0, 1) 0.25s, transform 0.3s cubic-bezier(0, 0, 0, 1) 0.25s, -webkit-transform 0.3s cubic-bezier(0, 0, 0, 1) 0.25s;
    -webkit-transform: translate3d(1rem, -50%, 0);
            transform: translate3d(1rem, -50%, 0); }

.pagination {
  margin-top: 3rem; }
  .pagination ul {
    display: -webkit-box;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
            justify-content: center; }
  .pagination .pageination-link {
    width: 3.5rem;
    height: 3.5rem;
    text-align: center;
    line-height: 3.5rem;
    border-radius: 0.2rem;
    color: var(--gray-4);
    cursor: pointer; }
    .pagination .pageination-link:hover {
      color: var(--black);
      background-color: var(--gray-2); }
  .pagination .pageination-link-active {
    background-color: var(--blue-3);
    font-weight: 600;
    color: white; }
    .pagination .pageination-link-active:hover {
      color: #fff;
      background-color: var(--blue-3); }

._gh-hide {
  display: none; }

.feedback-module {
  position: fixed;
  bottom: 2rem;
  right: 13rem;
  max-width: 38rem;
  background-color: white;
  padding: 1.5rem 3rem 3rem;
  border-radius: 0.4rem;
  box-shadow: var(--big-box-shadow);
  z-index: 999;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  opacity: 1;
  pointer-events: auto;
  -webkit-transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  transition: all 0.3s cubic-bezier(0, 0, 0, 1); }
  .feedback-module:empty {
    -webkit-transform: translateY(1.5rem);
            transform: translateY(1.5rem);
    opacity: 0;
    pointer-events: none; }
  .feedback-module h4 {
    margin-top: 1.5rem; }
  .feedback-module p {
    margin-bottom: 3rem; }
  .feedback-module .button-group {
    margin-top: 3rem; }
  .feedback-module .form-group {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem; }
  .feedback-module .form-group:not(.hidden) + .star-input-group {
    margin-top: 3rem; }
  .feedback-module .form-group.hidden + .btn {
    margin-top: 1.5rem; }

.close-feedback {
  position: absolute;
  top: 2rem;
  right: 2rem;
  opacity: 0.5;
  cursor: pointer; }

.star-input-group {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center; }
  .star-input-group label {
    text-transform: uppercase;
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 0; }
  .star-input-group ~ .star-input-group {
    margin-top: 1.5rem; }
  .star-input-group + .radio-group,
  .star-input-group + .select-container {
    margin: 1.5rem 0 3rem; }

.star-input {
  display: -webkit-box;
  display: flex;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg); }
  .star-input li {
    cursor: pointer; }
    .star-input li.rated svg polygon {
      fill: var(--yellow-3); }
    .star-input li.rated svg polygon {
      stroke: transparent; }
    .star-input li svg polygon {
      stroke: var(--gray-3); }
    .star-input li:hover svg polygon {
      stroke: var(--yellow-3); }
    .star-input li:hover ~ li svg polygon {
      stroke: var(--yellow-3); }
    .star-input li + li {
      padding-left: 0.5rem; }

.policy-animation {
  position: relative;
  -webkit-animation: bob 2.5s ease infinite;
          animation: bob 2.5s ease infinite;
  width: 7rem;
  margin-bottom: 3rem; }
  .policy-animation img.quote-bob, .policy-animation img.shine-spin {
    width: 100%; }
  .policy-animation .shine-spin {
    position: absolute;
    right: -3rem;
    top: -3rem;
    -webkit-animation: spin-shine 2.5s ease infinite;
            animation: spin-shine 2.5s ease infinite;
    z-index: -1; }

@-webkit-keyframes bob {
  0% {
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem); }
  50% {
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem); }
  100% {
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem); } }

@keyframes bob {
  0% {
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem); }
  50% {
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem); }
  100% {
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem); } }

@-webkit-keyframes spin-shine {
  0% {
    -webkit-transform: rotateZ(360deg) scale(1.2);
            transform: rotateZ(360deg) scale(1.2); }
  50% {
    -webkit-transform: rotateZ(180deg) scale(0.8);
            transform: rotateZ(180deg) scale(0.8); }
  100% {
    -webkit-transform: rotateZ(0deg) scale(1.2);
            transform: rotateZ(0deg) scale(1.2); } }

@keyframes spin-shine {
  0% {
    -webkit-transform: rotateZ(360deg) scale(1.2);
            transform: rotateZ(360deg) scale(1.2); }
  50% {
    -webkit-transform: rotateZ(180deg) scale(0.8);
            transform: rotateZ(180deg) scale(0.8); }
  100% {
    -webkit-transform: rotateZ(0deg) scale(1.2);
            transform: rotateZ(0deg) scale(1.2); } }

.promo-text {
  color: var(--green-3);
  text-transform: uppercase;
  font-size: 1.1rem;
  margin-top: 0rem;
  font-weight: 500; }

.bonus-text {
  position: absolute;
  font-size: 1.2rem;
  background-color: var(--blue-3);
  color: white;
  text-transform: uppercase;
  padding: 0.4rem 0.8rem;
  font-weight: 600;
  border-radius: 0.3rem;
  -webkit-animation: bonus 1s ease forwards;
          animation: bonus 1s ease forwards; }

@-webkit-keyframes bonus {
  0% {
    -webkit-transform: translateY(0rem);
            transform: translateY(0rem);
    opacity: 1; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
    opacity: 0; } }

@keyframes bonus {
  0% {
    -webkit-transform: translateY(0rem);
            transform: translateY(0rem);
    opacity: 1; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
    opacity: 0; } }

.centroid-marker {
  position: absolute;
  padding: 0.5rem 1rem;
  font-size: 1.2rem;
  background-color: var(--black);
  border-radius: 0.4rem;
  color: white; }
  .centroid-marker:before {
    content: "";
    position: absolute;
    height: 1rem;
    width: 1rem;
    border-radius: 50%;
    margin-left: -1.5rem;
    margin-top: -1rem;
    background-color: white; }
  .centroid-marker:hover {
    z-index: 99999; }

.flow-rail .sectioned-guidelines {
  margin-top: 4rem; }

.flow-rail .map {
  width: 30rem;
  height: 30rem;
  margin-top: 12rem; }

.sectioned-guidelines {
  display: block; }
  .sectioned-guidelines p {
    margin-bottom: 2rem; }
  .sectioned-guidelines details {
    padding: 2rem 0; }
    .sectioned-guidelines details + details {
      border-top: 1px solid var(--gray-2); }
  .sectioned-guidelines ul {
    list-style: circle;
    padding-left: 2em; }
  .sectioned-guidelines ul li {
    margin-top: 1rem; }

.expandable {
  padding: 2rem 0;
  border-top: 1px solid var(--gray-2);
  border-bottom: 1px solid var(--gray-2); }
