@charset "UTF-8";
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
footer,
header,
nav,
section {
  display: block; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

figcaption,
figure,
main {
  display: block; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: inherit; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

audio,
video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details,
menu {
  display: block; }

summary {
  display: list-item; }

canvas {
  display: inline-block; }

template {
  display: none; }

[hidden] {
  display: none; }

/* end of normalize */
@-ms-viewport {
  zoom: 1;
  width: device-width; }

@-o-viewport {
  zoom: 1; }

@viewport {
  zoom: 1; }

html {
  -ms-overflow-style: scrollbar;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

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

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 9px;
  margin-bottom: 0.5rem; }

p,
ol, ul, dl {
  margin-top: 0;
  margin-bottom: 18px;
  margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

blockquote {
  margin: 0 0 18px;
  margin: 0 0 1rem; }

img,
svg,
video {
  max-width: 100%; }

table {
  border-collapse: collapse; }

.clearfix {
  clear: both; }

.hideme {
  display: none;
  visibility: hidden; }

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh; }

main {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto; }

iframe {
  display: block;
  margin: 0 auto; }

html {
  font-size: 18px; }

body {
  font-family: "Gill Sans", "Gill Sans MT", Arial, sans-serif;
  font-size: 18px;
  font-size: 1rem;
  color: #3F3E3A; }

p {
  line-height: 1.2em;
  margin-bottom: 18px;
  margin-bottom: 1rem; }

h1, h2, h3, h4 {
  margin: 27px 0 9px;
  margin: 1.5rem 0 0.5rem;
  color: #3F3E3A;
  font-family: "Oswald", Impact, Arial, sans-serif;
  font-weight: bold;
  line-height: 1.2em; }

h1 {
  font-size: 43.199px;
  font-size: 2.4rem; }

h2 {
  font-size: 36px;
  font-size: 2rem; }

h3 {
  color: #6C9998;
  font-size: 25.2px;
  font-size: 1.4rem; }

h4 {
  color: #6C9998;
  font-size: 21.599px;
  font-size: 1.2rem; }

div > h2 {
  margin-top: 9px;
  margin-top: 0.5rem; }

blockquote {
  color: #EE9C40;
  font-family: "Oswald", Impact, Arial, sans-serif;
  font-size: 23.4px;
  font-size: 1.3rem;
  font-style: italic;
  letter-spacing: 0.5px;
  line-height: 1.2em; }
  blockquote .source {
    display: inline-block;
    font-family: "Gill Sans", "Gill Sans MT", Arial, sans-serif;
    font-size: 16.2px;
    font-size: 0.9rem;
    font-style: normal;
    letter-spacing: 0;
    line-height: 18px;
    line-height: 1rem; }
    blockquote .source::before {
      content: '– '; }

main a {
  color: #3F3E3A;
  font-weight: bold;
  text-decoration: none;
  border-bottom: 2px solid #4a7b8c;
  -webkit-transition: border-color 200ms ease-in;
  transition: border-color 200ms ease-in; }
  main a:hover {
    color: #4a7b8c;
    border-bottom-color: #385e6b; }
  main a:visited {
    color: #5a5852; }

a img:hover,
a svg:hover {
  opacity: 0.85; }

a.no-img-link {
  border-bottom: 0; }
  a.no-img-link img:hover {
    opacity: 1; }

a #invoketxt {
  color: #3F3E3A;
  fill: currentColor;
  stroke: currentColor; }
  a #invoketxt:hover .triangle {
    stroke: currentColor;
    stroke-width: 5; }
  a #invoketxt .triangle {
    -webkit-transition: stroke-width 80ms ease-in-out;
    transition: stroke-width 80ms ease-in-out; }

main > div {
  padding: 9px 0;
  padding: 0.5rem 0; }

main > div > * {
  padding: 0 18px;
  padding: 0 1rem; }
  @media only screen and (min-width: 761px) {
    main > div > * {
      padding: 0 2rem;
      max-width: 1000px;
      margin-left: auto;
      margin-right: auto; } }

main > hr {
  position: relative;
  z-index: 10;
  margin: -1px 0 -1px;
  border: 0;
  border-top: 1px solid rgba(63, 62, 58, .2);
  border-bottom: 1px solid rgba(255, 255, 255, .2); }

body.page-home main div#content {
  padding: 0; }

body.page-home nav {
  margin-bottom: 0;
  background-color: #171a28; }
  body.page-home nav #invoketxt,
  body.page-home nav #menu-collapse a {
    color: #fff; }

body.page-home .bg-blue-dark {
  line-height: 0;
  padding-bottom: 0;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#3d3b3f+0,171a28+70,171a28+100 */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  background: radial-gradient(50% 120% at center 90%, #3d3b3f 0%, #171a28 70%, #171a28 100%);
  /* IE6-9 fallback on horizontal gradient */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#171a28', endColorstr='#171a28',GradientType=1 ); }

body.page-home h3.colour-real-black {
  margin-top: 0; }
  body.page-home h3.colour-real-black svg {
    height: auto; }

body.page-product h2 {
  margin-bottom: 0; }

@media only screen and (max-width: 760px) {
  body.page-product .quarter-width-flex {
    width: 100%; } }

body.page-applications #content {
  padding-bottom: 0; }
  body.page-applications #content .flex-container {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #6C9998; }
  body.page-applications #content h3 {
    margin: 4.5px 0;
    margin: 0.25rem 0;
    padding-top: 4.5px;
    padding-top: 0.25rem;
    padding-bottom: 4.5px;
    padding-bottom: 0.25rem;
    color: #fff;
    font-weight: normal; }
    @media only screen and (min-width: 761px) {
      body.page-applications #content h3 {
        -ms-flex-preferred-size: 250px;
        flex-basis: 250px;
        max-width: 25%; } }
    @media only screen and (max-width: 760px) {
      body.page-applications #content h3 {
        font-size: 1.1rem; } }

