/*
 *	File Name:              libraries.css
 *	Author:                 Domenic Polsoni - (FS Local, Inc.)
 *
 *	Date Created:		      October 24, 2011
 *	Date Modified:
 *
 *  Colors:  Blue -   			#1681c4
 *           Green -  			#8bc53f
 *           Charcoal Grey -    #4a4a4a
 *           Red -              #ef6d6d
 *
 *	Stylesheet that controls resets and typography.
 */

/************ NORMALIZE, RESETS AND COMMON STYLES ****************/

/* ESC primary colours */

.esc-orange {
  color: #ff8300 !important;
}

a.esc-orange:hover {
  color: #002939 !important;
}

.esc-orange-bg {
  background-color: #ff8300 !important;
}

.esc-orange-bg:not(:disabled):not(.disabled):hover {
  background-color: #d36d00 !important;
}

.esc-blue {
  color: #002939 !important;
}

a.esc-blue:hover,
.esc-blue.hover:hover {
  color: #027dad !important;
}

.esc-blue-bg {
  background-color: #002939 !important;
}

.esc-blue-bg:not(:disabled):not(.disabled):hover {
  background-color: #027dad !important;
}

.light-blue {
  color: #eff5fc !important;
}

.light-blue-bg {
  background: #eff5fc !important;
}

/* grays - lightest to darkest */

.gray-shade1 {
  color: #f7f7f7 !important;
}

.gray-shade1-bg {
  background-color: #f7f7f7 !important;
}

.gray-shade2 {
  color: #e7e7e7 !important;
}

.gray-shade2-bg {
  background-color: #e7e7e7 !important;
}

.gray-shade3 {
  color: #dbdbdb !important;
}

.gray-shade3-bg {
  background-color: #dbdbdb !important;
}

.gray-shade4 {
  color: #bebebe !important;
}

.gray-shade5 {
  color: #919191 !important;
}

.gray-shade6 {
  color: #4a4a4a !important;
}

.red {
  color: #ef6d6d !important;
}

.red-bg {
  background-color: #ef6d6d !important;
}

.green {
  color: #8bc53f !important;
}

.white {
  color: #fff !important;
}

.yellow {
  color: #fdd329 !important;
}

.yellow-bg {
  background-color: #fdd329 !important;
}

/* End of ESC Colours */

* {
  box-sizing: border-box;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  margin: 0;
  scroll-behavior: smooth;
}

.noScroll {
  overflow: hidden;
  overflow-x: hidden;
  overflow-y: hidden;
}

h1,
h2,
h3,
h4,
p,
blockquote,
figure,
ol,
ul {
  margin: 0;
  padding: 0;
}

main,
li {
  display: block;
}

h1,
h2,
h3,
h4 {
  font-size: inherit;
}

strong {
  font-weight: bold;
}

a,
button {
  color: inherit;
}

a {
  text-decoration: none;
}

a.underline {
  text-decoration: underline;
}

button {
  -webkit-font-smoothing: inherit;
  background: none;
  border: 0;
  cursor: pointer;
  font: inherit;
  letter-spacing: inherit;
  overflow: visible;
}

fieldset {
  border: 0;
  padding: 0.01em 0 0 0;
  margin: 0;
  min-width: 0;
}

body:not(:-moz-handler-blocked) fieldset {
  display: table-cell;
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/*:focus   {         Only employ if we're going to replace with custom focus styles for accesibility.
   outline: 0;
}*/

img {
  border: 0;
  height: auto;
  max-width: 100%;
}

input,
textarea {
  font-family: "Roboto", sans-serif;
}

.text-transform-uppercase {
	text-transform: uppercase	;
}
/*********** END OF NORMALIZE, RESETS AND COMMON STYLES *****************/

/* clears the 'X' from Internet Explorer */

input[type="search"]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}
input[type="search"]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

/* clears the 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

/*** Common classes ***/

