@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box; }

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

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

img {
  width: 100%;
  display: block; }

/************************
*		CLEARFIX		*
************************/
@font-face {
  font-family: 'Flama';
  src: url("../fonts/Flama-Book.eot");
  src: url("../fonts/Flama-Book.eot?#iefix") format("embedded-opentype"), url("../fonts/Flama-Book.woff") format("woff");
  font-weight: 300;
  font-style: normal; }
@font-face {
  font-family: 'Flama';
  src: url("../fonts/Flama-Medium.eot");
  src: url("../fonts/Flama-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Flama-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }
html {
  font-size: 10px;
  overflow: auto; }

main {
  padding: 4.05rem 0 8.1rem 0; }

.full {
  width: 100%; }

.wide {
  width: 100%;
  max-width: 97.2rem;
  margin-left: auto;
  margin-right: auto; }

.narrow {
  width: 100%;
  max-width: 62.1rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.7rem;
  padding-right: 2.7rem; }

.narrow section.half {
  float: left;
  width: 50%;
  min-width: 25.65rem; }

.narrow section.third {
  float: left;
  width: 33%;
  min-width: 17.1rem; }

.narrow section.two-thirds {
  float: left;
  width: 66%;
  min-width: 34.2rem; }

article:after, header:after, footer:after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

header {
  min-height: 75px;
  margin-bottom: 4.05rem; }

footer {
  margin-top: 4.05rem; }

body {
  font-family: Flama, Helvetica, Arial, sans-serif;
  color: #1a1a1a;
  font-weight: 300;
  font-size: 18px;
  letter-spacing: .01em;
  line-height: 1.5em;
  -webkit-font-feature-settings: 'tnum';
  -moz-font-feature-settings: 'tnum';
  -ms-font-feature-settings: 'tnum';
  font-feature-settings: 'tnum'; }

::selection {
  background: #FF5550;
  color: #FFFFFF; }

a {
  color: #1a1a1a;
  text-decoration: none;
  border-bottom: 1px dotted #cccccc;
  transition: all 0.3s; }
  a:hover {
    color: #FF5550;
    cursor: pointer; }

a.no-show {
  color: inherit;
  border-bottom: none; }
  a.no-show:hover {
    color: #FF5550;
    cursor: pointer; }

a.phone:before {
  content: "+";
  margin-right: 0.1em;
  margin-left: -.65em; }

a.block {
  display: block; }

strong {
  font-weight: 500;
  color: #FF5550; }

.weak {
  color: #999999; }
  .weak a {
    color: #999999; }
  .weak a:hover {
    color: #FF5550; }

b {
  font-weight: 500; }

p, ul {
  margin-bottom: 1.5rem; }
  p:last-child, ul:last-child {
    margin-bottom: 0; }

ul {
  list-style: none; }

ul li:before {
  content: "›";
  color: #FF5550;
  margin-right: 0.2em;
  margin-left: -.5em; }

figure {
  margin: 4.05rem 0;
  overflow: hidden; }
  figure video {
    display: block;
    width: 102%;
    height: auto;
    position: relative;
    left: -1px;
    top: -1px; }
  figure figcaption {
    width: 100%;
    max-width: 62.1rem;
    margin-top: 2rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2.7rem;
    padding-right: 2.7rem;
    font-size: .85em;
    line-height: 1.4em;
    color: #999999; }
    figure figcaption a {
      color: #999999; }

figure + figure.caption-only {
  margin-top: -4.05rem; }

blockquote {
  margin: 4.05rem 0;
  color: #999999;
  border-top: 1px dotted #cccccc;
  border-bottom: 1px dotted #cccccc;
  padding-top: 2.7rem;
  padding-bottom: 2.7rem; }
  blockquote a {
    color: #999999; }

hr {
  clear: both;
  margin: 4.05rem 0;
  display: block;
  border-top: 1px dotted #cccccc; }

h1 {
  font-size: 2.7rem;
  line-height: 1.3em;
  font-weight: 300; }

h2 {
  font-size: 2.3rem;
  line-height: 1.2em;
  font-weight: 500;
  margin-top: 4.05rem;
  padding-top: 4.05rem;
  margin-bottom: 2rem; }
  h2:before {
    content: "›";
    color: #FF5550;
    margin-right: 0.2em;
    margin-left: -.55em; }

h3 {
  font-size: 1.5rem;
  line-height: 1em;
  font-weight: 500;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: 3rem;
  margin-bottom: 1rem; }

h1 + h2, h2 + h3, h3 + h4, h1:first-child, h4:first-child {
  margin-top: 0; }

h1:last-child, h2:last-child, h3:last-child, h4:last-child {
  margin-bottom: 0; }

table td:first-child {
  color: #999999;
  padding-right: 2rem;
  width: 12.15rem;
  text-align: right; }
table td {
  padding-bottom: 1.25rem; }
table td p {
  margin-bottom: .75rem; }

form textarea {
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
  width: 100%;
  border: none;
  outline: none;
  padding: 0;
  color: #999999;
  resize: none; }
form ::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #999999; }
form :-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #999999;
  opacity: 1; }
form ::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #999999;
  opacity: 1; }
form :-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: #999999; }

.intro h2:first-child {
  margin-top: 4.05rem; }

section h3 {
  margin-top: 1.5rem; }

footer h3 {
  margin-top: 4.05rem; }

footer hr {
  margin-bottom: 0; }

nav:after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }
nav.top {
  margin-bottom: 4.05rem;
  padding-bottom: 4.05rem; }
nav.bottom {
  padding-top: 4.05rem; }
nav div {
  float: left; }
nav.bottom div {
  width: 33%; }
nav.top div {
  width: 50%; }
nav a {
  border-bottom: none; }
nav .back a:before {
  content: "‹";
  color: #FF5550;
  margin-right: .35em;
  margin-left: -.7em; }
nav .about {
  text-align: center; }
nav .random {
  text-align: right; }
  nav .random a:after {
    content: "›";
    color: #FF5550;
    margin-left: 0.35em;
    margin-right: -.7em; }

@media (max-width: 35.1rem) {
  nav div {
    width: 100% !important;
    text-align: center !important; }

  section h3 {
    margin-top: 4.05rem !important; }

  section.top-space {
    margin-top: 4.05rem !important; } }
.narrow figcaption {
  padding-left: 0;
  padding-right: 0; }

.landing .slider figcaption {
  color: #1a1a1a; }

.landing .more a {
  font-size: .85em;
  line-height: 1em;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #FF5550; }

.info .projects a figcaption {
  transition: color .5s; }

.info .projects a:hover figcaption {
  color: #1a1a1a; }

.info footer hr {
  margin-bottom: 2.7rem; }

figure.vimeo-video {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 0px;
  height: 0;
  overflow: hidden; }
  figure.vimeo-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.slider {
  margin: 4.05rem 0; }

.slider figure {
  width: 100%;
  max-width: 81rem;
  max-width: 97.2rem;
  margin: 0;
  opacity: .3;
  transition: opacity .5s; }
  .slider figure:hover, .slider figure.mouseover {
    cursor: pointer;
    opacity: .7; }
  .slider figure.is-selected {
    opacity: 1; }

.slider figure {
  margin: 0 2.7rem; }

.projectslider figure {
  margin: 0 4.05rem; }

.project .projectslider figure.is-selected {
  cursor: default; }

.detailslider figure {
  opacity: .05;
  margin: 0 1rem; }

.slider .arrow {
  position: absolute;
  top: 0;
  height: 100%;
  width: 8%;
  max-width: 50px;
  max-height: 547px;
  z-index: 2;
  opacity: .5;
  transition: opacity .3s; }
  .slider .arrow:hover, .slider .arrow.mouseover {
    opacity: 1;
    cursor: pointer; }

.slider .arrow img {
  display: block;
  position: absolute;
  top: 50%; }

.slider .arrow-left {
  left: 2%; }

.slider .arrow-left img {
  transform: translateY(-50%) scaleX(-1); }

.slider .arrow-right {
  right: 2%; }

.slider .arrow-right img {
  transform: translateY(-50%); }

.flickity-prev-next-button {
  width: 80px;
  height: 400px;
  background: transparent;
  opacity: 0.6; }

.flickity-prev-next-button:hover {
  background: transparent;
  opacity: 1; }

/* arrow color */
.flickity-prev-next-button .arrow {
  fill: white; }

.flickity-prev-next-button.no-svg {
  color: white; }

/* hide disabled button */
.flickity-prev-next-button:disabled {
  display: none; }

.video {
  position: relative; }
  .video .zone {
    position: absolute;
    min-width: 4%;
    opacity: 1;
    transition: opacity 1s;
    transform: translate3d(0);
    z-index: 9; }
    .video .zone:before {
      content: "";
      display: block;
      padding-top: 100%; }
    .video .zone .zone-fill {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5);
      border: 3px solid #FF5550;
      border-radius: 50%;
      opacity: 1;
      animation: pulsate 2s ease-out;
      animation-iteration-count: infinite; }
    .video .zone.inactive {
      opacity: 0; }
  .video .description {
    width: 32%;
    position: absolute;
    padding: 0 2rem;
    font-size: .8em;
    line-height: 1.4em;
    color: #FFFFFF;
    opacity: 1;
    transform: translateY(0);
    transition: all 1s; }
    .video .description.inactive, .video .description .inactive {
      transform: translateY(15px);
      cursor: default;
      opacity: 0; }
    .video .description p {
      opacity: 1;
      transition: opacity 1s; }
    .video .description h3 {
      color: #FFFFFF;
      margin-top: 0;
      margin-bottom: .5rem; }

.money-mobile-video {
  /*
  	video	{
  		position: absolute;
  		top: 17.6%;
  		left: 39.8%;
  		width: 20.5%;
  		
  		opacity: 1;
  		transition: opacity .5s;
  		
  		&.inactive	{
  			opacity: 0;
  		}
  	}
  */ }
  .money-mobile-video .description.expense {
    top: 19.5%;
    left: 62%; }
  .money-mobile-video .zone.expense {
    top: 18.5%;
    left: 57%; }
  .money-mobile-video .description.budgets {
    top: 62%;
    left: 5%; }
  .money-mobile-video .zone.budgets {
    top: 73.5%;
    left: 49%; }
  .money-mobile-video .description.transactions {
    top: 63.5%;
    left: 62%; }
  .money-mobile-video .zone.transactions {
    top: 68.8%;
    left: 49%; }
  .money-mobile-video .description.unlock-touch {
    top: 73.2%;
    left: 62%; }
  .money-mobile-video .description.unlock-code {
    top: 73.2%;
    left: 5%; }
  .money-mobile-video .zone.unlock-touch, .money-mobile-video .zone.unlock-code {
    top: 83%;
    left: 49%; }

.money-desktop-video .description {
  top: 8%;
  width: 100%;
  max-width: 40.5rem;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.7rem;
  padding-right: 2.7rem; }
.money-desktop-video .zone.visualizations {
  top: 42.8%;
  left: 26%; }
.money-desktop-video .zone.transactions {
  top: 35.5%;
  left: 26%; }
.money-desktop-video .zone.budgets {
  top: 38%;
  left: 26%; }
.money-desktop-video .zone.savings {
  top: 40.4%;
  left: 26%; }
.money-desktop-video .zone.login {
  top: 80%;
  left: 26%; }

.cousteau-ipad-video .screen {
  position: absolute;
  left: 27.6%;
  top: 12.6%;
  width: 44.3%;
  opacity: 1;
  transition: opacity 1.5s; }
  .cousteau-ipad-video .screen.inactive {
    opacity: 0; }
.cousteau-ipad-video .description {
  top: 82.5%;
  width: 100%;
  max-width: 43.2rem;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.7rem;
  padding-right: 2.7rem; }
.cousteau-ipad-video .zone.intro {
  top: 85.8%;
  left: 48%; }
.cousteau-ipad-video .zone.cards0 {
  top: 50%;
  left: 48%; }
.cousteau-ipad-video .zone.cards1-1 {
  top: 15.4%;
  left: 32.5%; }
.cousteau-ipad-video .zone.cards2 {
  top: 32%;
  left: 63%; }
.cousteau-ipad-video .zone.card2 {
  top: 12.4%;
  left: 31%; }
.cousteau-ipad-video .zone.cards1-2 {
  top: 32%;
  left: 32.5%; }
.cousteau-ipad-video .zone.card1 {
  top: 12.4%;
  left: 31%; }
.cousteau-ipad-video .zone.cards1-3 {
  top: 15.4%;
  left: 46.4%; }
.cousteau-ipad-video .zone.scale {
  top: 24.4%;
  left: 46.4%; }

.hfguide-mobile-video .description {
  top: 29.5%;
  left: 62%; }
.hfguide-mobile-video .zone {
  top: 46%;
  left: 49%; }
.hfguide-mobile-video .zone.project-card-details {
  top: 72.3%;
  left: 49%; }

@keyframes pulsate {
  0% {
    transform: scale(0.9);
    opacity: .7; }
  50% {
    transform: scale(1.2);
    opacity: 1; }
  100% {
    transform: scale(0.9);
    opacity: .7; } }

/*# sourceMappingURL=style.css.map */