body.page-applications #addition_content_1 {
  padding-top: 18px;
  padding-top: 1rem;
  padding-bottom: 18px;
  padding-bottom: 1rem; }
  body.page-applications #addition_content_1 .half-width-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 18px;
    padding: 1rem; }
    body.page-applications #addition_content_1 .half-width-flex h3 {
      margin-top: 0; }

body.page-applications #addition_content_2 {
  position: relative; }
  @media only screen and (min-width: 761px) {
    body.page-applications #addition_content_2 blockquote {
      margin-top: 2rem; } }

body.page-applications .triangle {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 350px;
  margin: 0;
  z-index: -1;
  background-image: url("/assets/blue-triangle.svg");
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 55% 100%; }
  @media only screen and (max-width: 760px) {
    body.page-applications .triangle {
      background-size: 70% 90%; } }

body.page-developer-kit hr {
  border: 0; }

body.page-developer-kit #content {
  padding-bottom: 0; }

body.page-developer-kit fieldset p {
  margin-bottom: 9px;
  margin-bottom: 0.5rem;
  font-weight: bold; }

body.page-developer-kit .checkboxWrapper.full input[type="text"] {
  margin-left: 9px;
  margin-left: 0.5rem;
  margin-bottom: 0;
  padding: 5.999px;
  padding: 0.33333rem; }

body.page-developer-kit b.checkboxWrapper {
  margin-top: 4.5px;
  margin-top: 0.25rem;
  font-size: 14.4px;
  font-size: 0.8rem;
  text-transform: uppercase; }

body.page-developer-kit .selectlabel {
  display: inline-block;
  padding: 9px 13.5px 0;
  padding: 0.5rem 0.75rem 0; }

body.page-login .input-group button {
  width: 100%; }

@media only screen and (min-width: 761px) {
  body.page-login .input-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
    body.page-login .input-group input,
    body.page-login .input-group .input-group-btn {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1; }
    body.page-login .input-group input {
      width: 75%;
      margin-bottom: 0;
      margin-right: -2px; }
    body.page-login .input-group button {
      height: 100%;
      width: 100%;
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
      -webkit-box-shadow: -1px -1px 0 inset #274049;
      box-shadow: -1px -1px 0 inset #274049; } }

nav {
  position: relative;
  z-index: 999;
  margin-bottom: 9px;
  margin-bottom: 0.5rem; }
  @media only screen and (min-width: 761px) {
    nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding: 0 0.5rem 0; }
      nav #menu-collapse {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1; }
        nav #menu-collapse ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
          flex-flow: row wrap;
          -ms-flex-line-pack: justify;
          align-content: space-between;
          -webkit-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          padding: 0.25rem 0; } }

.navbar-header {
  padding: 0 18px;
  padding: 0 1rem; }
  .navbar-header #invoketxt {
    color: #3F3E3A;
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 1; }

#menu-collapse ul {
  margin: 0;
  padding: 0;
  list-style: none; }