@media only screen and (max-width: 767px) {
  /* Flex box */
  .flex-row-vcenter {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: left;
  }
  .flex-col-vcenter {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: left;
  }
  .flex-align-items-flex-start {
    align-items: flex-start;
  }
  .justify-content-center {
    justify-content: center;
  }
  .justify-content-space-between {
    justify-content: space-between;
  }
  .d-flex {
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  /* Flex box */
  .flex-row-vcenter {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: left;
  }
  .flex-col-vcenter {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: left;
  }
  .flex-align-items-flex-start {
    align-items: flex-start;
  }
  .justify-content-center {
    justify-content: center;
  }
  .justify-content-space-between {
    justify-content: space-between;
  }
  .d-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .flex-1 {
    flex: 1;
  }
}

.test-outline {
  outline: 1px solid #f00;
}

.test-border {
  border: 1px solid #f00;
}

.leftFloat {
  float: left;
}

.rightFloat {
  float: right;
}

.clear:after {
  content: "";
  display: table;
  clear: both;
}

.displayBlock {
  display: block !important;
}

.displayInlineBlock {
  display: inline-block !important;
}

.displayNone {
  display: none !important;
}

/*.bgImage    {
   background-image: url('/images/common/intro_bg.jpg');
   background-repeat: no-repeat;
   background-size: cover;
   background-attachment: fixed;
   height: 100%;
   left: 0;
   position: fixed;
   transition: background-size 0.15s ease 0s;
	-moz-transition: background-size 0.15s ease 0s;
	-o-transition: background-size 0.15s ease 0s;
	-webkit-transition: background-size 0.15s ease 0s;
   top: 0;
   width: 100%;
   z-index: 0;
}*/

.overlay {
  background: #000;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}

.overlay.white {
  background-color: #fff;
}

#mainOverlay {
  display: none;
  z-index: 999;
}

#mainOverlay.display {
  display: block;
}

.blur_5 {
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
}

.blur_10 {
  -webkit-filter: blur(10px);
  -moz-filter: blur(10px);
  -o-filter: blur(10px);
  -ms-filter: blur(10px);
  filter: blur(10px);
}

.opacity_0 {
  filter: alpha(opacity=0);
  opacity: 0;
}

.opacity_10 {
  filter: alpha(opacity=10);
  opacity: 0.1;
}

.opacity_20 {
  filter: alpha(opacity=20);
  opacity: 0.2;
}

.opacity_30 {
  filter: alpha(opacity=30);
  opacity: 0.3;
}

.opacity_40 {
  filter: alpha(opacity=40);
  opacity: 0.4;
}

.opacity_50 {
  filter: alpha(opacity=50);
  opacity: 0.5;
}

.opacity_60 {
  filter: alpha(opacity=60);
  opacity: 0.6;
}