#menu-collapse li {
  display: inline-block;
  text-align: right;
  font-size: 16.2px;
  font-size: 0.9rem; }
  #menu-collapse li a {
    display: block;
    padding: 4.5px 18px 3.6px;
    padding: 0.25rem 1rem 0.2rem;
    color: #3F3E3A;
    text-decoration: none;
    text-transform: uppercase;
    border-bottom: 2px solid transparent; }
    #menu-collapse li a:hover {
      color: #6C9998 !important;
      border-bottom-color: currentColor; }
  #menu-collapse li.active a {
    color: #6C9998 !important;
    border-bottom: 2px solid currentColor; }
  #menu-collapse li:nth-of-type(2n-1) a:hover,
  #menu-collapse li.active:nth-of-type(2n-1) a {
    color: #EE9C40 !important; }

@media only screen and (max-width: 760px) {
  .navbar-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse nowrap;
    flex-flow: row-reverse nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
    .navbar-header a {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; }
    .navbar-header svg {
      padding-right: 30px; }
  #menu-collapse {
    display: none;
    height: 0;
    overflow: hidden;
    padding: 0 0 1rem;
    -webkit-transition: height 200ms ease-out;
    transition: height 200ms ease-out; }
    #menu-collapse.collapsing {
      display: block; }
    #menu-collapse.collapse.in {
      display: block;
      height: auto; }
    #menu-collapse li {
      display: block;
      margin-bottom: 0.25rem;
      padding: 0 1rem; }
    #menu-collapse a {
      display: block;
      padding: 0;
      font-size: 1.1rem;
      line-height: 1em; } }

button.navbar-toggle {
  width: 40px;
  padding: 4.5px 9px;
  padding: 0.25rem 0.5rem;
  background-color: #fff;
  border: 1px solid #4a7b8c;
  border-radius: 0.25rem; }
  @media only screen and (min-width: 761px) {
    button.navbar-toggle {
      display: none; } }
  button.navbar-toggle .icon-bar {
    display: block;
    height: 2px;
    width: 100%;
    margin: 4px 0;
    background-color: #4a7b8c;
    -webkit-transition: opacity 200ms ease-out, -webkit-transform 200ms cubic-bezier(0.77, 0, 0.175, 1);
    transition: opacity 200ms ease-out, -webkit-transform 200ms cubic-bezier(0.77, 0, 0.175, 1);
    transition: transform 200ms cubic-bezier(0.77, 0, 0.175, 1), opacity 200ms ease-out;
    transition: transform 200ms cubic-bezier(0.77, 0, 0.175, 1), opacity 200ms ease-out, -webkit-transform 200ms cubic-bezier(0.77, 0, 0.175, 1); }
  button.navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(1) {
    -webkit-transform: translateY(6px) rotate(45deg);
    transform: translateY(6px) rotate(45deg); }
  button.navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(2) {
    opacity: 0; }
  button.navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(3) {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg); }
  button.navbar-toggle:hover {
    border-color: #EE9C40; }
    button.navbar-toggle:hover .icon-bar {
      background-color: #EE9C40; }

.page-product .navbar-header #invoketxt,
.page-augmented-reality .navbar-header #invoketxt,
.page-contact .navbar-header #invoketxt {
  color: #567c7b; }

.page-applications .navbar-header #invoketxt,
.page-what-next .navbar-header #invoketxt {
  color: #e68415; }

footer {
  letter-spacing: 1px; }

.sub-footer {
  padding: 18px 36px;
  padding: 1rem 2rem;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  background-color: #6C9998; }
  .sub-footer img {
    -webkit-transform: scale(0.85);
    transform: scale(0.85); }
  .sub-footer > img {
    margin-bottom: 5px;
    padding: 0 50px 5px;
    border-bottom: 2px solid #fff; }
  .sub-footer h3 {
    margin: 0;
    color: inherit;
    font-family: "Gill Sans", "Gill Sans MT", Arial, sans-serif;
    font-size: 18px;
    font-size: 1rem;
    font-weight: 100; }
    @media only screen and (max-width: 760px) {
      .sub-footer h3 {
        margin-bottom: 2rem; } }
  .sub-footer .flex-container {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .sub-footer .flex-container a {
      -ms-flex-item-align: center;
      align-self: center;
      -ms-flex-preferred-size: 25%;
      flex-basis: 25%; }
      @media only screen and (max-width: 760px) {
        .sub-footer .flex-container a {
          -ms-flex-preferred-size: 50%;
          flex-basis: 50%; } }

.footer {
  padding: 18px 36px;
  padding: 1rem 2rem;
  color: #fff;
  font-size: 14.4px;
  font-size: 0.8rem;
  font-weight: 100;
  text-align: right;
  background-color: #3F3E3A; }

fieldset {
  padding: 9px 0;
  padding: 0.5rem 0;
  border: 0; }

input,
textarea {
  width: 100%;
  margin-bottom: 9px;
  margin-bottom: 0.5rem;
  padding: 9px 13.5px;
  padding: 0.5rem 0.75rem;
  font-family: "Gill Sans", "Gill Sans MT", Arial, sans-serif;
  letter-spacing: 0.5px;
  background-color: rgba(255, 255, 255, .85);
  border: 1px solid #d1d2d0;
  border-radius: 0.16667rem; }
  input:hover,
  textarea:hover {
    border-color: #9fb6b4; }
  input:focus,
  textarea:focus {
    border-color: #6C9998;
    -webkit-box-shadow: 0 0 1px #6C9998;
    box-shadow: 0 0 1px #6C9998; }

select {
  width: 100%;
  margin-bottom: 9px;
  margin-bottom: 0.5rem;
  padding: 9px;
  padding: 0.5rem; }

input[type="checkbox"] {
  height: 18px;
  height: 1rem;
  width: 18px;
  width: 1rem; }

main button,
input[type="submit"] {
  padding: 9px 18px;
  padding: 0.5rem 1rem;
  color: #fff;
  background-color: #4a7b8c;
  border: 0;
  border-radius: 0.25rem;
  -webkit-box-shadow: 1px 1px 0 #274049;
  box-shadow: 1px 1px 0 #274049;
  cursor: pointer; }
  main button:hover,
  input[type="submit"]:hover {
    background-color: #385e6b; }

label {
  font-size: 0.8em;
  font-weight: bold; }
  label.inset {
    display: inline-block;
    position: relative;
    bottom: -7.2px;
    bottom: -0.4rem;
    left: 9px;
    left: 0.5rem;
    padding: 0 4.5px;
    padding: 0 0.25rem;
    background-color: #fff; }
  label.required::after {
    content: ' * required';
    padding-left: 4.5px;
    padding-left: 0.25rem;
    color: #EE9C40;
    font-size: 0.9em;
    font-weight: normal; }

input[type="checkbox"] + label {
  font-weight: normal; }

.alert {
  position: relative;
  padding: 18px;
  padding: 1rem;
  color: #4d4e4a;
  background-color: #e5e6e4;
  border-bottom: 1px solid #cccdca; }
  .alert button.close {
    position: absolute;
    right: 4.5px;
    right: 0.25rem;
    color: inherit;
    font-weight: bold;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); }
    .alert button.close:hover {
      opacity: 0.7; }
  @media only screen and (min-width: 761px) {
    .alert {
      padding: 1rem 2rem; }
      .alert button.close {
        right: 1rem; } }

.alert-danger {
  color: #5e1312;
  background-color: #f0b3b2;
  border-color: #e88987; }

.checkboxes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin: 0 18px 18px;
  margin: 0 1rem 1rem; }
  @media only screen and (max-width: 760px) {
    .checkboxes {
      margin: 0 0 0.5rem; } }

.checkboxWrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 33.333%; }
  @media only screen and (max-width: 760px) {
    .checkboxWrapper {
      width: 50%; } }
  .checkboxWrapper.full {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%; }
  .checkboxWrapper input[type="checkbox"] {
    position: relative;
    left: 9px;
    left: 0.5rem;
    margin-bottom: 3px;
    margin-bottom: 0.16667rem; }
    .checkboxWrapper input[type="checkbox"] + label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      height: 100%;
      width: 100%;
      margin: 0 0 0 -18px;
      margin: 0 0 0 -1rem;
      padding: 5.999px;
      padding: 0.33333rem;
      padding-left: 36px;
      padding-left: 2rem;
      font-size: 16.2px;
      font-size: 0.9rem;
      line-height: 1em; }
      .checkboxWrapper input[type="checkbox"] + label:hover {
        background-color: #e4edec;
        cursor: pointer; }
    .checkboxWrapper input[type="checkbox"]:checked + label {
      background-color: #b7cdcd;
      -webkit-box-shadow: 0 0 1px #415e5d;
      box-shadow: 0 0 1px #415e5d; }
      .checkboxWrapper input[type="checkbox"]:checked + label:hover {
        background-color: #c6d8d7; }

.center {
  text-align: center; }

.full-width {
  width: 100%;
  max-width: 100%; }

@media only screen and (min-width: 761px) {
  .desktop-half {
    max-width: 50%; } }

@media only screen and (max-width: 760px) {
  .mobile-full {
    padding-left: 0 !important;
    padding-right: 0 !important; } }

.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around; }

.half-width-flex {
  width: 100%;
  background-position: center center;
  background-size: cover; }
  @media only screen and (min-width: 761px) {
    .half-width-flex {
      width: 50%;
      -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto; }
      .half-width-flex:nth-child(2n-1) {
        padding-right: 1rem; }
      .half-width-flex:nth-child(2n) {
        padding-left: 1rem; } }

.quarter-width-flex {
  width: 50%; }
  @media only screen and (min-width: 761px) {
    .quarter-width-flex {
      width: 25%;
      padding: 0.5rem 1rem 0; } }

@media only screen and (max-width: 760px) {
  .mobile-unflex {
    display: block; } }

.colour-real-black {
  color: #000; }

button.toggle-button {
  display: block;
  width: 90%;
  max-width: 20em;
  margin: 0 auto;
  padding: 9px;
  padding: 0.5rem;
  color: #4a7b8c;
  font-size: 16.2px;
  font-size: 0.9rem;
  font-weight: bold;
  letter-spacing: 1px;
  text-align: center;
  background-color: #e5e6e4;
  border: 1px solid currentColor;
  border-radius: 0.25rem;
  cursor: pointer; }
  button.toggle-button::after {
    content: '\025BE';
    display: inline-block;
    margin-right: -1.9em;
    padding: 0 0.4em; }
  button.toggle-button.is-toggled::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
  button.toggle-button:hover, button.toggle-button:focus {
    color: #fff;
    background-color: #4a7b8c;
    border-color: #385e6b; }
    button.toggle-button:hover::after, button.toggle-button:focus::after {
      -webkit-transform: translateY(2px);
      transform: translateY(2px); }
    button.toggle-button:hover.is-toggled::after, button.toggle-button:focus.is-toggled::after {
      -webkit-transform: rotate(180deg) translateY(2px);
      transform: rotate(180deg) translateY(2px); }
  button.toggle-button:active {
    background-color: #304f5a;
    border-color: #274049; }

.invokeTracker {
  height: 300px;
  background-image: url("/files/DeviceLights.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }

ul.awards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0; }
  ul.awards b {
    display: block;
    font-size: 18px;
    font-size: 1rem; }
  ul.awards li {
    position: relative;
    width: 33%;
    margin: 9px;
    margin: 0.5rem;
    padding: 0 35px;
    font-size: 14.4px;
    font-size: 0.8rem;
    text-align: center;
    list-style: none; }
    @media only screen and (max-width: 760px) {
      ul.awards li {
        width: 100%;
        margin-bottom: 1rem; } }
    ul.awards li::before, ul.awards li::after {
      content: '';
      position: absolute;
      top: 0;
      display: block;
      height: 100%;
      width: 30px;
      background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><style>* { fill:rgba(238, 156, 64, 0.99); }</style><polygon transform="translate(50.000000, 50.000000) rotate(-90.000000) translate(-50.000000, -50.000000) " points="100 0 49.9993874 100 0 0"></polygon></svg>');
      background-position: center;
      background-repeat: no-repeat;
      background-size: 30px 30px; }
    ul.awards li::before {
      left: 0; }
    ul.awards li::after {
      right: 0;
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg); }

.svg-full-tile {
  margin: 18px 0;
  margin: 1rem 0;
  background-attachment: fixed;
  background-color: #171a28;
  background-position: top left;
  background-repeat: repeat;
  background-size: 61.05vh 60vh; }

/* WORKING. move this stuff elsewhere when done */
#adminPanel {
  width: 100%; }
  #adminPanel .radio-inline input[type="radio"] {
    margin-left: -35px;
    margin-top: 0.5px; }
  #adminPanel .radio-inline {
    padding-left: 10px;
    margin-left: 25px; }

body.EditMode nav.navbar {
  border-radius: 0;
  overflow: hidden; }

body.EditMode .note-editor {
  padding: 0;
  min-height: 5em; }
  body.EditMode .note-editor .hideme {
    display: block;
    visibility: visible;
    border: 5px dashed #EE9C40;
    font-weight: bold;
    font-size: 18px;
    font-size: 1rem;
    background-color: rgba(238, 156, 64, .7);
    color: black;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 9999;
    padding: 9px;
    padding: 0.5rem;
    position: relative;
    font-family: monospace;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: background-color 200ms ease-in;
    transition: background-color 200ms ease-in; }
    body.EditMode .note-editor .hideme:hover {
      background-color: rgba(238, 156, 64, 0);
      cursor: not-allowed; }
      body.EditMode .note-editor .hideme:hover::after {
        opacity: 0; }
    body.EditMode .note-editor .hideme:not(.no-txt)::after {
      content: "This area is styled magically! Don’t edit me!\a (hover to view though)";
      white-space: pre-wrap;
      display: block;
      text-shadow: 0 0 2px #fff;
      opacity: 1;
      -webkit-transition: opacity 200ms ease-in;
      transition: opacity 200ms ease-in; }

body.EditMode .note-toolbar {
  padding: 0 18px 7px;
  padding: 0 1rem 7px; }

body.EditMode .dropdown-menu {
  padding-bottom: 0; }
  body.EditMode .dropdown-menu a {
    border: 0;
    border-bottom: 1px solid #eee; }
    body.EditMode .dropdown-menu a p,
    body.EditMode .dropdown-menu a pre,
    body.EditMode .dropdown-menu a h3, body.EditMode .dropdown-menu a h4, body.EditMode .dropdown-menu a h5, body.EditMode .dropdown-menu a h6 {
      margin: 5px 0 !important; }

.editable.summernote {
  font-size: 10px; }

.page-documentation iframe.documentation {
  height: auto;
  width: 100%;
  border: 0; }

.page-documentation main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.page-documentation #content {
  display: none; }

.vidHover {
  position: relative;
  background-color: #3F3E3A;
  width: auto;
  max-width: auto;
  padding: 0;
  line-height: 0; }

.full-width .hoverVid {
  width: 100%; }

body.page-home .vidHover {
  max-height: 90vh;
  height: auto;
  overflow: hidden; }

body.page-home .hoverVid.hoverPlay {
  opacity: 0.8; }

.hoverVid.hoverPlay {
  opacity: 0.5;
  -webkit-transition: opacity 0ms ease-in-out;
  transition: opacity 0ms ease-in-out; }

.hoverVid:hover,
body.page-home .hoverVid:hover {
  opacity: 1;
  cursor: pointer; }

.vidHover:not(.no-sound)::before {
  content: 'click for sound';
  opacity: 0;
  text-transform: uppercase;
  background-color: rgba(0, 0, 0, .7);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  color: #fff;
  padding: 9px;
  padding: 0.5rem;
  font-weight: normal;
  letter-spacing: 1px;
  font-size: 0.8em;
  -webkit-transition: opacity 200ms ease-in-out;
  transition: opacity 200ms ease-in-out;
  line-height: 1.15; }

.vidHover:not(.is-playing):hover::before {
  opacity: 1; }

nav .social {
  -webkit-transform: scale(0.8);
  transform: scale(0.8); }
  @media only screen and (max-width: 760px) {
    nav .social {
      text-align: right; }
      nav .social a {
        display: inline !important; } }
  nav .social a:hover svg {
    opacity: 1;
    fill: #EE9C40; }
  nav .social a:nth-of-type(2n):hover svg {
    fill: #6C9998; }

body:not(.page-home) nav .icon-social {
  fill: #3F3E3A; }

.icon-social {
  fill: #fff; }
  footer .icon-social {
    margin-top: 9px;
    margin-top: 0.5rem; }

body.EditMode #adminPanel .nav-tabs > li.active a,
body.EditMode #adminPanel .tab-pane.active {
  border: 2px solid red !important; }

#adminPanel .nav-tabs > li > a::after {
  -webkit-transform: scaleX(0);
  transform: scaleX(0); }

#adminPanel .nav-tabs > li.active > a::after, #adminPanel .nav-tabs > li:hover > a::after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1); }

#adminPanel .nav li {
  font-size: 21.599px !important;
  font-size: 1.2rem !important; }

body.EditMode #adminPanel .nav-tabs > li > a {
  border: 1px !important; }

#menuSettings .row {
  min-height: 40px; }

#files .input-group button,
#files .input-group .form-control {
  min-height: 48px; }

#adminPanel .fontSize21 {
  font-size: 14.4px !important;
  font-size: 0.8rem !important;
  color: #676863; }