.opacity_70 {
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.opacity_80 {
  filter: alpha(opacity=80);
  opacity: 0.8;
}

.opacity_90 {
  filter: alpha(opacity=90);
  opacity: 0.9;
}

.opacity_100 {
  filter: alpha(opacity=100);
  opacity: 1;
}

.centerAlign {
  text-align: center;
}

.rightAlign {
  text-align: right;
}

/*** End of common classes ***/

/*** Font colours, sizes, and styles ***/

/* Line heights */

.lh-100p {
  line-height: 100%;
}

.lh-120p {
  line-height: 120%;
}

.lh-140p {
  line-height: 140%;
}

/* Widths */

.w-5p {
  width: 5% !important;
}

.w-8p {
  width: 8% !important;
}

.w-10p {
  width: 10% !important;
}

.w-12p {
  width: 12% !important;
}

.w-14p {
  width: 14% !important;
}

.w-20p {
  width: 20% !important;
}

.w-22p {
  width: 22% !important;
}

.w-25p {
  width: 25% !important;
}

.w-30p {
  width: 30% !important;
}

.w-33p {
  width: 33% !important;
}

.w-40p {
  width: 40% !important;
}

.w-45p {
  width: 45% !important;
}

.w-50p {
  width: 50% !important;
}

.w-55p {
  width: 55% !important;
}

.w-60p {
  width: 60% !important;
}

.w-70p {
  width: 70% !important;
}

.w-75p {
  width: 75% !important;
}

.w-80p {
  width: 80% !important;
}

.w-85p {
  width: 85% !important;
}

.w-90p {
  width: 90% !important;
}

.w-100p {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

/* Positions */

.p-abs {
  position: absolute !important;
}

.p-rel {
  position: relative !important;
}

.p-fixed {
  position: fixed !important;
}

.p-static {
  position: static !important;
}

.left-0 {
  left: 0px !important;
}

.left-100p {
  left: 100%;
}

.right-0 {
  right: 0px !important;
}

.right-100p {
  right: 100%;
}

.top-0 {
  top: 0px !important;
}

.top-1_5p {
  top: 1vw !important;
}

/* Lines */

.v-line {
  height: 3vw;
  width: 0.1vw;
}

.h-line {
  height: 0.1vw;
  width: 94%;
}

/* Margins */

@media only screen and (max-width: 767px) {
  .ml-2_8vw {
    margin-left: 2.8vw !important;
  }
  .mb-2_8vw {
    margin-bottom: 2.8vw !important;
  }
  .mr-2_8vw {
    margin-right: 2.8vw !important;
  }
  .mt-2_8vw {
    margin-top: 2.8vw !important;
  }
  .mb-1_4vw {
    margin-bottom: 1.4vw !important;
  }
  .ml-1_4vw {
    margin-left: 1.4vw !important;
  }
  .mr-1_4vw {
    margin-right: 1.4vw !important;
  }
  .mt-1_4vw {
    margin-top: 1.4vw !important;
  }
  .mb-1_1vw {
    margin-bottom: 10px !important;
  }
  .mb-0_5vw {
    margin-bottom: 0.5vw !important;
  }
  .ml-0_5vw {
    margin-left: 0.5vw !important;
  }
  .mr-0_5vw {
    margin-right: 0.5vw !important;
  }
  .mt-0_5vw {
    margin-top: 0.5vw !important;
  }
  .mb-0 {
    margin-bottom: 0 !important;
  }
  .ml-0 {
    margin-left: 0 !important;
  }
  .mt-0 {
    margin-top: 0 !important;
  }
  .mr-0 {
    margin-right: 0 !important;
  }
  /* Padding */
  .p0 {
    padding: 0 !important;
  }
  .pb-1_4vw {
    padding-bottom: 1.4vw !important;
  }
  .pb-1_1vw {
    padding-bottom: 1.1vw !important;
  }
  .pl-1_4vw {
    padding-left: 1.4vw !important;
  }
  .pr-1_4vw {
    padding-right: 1.4vw !important;
  }
  .pt-1_4vw {
    padding-top: 1.4vw !important;
  }
  .pl-0_5vw {
    padding-left: 0.5vw !important;
  }
  .pr-0_5vw {
    padding-right: 0.5vw !important;
  }
}

@media only screen and (min-width: 768px) {
  .ml-2_8vw {
    margin-left: 2.8vw !important;
  }
  .mb-2_8vw {
    margin-bottom: 2.8vw !important;
  }
  .mr-2_8vw {
    margin-right: 2.8vw !important;
  }
  .mt-2_8vw {
    margin-top: 2.8vw !important;
  }
  .mb-1_4vw {
    margin-bottom: 1.4vw !important;
  }
  .ml-1_4vw {
    margin-left: 1.4vw !important;
  }
  .mr-1_4vw {
    margin-right: 1.4vw !important;
  }
  .mt-1_4vw {
    margin-top: 1.4vw !important;
  }
  .mb-1_1vw {
    margin-bottom: 1.1vw !important;
  }
  .mb-0_5vw {
    margin-bottom: 0.5vw !important;
  }
  .ml-0_5vw {
    margin-left: 0.5vw !important;
  }
  .mr-0_5vw {
    margin-right: 0.5vw !important;
  }
  .mt-0_5vw {
    margin-top: 0.5vw !important;
  }
  .mb-0 {
    margin-bottom: 0 !important;
  }
  .ml-0 {
    margin-left: 0 !important;
  }
  .mt-0 {
    margin-top: 0 !important;
  }
  .mr-0 {
    margin-right: 0 !important;
  }
  /* Padding */
  .p0 {
    padding: 0 !important;
  }
  .pb-1_4vw {
    padding-bottom: 1.4vw !important;
  }
  .pb-1_1vw {
    padding-bottom: 1.1vw !important;
  }
  .pl-1_4vw {
    padding-left: 1.4vw !important;
  }
  .pr-1_4vw {
    padding-right: 1.4vw !important;
  }
  .pt-1_4vw {
    padding-top: 1.4vw !important;
  }
  .pl-0_5vw {
    padding-left: 0.5vw !important;
  }
  .pr-0_5vw {
    padding-right: 0.5vw !important;
  }
}

/* Font weights */

.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

/* Font sizes */

@media only screen and (max-width: 767px) {
  .fs-9 {
    font-size: 9px;
  }
  .fs-10 {
    font-size: 10px;
  }
  .fs-11 {
    font-size: 11px;
  }
  .fs-12 {
    font-size: 12px;
  }
  .fs-13 {
    font-size: 13px;
  }
  .fs-14 {
    font-size: 14px;
  }
  .fs-16 {
    font-size: 16px;
  }
  .fs-18 {
    font-size: 18px;
  }
  .fs-20 {
    font-size: 20px;
  }
  .fs-22 {
    font-size: 22px;
  }
  .fs-28 {
    font-size: 28px;
  }
}

@media only screen and (min-width: 768px) {
  .fs-9 {
    font-size: calc(0.35vw + 0.5rem) !important;
  }
  .fs-10 {
    font-size: calc(0.4vw + 0.5rem) !important;
  }
  .fs-11 {
    font-size: calc(0.45vw + 0.5rem) !important;
  }
  .fs-12 {
    font-size: calc(0.5vw + 0.5rem) !important;
  }
  .fs-13 {
    font-size: calc(0.525vw + 0.5rem) !important;
  }
  .fs-14 {
    font-size: calc(0.67vw + 0.5rem) !important;
  }
  .fs-16 {
    font-size: calc(0.8vw + 0.5rem) !important;
  }
  .fs-18 {
    font-size: calc(0.95vw + 0.5rem) !important;
  }
  .fs-20 {
    font-size: calc(1.1vw + 0.5rem) !important;
  }
  .fs-22 {
    font-size: calc(1.25vw + 0.5rem) !important;
  }
  .fs-28 {
    font-size: calc(1.68vw + 0.5rem) !important;
  }
}

@media only screen and (min-width: 3840px) {
  .fs-9 {
    font-size: calc(0.35vw + 1rem) !important;
  }
  .fs-10 {
    font-size: calc(0.4vw + 1rem) !important;
  }
  .fs-11 {
    font-size: calc(0.45vw + 1rem) !important;
  }
  .fs-12 {
    font-size: calc(0.5vw + 1rem) !important;
  }
  .fs-13 {
    font-size: calc(0.525vw + 1rem) !important;
  }
  .fs-14 {
    font-size: calc(0.6vw + 1rem) !important;
  }
  .fs-16 {
    font-size: calc(0.65vw + 1rem) !important;
  }
  .fs-18 {
    font-size: calc(0.95vw + 1rem) !important;
  }
  .fs-20 {
    font-size: calc(1.3vw + 1rem) !important;
  }
  .fs-22 {
    font-size: calc(1.45vw + 0.5rem) !important;
  }
  .fs-28 {
    font-size: calc(2vw + 0.5rem) !important;
  }
}

body {
  color: #4a4a4a;
  font-family: "Roboto", arial, sans-serif;
  font-weight: 400;
  line-height: 100%;
}

a,
.simLink {
  -moz-transition: color 0.15s ease 0s;
  -o-transition: color 0.15s ease 0s;
  -webkit-transition: color 0.15s ease 0s;
  transition: color 0.15s ease 0s;
}

a.blue:hover {
  color: #9b9b9b;
}

.charcoal {
  color: #4a4a4a;
}

.charcoalBg {
  background-color: #4a4a4a;
}

.blue {
  color: #1681c4;
}

.blueBg {
  background-color: #1681c4;
}

.white {
  color: #fff;
}

.whiteBg {
  background-color: #fff;
}

.green {
  color: #6bb21e;
}

.greenBg {
  background-color: #6bb21e;
}

.reviewYellow {
  color: #ffd550;
}

.red {
  color: #ef6d6d;
}

.redBg {
  background-color: #ef6d6d;
}

.required {
  color: #f00;
}
