@charset "UTF-8";
*,
*:before,
*:after {
  box-sizing: border-box; }

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  font: 16px/1 sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

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;
  transition: .3s; }

a {
  text-decoration: none; }

button {
  overflow: visible;
  border: 0;
  font: inherit;
  -webkit-font-smoothing: inherit;
  letter-spacing: inherit;
  background: none;
  cursor: pointer; }

::-moz-focus-inner {
  padding: 0;
  border: 0; }

:focus {
  outline: 0; }

img {
  max-width: 100%;
  height: auto;
  border: 0; }

.clearfix:after {
  content: '';
  display: table;
  clear: both; }

/**
 * Syntax highlighting styles
 */
.highlight {
  background: #fff; }
  .highlight .c {
    color: #998;
    font-style: italic; }
  .highlight .err {
    color: #a61717;
    background-color: #e3d2d2; }
  .highlight .k {
    font-weight: bold; }
  .highlight .o {
    font-weight: bold; }
  .highlight .cm {
    color: #998;
    font-style: italic; }
  .highlight .cp {
    color: #999;
    font-weight: bold; }
  .highlight .c1 {
    color: #998;
    font-style: italic; }
  .highlight .cs {
    color: #999;
    font-weight: bold;
    font-style: italic; }
  .highlight .gd {
    color: #000;
    background-color: #fdd; }
  .highlight .gd .x {
    color: #000;
    background-color: #faa; }
  .highlight .ge {
    font-style: italic; }
  .highlight .gr {
    color: #a00; }
  .highlight .gh {
    color: #999; }
  .highlight .gi {
    color: #000;
    background-color: #dfd; }
  .highlight .gi .x {
    color: #000;
    background-color: #afa; }
  .highlight .go {
    color: #888; }
  .highlight .gp {
    color: #555; }
  .highlight .gs {
    font-weight: bold; }
  .highlight .gu {
    color: #aaa; }
  .highlight .gt {
    color: #a00; }
  .highlight .kc {
    font-weight: bold; }
  .highlight .kd {
    font-weight: bold; }
  .highlight .kp {
    font-weight: bold; }
  .highlight .kr {
    font-weight: bold; }
  .highlight .kt {
    color: #458;
    font-weight: bold; }
  .highlight .m {
    color: #099; }
  .highlight .s {
    color: #d14; }
  .highlight .na {
    color: #008080; }
  .highlight .nb {
    color: #0086B3; }
  .highlight .nc {
    color: #458;
    font-weight: bold; }
  .highlight .no {
    color: #008080; }
  .highlight .ni {
    color: #800080; }
  .highlight .ne {
    color: #900;
    font-weight: bold; }
  .highlight .nf {
    color: #900;
    font-weight: bold; }
  .highlight .nn {
    color: #555; }
  .highlight .nt {
    color: #000080; }
  .highlight .nv {
    color: #008080; }
  .highlight .ow {
    font-weight: bold; }
  .highlight .w {
    color: #bbb; }
  .highlight .mf {
    color: #099; }
  .highlight .mh {
    color: #099; }
  .highlight .mi {
    color: #099; }
  .highlight .mo {
    color: #099; }
  .highlight .sb {
    color: #d14; }
  .highlight .sc {
    color: #d14; }
  .highlight .sd {
    color: #d14; }
  .highlight .s2 {
    color: #d14; }
  .highlight .se {
    color: #d14; }
  .highlight .sh {
    color: #d14; }
  .highlight .si {
    color: #d14; }
  .highlight .sx {
    color: #d14; }
  .highlight .sr {
    color: #009926; }
  .highlight .s1 {
    color: #d14; }
  .highlight .ss {
    color: #990073; }
  .highlight .bp {
    color: #999; }
  .highlight .vc {
    color: #008080; }
  .highlight .vg {
    color: #008080; }
  .highlight .vi {
    color: #008080; }
  .highlight .il {
    color: #099; }

.ui-header-portrait {
  position: relative;
  width: 4.5em;
  height: 4.5em;
  z-index: 2;
  border: 2px solid #2f2c1e;
  border-radius: 50%;
  box-shadow: 0;
  -webkit-transform: scale(0);
  -webkit-animation-name: ui-header-portrait;
  -webkit-animation-delay: 400ms;
  -webkit-animation-duration: 600ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards; }
  .ui-header-portrait img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: auto;
    max-height: auto;
    border-radius: 50%;
    opacity: 0;
    -webkit-animation-name: ui-header-portrait-picture;
    -webkit-animation-delay: 800ms;
    -webkit-animation-duration: 800ms;
    -webkit-animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -webkit-animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards; }
  .ui-header-portrait:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: rgba(246, 222, 82, 0.3); }

@-webkit-keyframes ui-header-portrait {
  80% {
    -webkit-transform: scale(1.2);
    box-shadow: 0 0 5px 5px rgba(210, 63, 74, 0.4); }
  100% {
    -webkit-transform: scale(1);
    box-shadow: 0 0 2px 2px rgba(210, 63, 74, 0.9); } }
@-webkit-keyframes ui-header-portrait-picture {
  100% {
    opacity: 1; } }
.ui-header-loader {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: -52px;
  margin-top: -62px;
  width: 180px;
  visibility: hidden;
  opacity: 0; }
  .ui-header-loader.visible {
    visiblity: visible;
    opacity: 1; }
  .ui-header-loader path {
    stroke: #f6de52; }

.ui-header-title {
  position: relative;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
  margin-left: -4px;
  padding: 0.2em 0.5em;
  font-size: 1.2em;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1.6;
  text-transform: uppercase; }
  @media (min-width: 768px) {
    .ui-header-title {
      font-size: 1.4em; } }
  .ui-header-title span {
    display: inline-block;
    color: #2f2c1e;
    opacity: 0;
    -webkit-animation-name: ui-header-title-char;
    -webkit-animation-delay: 1000ms;
    -webkit-animation-duration: 1000ms;
    -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    -webkit-animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-title-char {
  5% {
    opacity: 0.125;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52; }
  10% {
    opacity: 0.25;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52; }
  15% {
    opacity: 0.375;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52; }
  20% {
    opacity: 0.5;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52, 0 1px #f6de52; }
  25% {
    opacity: 0.625;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52, 0 1px #f6de52, -1px 1px #f6de52; }
  30% {
    opacity: 0.75;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52, 0 1px #f6de52, -1px 1px #f6de52, -1px 0 #f6de52; }
  35% {
    opacity: 0.875;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52, 0 1px #f6de52, -1px 1px #f6de52, -1px 0 #f6de52, -1px -1px #f6de52;
    color: rgba(255, 255, 255, 0.5); }
  60% {
    opacity: 1;
    text-shadow: 0 -1px #f6de52, 1px -1px #f6de52, 1px 0 #f6de52, 1px 1px #f6de52, 0 1px #f6de52, -1px 1px #f6de52, -1px 0 #f6de52, -1px -1px #f6de52;
    color: rgba(246, 222, 82, 0.2); }
  100% {
    opacity: 1;
    text-shadow: 0 0 1px rgba(246, 222, 82, 0.2);
    color: #f6de52; } }
span.ui-header-title-caption {
  display: block;
  margin-top: 0;
  font-weight: 600;
  font-size: 0.7em;
  letter-spacing: 0.9px; }

.ui-link,
.ui-text {
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9); }

.ui-link:hover {
  color: transparent;
  -webkit-animation: ui-link-hover 900ms cubic-bezier(0.68, -0.55, 0.265, 1.55) infinite forwards; }
  .ui-link:hover:before, .ui-link:hover:after {
    -webkit-animation: ui-link-hover 1400ms cubic-bezier(1, 0, 0, 1) infinite forwards;
    opacity: 0.3; }
.ui-link:before {
  margin-right: 1px; }
.ui-link:after {
  content: "°";
  color: #DD334D;
  margin-left: 1px;
  font-weight: 600; }

@-webkit-keyframes ui-link-hover {
  0% {
    text-shadow: -1px -1px transparent, 1px 1px transparent, 1px 1px transparent; }
  20% {
    text-shadow: -1px -1px #FCE63F, 1px 1px #DD334D, 1px 1px rgba(210, 63, 74, 0.8); }
  25% {
    text-shadow: -1px 1px #FCE63F, 1px -1px #DD334D, 1px -1px rgba(210, 63, 74, 0.8); }
  50% {
    text-shadow: 1px 1px #FCE63F, -1px 1px #DD334D, 1px 1px rgba(210, 63, 74, 0.8); }
  55% {
    text-shadow: -1px -1px transparent, 1px 1px transparent, 1px 1px transparent; }
  75% {
    text-shadow: 1px 1px #FCE63F, -1px -1px #DD334D, -1px -1px rgba(210, 63, 74, 0.8); }
  90% {
    text-shadow: -1px -1px #FCE63F, 1px -1px #DD334D, 1px 1px rgba(210, 63, 74, 0.8); }
  100% {
    color: transparent;
    text-shadow: -1px -1px transparent, 1px 1px transparent, 1px 1px transparent; } }
.ui-header-lines {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-top: 1px; }

.ui-header-lines-end {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -1.625em;
  width: 0.375em;
  height: 0.375em;
  border: 1px solid rgba(210, 63, 74, 0.8);
  border-radius: 50%;
  -webkit-transform: scale(0);
  -webkit-transform-origin: left center;
  -webkit-animation-name: ui-header-lines-end;
  -webkit-animation-delay: 4500ms;
  -webkit-animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-lines-end {
  0% {
    -webkit-transform: scale(0); }
  80% {
    -webkit-transform: scale(1.1); }
  100% {
    -webkit-transform: scale(1); } }
.ui-header-line {
  position: absolute;
  background: rgba(210, 63, 74, 0.8); }
  .ui-header-line:before, .ui-header-line:after {
    content: "";
    position: absolute; }
  .ui-header-line:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }

.ui-header-line--1 {
  top: 50%;
  left: 0;
  width: 0;
  height: 1px;
  -webkit-animation-name: ui-header-line-1;
  -webkit-animation-delay: 1000ms;
  -webkit-animation-duration: 300ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }
  .ui-header-line--1:before {
    left: 0;
    height: 200%;
    width: 0;
    background: rgba(53, 42, 31, 0.5);
    z-index: 1;
    -webkit-animation-name: ui-header-line-1-before;
    -webkit-animation-delay: 2000ms;
    -webkit-animation-duration: 1s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-1 {
  to {
    width: 100%; } }
@-webkit-keyframes ui-header-line-1-before {
  0% {
    width: 0;
    left: 0; }
  20% {
    width: 1.5em;
    left: 0; }
  100% {
    width: 1.5em;
    left: 100%; } }
.ui-header-connection {
  position: relative;
  display: inline-block;
  margin-left: -0.3em;
  width: 0.95em; }

.ui-header-line--2 {
  top: 50%;
  left: 0;
  margin-top: -0.25em;
  margin-left: 1px;
  width: 0;
  height: 1px;
  -webkit-transform-origin: bottom left;
  -webkit-animation-name: ui-header-line-2;
  -webkit-animation-delay: 1300ms;
  -webkit-animation-duration: 200ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-2 {
  from {
    width: 1px;
    -webkit-transform: rotate(-61.5deg); }
  to {
    width: 200%;
    -webkit-transform: rotate(-61.5deg); } }
.ui-header-line--2:before {
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: rgba(53, 42, 31, 0.5);
  z-index: 1;
  -webkit-transform-origin: bottom left;
  -webkit-animation-name: ui-header-line-2-before;
  -webkit-animation-delay: 2750ms;
  -webkit-animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-fill-mode: forwards;
  -webkit-transform: translateX(-100%); }

@-webkit-keyframes ui-header-line-2-before {
  0% {
    -webkit-transform: translateX(-100%); }
  100% {
    -webkit-transform: translateX(100%); } }
.ui-header-line--3 {
  top: 50%;
  left: 0;
  width: 0;
  height: 1px;
  margin-top: -1.5em;
  -webkit-animation-name: ui-header-line-3;
  -webkit-animation-delay: 1500ms;
  -webkit-animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }
  .ui-header-line--3:before {
    left: 0;
    height: 200%;
    width: 0;
    background: rgba(53, 42, 31, 0.5);
    z-index: 1;
    -webkit-animation-name: ui-header-line-3-before;
    -webkit-animation-delay: 3200ms;
    -webkit-animation-duration: 1.5s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-3 {
  from {
    width: 0; }
  to {
    width: 100%; } }
@-webkit-keyframes ui-header-line-3-before {
  0% {
    width: 0;
    left: 0; }
  41.25% {
    width: 2.8125em;
    left: 0; }
  100% {
    width: 2.8125em;
    left: 100%; } }
.ui-header-line--4 {
  top: 0;
  left: 0.35em;
  width: 1px;
  height: 0;
  margin-top: -1.1875em;
  -webkit-animation-name: ui-header-line-4;
  -webkit-animation-delay: 1000ms;
  -webkit-animation-duration: 300ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-4 {
  from {
    height: 0; }
  to {
    height: 100%; } }
.ui-header-line--5 {
  position: absolute;
  left: 0.35em;
  top: 0;
  width: 0;
  height: 1px;
  margin-top: -0.75em;
  background: rgba(210, 63, 74, 0.8);
  -webkit-animation-name: ui-header-line-5;
  -webkit-animation-delay: 1300ms;
  -webkit-animation-duration: 300ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-5 {
  from {
    width: 0; }
  to {
    width: 99%; } }
.ui-header-line--6 {
  position: absolute;
  right: 100%;
  top: 0;
  width: 0;
  height: 1px;
  margin-top: -0.75em;
  margin-right: -0.4em;
  background: rgba(210, 63, 74, 0.8);
  -webkit-animation-name: ui-header-line-6;
  -webkit-animation-delay: 1300ms;
  -webkit-animation-duration: 200ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-6 {
  from {
    width: 0; }
  to {
    width: 6.5%; } }
.ui-header-line--7 {
  position: absolute;
  top: 0;
  left: -4.8%;
  width: 1px;
  height: 0;
  margin-top: -0.7em;
  background: rgba(210, 63, 74, 0.8);
  -webkit-animation-name: ui-header-line-7;
  -webkit-animation-delay: 1500ms;
  -webkit-animation-duration: 300ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-line-7 {
  from {
    height: 0; }
  to {
    height: 30%; } }
.ui-header-line--nav-line {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 100%;
  margin-left: 1px;
  width: 1px;
  height: 0;
  margin-top: -0.7em;
  background: rgba(210, 63, 74, 0.8);
  -webkit-animation-name: ui-header-nav-line;
  -webkit-animation-delay: 1600ms;
  -webkit-animation-duration: 200ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-header-nav-line {
  from {
    height: 0; }
  to {
    height: 11%; } }
.ui-header-line--nav-circle-left {
  position: absolute;
  top: 30%;
  left: -1.45em;
  width: 0.4em;
  height: 0.4em;
  margin-left: 1px;
  margin-top: -0.7em;
  border: 1px solid rgba(210, 63, 74, 0.8);
  border-radius: 50%;
  -webkit-transform: scale(0);
  -webkit-transform-origin: top center;
  -webkit-animation-name: ui-header-lines-end;
  -webkit-animation-delay: 1800ms;
  -webkit-animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

.ui-header-line--nav-circle-right {
  position: absolute;
  top: 11%;
  left: 100%;
  width: 0.4em;
  height: 0.4em;
  margin-left: -0.17em;
  margin-top: -0.75em;
  border: 1px solid rgba(210, 63, 74, 0.8);
  border-radius: 50%;
  -webkit-transform: scale(0);
  -webkit-transform-origin: top center;
  -webkit-animation-name: ui-header-lines-end;
  -webkit-animation-delay: 1800ms;
  -webkit-animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

.ui-header-activity {
  position: relative;
  display: inline-block;
  padding: 0;
  color: #f6de52;
  margin-left: -4px;
  margin-top: -4px; }

.ui-header-activity-item {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 0.8em;
  padding: 0 0.2em;
  vertical-align: top;
  margin: -0.3em 0.2em 0;
  opacity: 0;
  visibility: hidden;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-animation-name: ui-header-activity-item;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }
  @media (min-width: 768px) {
    .ui-header-activity-item {
      font-size: 0.8em; } }
  .ui-header-activity-item:nth-child(1) {
    -webkit-animation-duration: 140ms;
    -webkit-animation-delay: 1600ms; }
  .ui-header-activity-item:nth-child(2) {
    -webkit-animation-duration: 120ms;
    -webkit-animation-delay: 1740ms; }
  .ui-header-activity-item:nth-child(3) {
    -webkit-animation-duration: 100ms;
    -webkit-animation-delay: 1860ms; }

@-webkit-keyframes ui-header-activity-item {
  0% {
    opacity: 0;
    visibility: visible; }
  20% {
    opacity: 1;
    visibility: visible; }
  30% {
    opacity: 0;
    visibility: visible; }
  50% {
    opacity: 1;
    visibility: visible; }
  90% {
    opacity: 0;
    visibility: visible; }
  100% {
    opacity: 1;
    visibility: visible; } }
.ui-header-nav {
  position: relative;
  padding: 0.5em 0 1.7em;
  color: white;
  margin-top: -4px; }

.ui-header-nav-item {
  position: relative;
  display: block;
  padding: 0.6em 0 0.6em 2.2em;
  opacity: 0;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-animation-name: ui-header-activity-item;
  -webkit-animation-duration: 180ms;
  -webkit-animation-delay: 1100ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards; }
  .ui-header-nav-item:nth-child(1) {
    -webkit-animation-delay: 1100ms; }
  .ui-header-nav-item:nth-child(2) {
    -webkit-animation-delay: 1280ms; }
  .ui-header-nav-item:nth-child(3) {
    -webkit-animation-delay: 1460ms; }
  .ui-header-nav-item:nth-child(4) {
    -webkit-animation-delay: 1640ms; }
  .ui-header-nav-item:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 0.6em;
    height: 1px;
    margin: -1px 0 0 6px;
    background: rgba(210, 63, 74, 0.8);
    transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  .ui-header-nav-item:after {
    content: "";
    display: inline-block;
    position: absolute;
    left: 1em;
    top: 50%;
    margin-top: -3px;
    width: 5px;
    height: 5px;
    border: 1px solid rgba(210, 63, 74, 0.8);
    border-radius: 50%;
    -webkit-transform: scale(0);
    -webkit-transform-origin: left center;
    -webkit-animation-name: ui-header-lines-end;
    -webkit-animation-delay: 1150ms;
    -webkit-animation-duration: 400ms;
    -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    -webkit-animation-fill-mode: forwards;
    transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-header-nav-item--active:before {
  width: 1.4em; }
.ui-header-nav-item--active:after {
  background: rgba(210, 63, 74, 0.8);
  left: 1.75em; }
.ui-header-nav-item--active .ui-header-nav-item-content {
  -webkit-transform: translateX(0.9em); }

@-webkit-keyframes ui-header-nav-item {
  to {
    opacity: 1; } }
.ui-header-nav-item-content {
  display: inline-block;
  transition: all 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-header-nav-item-link {
  font-size: 1.1em;
  font-weight: 600;
  line-height: 1.3;
  color: #f6de52;
  transition: all 220ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-header-nav-item-caption {
  display: block;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.3;
  color: rgba(246, 222, 82, 0.7);
  transition: all 220ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.section-header {
  position: relative;
  padding-top: 0.6em;
  padding-bottom: 1.3em; }

.ui-header {
  position: relative;
  z-index: 1; }
  @media (min-width: 540px) {
    .ui-header {
      float: left;
      max-width: 27em; } }

.ui-header-content {
  display: inline-block;
  position: relative; }

.ui-header-link:hover {
  background: -webkit-linear-gradient(left, #4913E8 0%, #2A9DF9 40%, #22c589 90%);
  background: linear-gradient(to right, #4913e8 0%, #2a9df9 40%, #22c589 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

.ui-header-portrait {
  display: inline-block;
  vertical-align: middle; }

.ui-header-copy {
  position: relative;
  margin-top: -8px;
  padding: 0.4em;
  margin-left: 1em; }
  @media (min-width: 768px) {
    .ui-header-copy {
      padding: 0.4em;
      margin-left: 0; } }

.ui-header-copy-paragraph {
  color: #f6de52;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.6;
  max-width: 25em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  opacity: 0;
  -webkit-animation: ui-header-activity-item 210ms 1530ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 22em) {
    .ui-header-copy-paragraph {
      margin-left: -0.45em; } }

.ui-header-copy-paragraph--header {
  font-weight: 500; }
  @media (min-width: 22em) {
    .ui-header-copy-paragraph--header {
      margin-right: 0.4em; } }

.ui-header-copy-paragraph-title {
  display: block;
  margin-bottom: 0.5em;
  font-weight: 600; }

.ui-header-copy-link {
  display: inline-block;
  margin-top: 2px;
  margin-right: 1px;
  padding: 0.2em 0.3em;
  line-height: 1;
  vertical-align: top;
  background-image: linear-gradient(to bottom, #4e4932, #6d6646);
  color: #f6de52;
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(246, 222, 82, 0);
  transition-property: box-shadow, opacity;
  transition-duration: 100ms;
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-weight: 500; }
  .ui-header-copy-link--recent {
    padding: 0.2em 0.5em;
    background-image: linear-gradient(to bottom, rgba(210, 63, 74, 0.6), rgba(210, 63, 74, 0.8)); }
    .ui-header-copy-link--recent:hover {
      box-shadow: inset 0 0 0 1px #d23f4a; }
  .ui-header-copy-link:hover {
    box-shadow: inset 0 0 0 1px #f6de52; }
  .ui-header-copy-link:active {
    opacity: 0.8; }

.ui-header-copy-cta {
  display: inline-block;
  padding: 0.3em 0.6em;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.35;
  background-image: linear-gradient(to bottom, #f6de52, #f8e579);
  border-radius: 4px;
  color: rgba(0, 0, 0, 0.7);
  text-align: center;
  text-shadow: none;
  transition-property: box-shadow, opacity;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  box-shadow: 0 0 0 1px rgba(246, 222, 82, 0); }
  @media (min-width: 667px) {
    .ui-header-copy-cta {
      margin: 1.2em 4px; } }
  .ui-header-copy-cta:hover {
    box-shadow: 0 0 6px 1px #f6de52; }
  .ui-header-copy-cta:active {
    opacity: 0.8; }
  .ui-header-copy-cta--addon {
    margin-left: 0;
    background-image: linear-gradient(to bottom, #48432e, #615b3e);
    color: #f6de52;
    box-shadow: inset 0 0 0 1px rgba(246, 222, 82, 0); }
    .ui-header-copy-cta--addon:hover {
      box-shadow: inset 0 0 0 1px #f6de52; }
  .ui-header-copy-cta--newsletter {
    padding: 0.4em 14px;
    margin: 0 0.1em 0;
    vertical-align: middle; }
    .ui-header-copy-cta--newsletter:first-of-type {
      margin-left: 0.2em; }

.ui-header-newsletter-form {
  position: relative;
  margin-top: 0.8em;
  padding: 0;
  font-size: 1em;
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  opacity: 1;
  -webkit-transform: scaleY(1); }
  .ui-header-newsletter-form.hidden {
    -webkit-transform: scaleY(0);
    opacity: 0; }
  .ui-header-newsletter-form.animation {
    opacity: 0;
    -webkit-animation: ui-header-activity-item 210ms 1530ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-header-newsletter-form.error {
    -webkit-animation: ui-enquiry-form-error 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-header-newsletter-form-result {
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-header-newsletter-form-input,
.ui-enquiry-form-input,
.ui-enquiry-form-textarea {
  display: inline-block;
  width: 70%;
  margin-top: 2px;
  margin-left: -0.4em;
  padding: 0.35em 0.6em;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.1;
  font-family: inherit;
  vertical-align: middle;
  background: rgba(47, 44, 30, 0.1);
  border: 1px solid rgba(246, 222, 82, 0.8);
  border-radius: 4px;
  color: #f6de52;
  transition: border-color 140ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  @media (min-width: 768px) {
    .ui-header-newsletter-form-input,
    .ui-enquiry-form-input,
    .ui-enquiry-form-textarea {
      margin-top: 0;
      padding: 0.4em 0.6em; } }
  .ui-header-newsletter-form-input:focus,
  .ui-enquiry-form-input:focus,
  .ui-enquiry-form-textarea:focus {
    border-color: #f6de52;
    transition-duration: 0; }
    .ui-header-newsletter-form-input:focus::-webkit-input-placeholder,
    .ui-enquiry-form-input:focus::-webkit-input-placeholder,
    .ui-enquiry-form-textarea:focus::-webkit-input-placeholder {
      color: #f6de52;
      transition-duration: 0;
      opacity: 0; }
  .ui-header-newsletter-form-input::-webkit-input-placeholder,
  .ui-enquiry-form-input::-webkit-input-placeholder,
  .ui-enquiry-form-textarea::-webkit-input-placeholder {
    line-height: 1.1;
    vertical-align: middle;
    color: rgba(246, 222, 82, 0.7);
    transition: color 140ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-header-recent {
  position: relative;
  z-index: 5;
  color: #f6de52;
  margin-top: 0.8em; }
  @media (min-width: 540px) {
    .ui-header-recent {
      margin: 0.4em 0 0.7em 2em;
      float: left; } }
  @media (min-width: 768px) {
    .ui-header-recent {
      margin-left: 2em; } }

@-webkit-keyframes ui-header-recent-item {
  to {
    opacity: 1;
    -webkit-transform: translateX(0) scaleX(1); } }
.ui-header-recent-item {
  display: inline-block;
  margin-right: 0.3em;
  margin-bottom: 0.3em;
  font-size: 1.1em;
  opacity: 0;
  -webkit-transform: translateX(2em) scaleX(0.9);
  -webkit-animation: ui-header-recent-item 300ms 1100ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-header-recent-item:nth-child(1) {
    -webkit-animation-delay: 1200ms; }
  .ui-header-recent-item:nth-child(2) {
    -webkit-animation-delay: 1300ms; }
  .ui-header-recent-item:nth-child(3) {
    -webkit-animation-delay: 1400ms; }
  .ui-header-recent-item:nth-child(4) {
    -webkit-animation-delay: 1500ms; }
  .ui-header-recent-item:nth-child(5) {
    -webkit-animation-delay: 1600ms; }
  @media (min-width: 540px) {
    .ui-header-recent-item {
      display: block;
      margin-right: 0;
      margin-bottom: 0.6em;
      font-size: 1em; } }
  .ui-header-recent-item:last-of-type {
    margin-bottom: 0;
    margin-right: 0; }

.ui-layer-location-wrapper {
  position: relative;
  padding: 1em 0.4em 1.5em;
  margin: 1em 0 1em; }
  @media (min-width: 1024px) {
    .ui-layer-location-wrapper {
      margin: 1em -1em 1em; } }

.ui-layer-location {
  display: block;
  position: relative;
  margin: 0 0 0;
  width: 100%;
  max-width: 100%;
  z-index: 7;
  text-align: center;
  line-height: 1; }

.ui-location-content {
  display: inline-block;
  position: relative;
  margin-right: 0;
  max-height: 100%; }

.ui-location-map {
  display: block;
  max-width: 100%;
  max-height: 100%;
  opacity: 0;
  -webkit-transform: scale(0.4);
  -webkit-animation-name: ui-location-map;
  -webkit-animation-duration: 1000ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-location-map {
  to {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-location-coords {
  position: absolute;
  top: 0;
  left: 0;
  text-align: left; }

.ui-location-population {
  position: absolute;
  top: 0;
  right: 0;
  text-align: right; }

.ui-location-population-title {
  display: block;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.8em; }
  @media (min-width: 768px) {
    .ui-location-population-title {
      font-size: 0.9em; } }

.ui-location-population,
.ui-location-coords {
  margin: 0.6em;
  font-weight: 500;
  font-size: 0.9em;
  line-height: 1.2;
  color: #f6de52;
  text-shadow: 0 0 1px #f6de52;
  opacity: 0;
  -webkit-transform: scale(1.1);
  -webkit-animation: ui-location-coords 400ms 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 768px) {
    .ui-location-population,
    .ui-location-coords {
      margin: 1em;
      font-size: 1em;
      line-height: 1.4; } }

@-webkit-keyframes ui-location-coords {
  to {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-location-corners {
  position: absolute;
  top: -0.55em;
  left: -0.55em;
  right: -0.6em;
  bottom: -0.55em;
  z-index: 1; }

.ui-location-corners-item {
  display: inline-block;
  position: absolute;
  width: 3em;
  height: 3em;
  -webkit-animation: ui-location-corner 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  -webkit-animation-direction: alternate;
  -webkit-transform: scale(0); }
  .ui-location-corners-item:before {
    content: "";
    position: absolute;
    margin: 0.5em;
    opacity: 0;
    z-index: 2;
    -webkit-animation: ui-location-corner 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    -webkit-animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    -webkit-transform: scale(0); }
  .ui-location-corners-item--top-left, .ui-location-corners-item--top-left:before {
    width: 18%;
    height: 18%;
    top: 0;
    left: 0;
    border-top: 1px solid;
    border-left: 1px solid; }
  .ui-location-corners-item--top-left {
    border-color: #f6de52; }
    .ui-location-corners-item--top-left:before {
      width: 106%;
      height: 106%;
      border-color: #d23f4a; }
  .ui-location-corners-item--top-right, .ui-location-corners-item--top-right:before {
    width: 18%;
    height: 18%;
    top: 0;
    right: 0;
    border-top: 1px solid;
    border-right: 1px solid; }
  .ui-location-corners-item--top-right {
    border-color: #f6de52; }
    .ui-location-corners-item--top-right:before {
      width: 110%;
      height: 110%;
      border-color: #d23f4a; }
  .ui-location-corners-item--bottom-left, .ui-location-corners-item--bottom-left:before {
    height: 4.6em;
    bottom: 0;
    left: 0;
    border-bottom: 1px solid;
    border-left: 1px solid;
    -webkit-transform-origin: bottom left; }
  .ui-location-corners-item--bottom-left {
    width: 50%;
    border-color: #f6de52; }
    .ui-location-corners-item--bottom-left:before {
      width: 100%;
      border-color: #d23f4a; }
  .ui-location-corners-item--bottom-right, .ui-location-corners-item--bottom-right:before {
    height: 4.6em;
    bottom: 0;
    right: 0;
    border-bottom: 1px solid;
    border-right: 1px solid;
    -webkit-transform-origin: bottom right; }
  .ui-location-corners-item--bottom-right {
    width: 50%;
    border-color: #f6de52; }
    .ui-location-corners-item--bottom-right:before {
      width: 100%;
      border-color: #d23f4a; }

@-webkit-keyframes ui-location-corner {
  10% {
    opacity: 0;
    -webkit-transform: scale(0); }
  40% {
    opacity: 1;
    -webkit-transform: scale(0.3); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-location-indicators {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  overflow: hidden; }

.ui-location-indicator {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transform: translate(0);
  transition: -webkit-transform 500ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation: ui-location-indicator 0.8s 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-location-indicator {
  to {
    opacity: 1; } }
.ui-location-indicator--x {
  width: 100%;
  height: 2px;
  transition-delay: 700ms; }

.ui-location-indicator--y {
  width: 2px;
  height: 100%;
  transition-delay: 500ms; }

.ui-location-indicator-found {
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  margin-top: -5px;
  margin-left: -5px;
  border-radius: 50%;
  background: #f6de52;
  opacity: 0;
  -webkit-animation: ui-location-indicator-found 0.4s 1.2s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-location-indicator-found {
  0% {
    opacity: 0;
    -webkit-transform: scale(0); }
  60% {
    opacity: 1;
    -webkit-transform: scale(1.5); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-location-caption {
  position: absolute;
  z-index: 2;
  padding: 1.2em 0.4em;
  margin-top: 0.8em;
  text-align: center;
  width: 14em;
  margin-left: -7em;
  font-weight: 600;
  font-size: 0.7em;
  line-height: 1.5;
  text-shadow: none;
  background: rgba(246, 222, 82, 0.9);
  background-image: linear-gradient(to bottom, #f7e265, #f9e98c);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(246, 222, 82, 0);
  color: #2f2c1e;
  transition: box-shadow 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  opacity: 0;
  -webkit-transform-origin: top left;
  -webkit-animation: ui-location-caption 0.4s 1.1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 768px) {
    .ui-location-caption {
      font-size: 0.9em; } }
  .ui-location-caption:hover {
    box-shadow: 0 0 6px 1px #f6de52; }
    .ui-location-caption:hover .ui-location-caption-title {
      -webkit-transform: scaleY(0.8) translateY(-75%);
      opacity: 0;
      transition-delay: 0; }
    .ui-location-caption:hover .ui-location-caption-action {
      -webkit-transform: scaleY(1) translateY(-50%);
      opacity: 1;
      transition-delay: 80ms; }

@-webkit-keyframes ui-location-caption {
  from {
    opacity: 0;
    -webkit-transform: scaleY(0); }
  to {
    opacity: 1;
    -webkit-transform: scaleY(1); } }
.ui-location-caption-title {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  -webkit-transform: scaleY(1) translateY(-50%);
  -webkit-transform-origin: center top;
  transition-property: -webkit-transform, opacity;
  transition-duration: 180ms;
  transition-delay: 80ms;
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-location-caption-action {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  font-weight: 500;
  font-size: 1em;
  -webkit-transform: scaleY(0.8) translateY(-25%);
  -webkit-transform-origin: center bottom;
  opacity: 0;
  transition-property: -webkit-transform, opacity;
  transition-duration: 180ms;
  transition-delay: 0;
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ui-layer-1 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-animation: spin 950ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  -webkit-transform-style: preserve-3d;
  -webkit-transform: rotateY(-45deg) rotateX(45deg) scale(5) translateX(15%) translateZ(-500px); }

@-webkit-keyframes spin {
  80% {
    -webkit-transform: rotateY(0) rotateX(0) scale(0.8) translateX(0) translateZ(-1px); }
  100% {
    -webkit-transform: rotateY(0) rotateX(0) scale(1) translateX(0) translateZ(-1px); } }
.ui-layer-dots {
  -webkit-transform-style: preserve-3d;
  -webkit-transform-origin: 50% 100%;
  -webkit-transform: perspective(0) rotateX(0) translateZ(0) translateY(10%); }

.ui-layer-dots--hidden {
  -webkit-transform: perspective(5000px) rotateX(72deg) translateZ(-690px) translateY(10%); }

.ui-layer-dot {
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 3px;
  z-index: 0;
  border-radius: 50%;
  background: rgba(246, 222, 82, 0);
  -webkit-animation: ui-layer-dot 1600ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  transition: -webkit-transform 600ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

@-webkit-keyframes ui-layer-dot {
  0% {
    background: rgba(246, 222, 82, 0); }
  30% {
    background: rgba(246, 222, 82, 0.7); }
  50% {
    background: rgba(246, 222, 82, 0.5); }
  80% {
    background: rgba(246, 222, 82, 0.8); }
  100% {
    background: rgba(246, 222, 82, 0.25); } }
.ui-layer-corners {
  position: absolute;
  top: -1.5em;
  left: -1.5em;
  right: -1.5em;
  bottom: -1.5em; }

.ui-layer-corners-item {
  display: inline-block;
  position: absolute;
  width: 6em;
  height: 6em;
  opacity: 0;
  -webkit-animation: ui-layer-corner 1200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  -webkit-transform: scale(0.6); }
  .ui-layer-corners-item:before {
    content: "";
    position: absolute;
    width: 6em;
    height: 6em;
    margin: 1.5em; }
  .ui-layer-corners-item--top-left, .ui-layer-corners-item--top-left:before {
    top: 0;
    left: 0;
    border-top: 1px solid;
    border-left: 1px solid; }
  .ui-layer-corners-item--top-left {
    border-color: rgba(246, 222, 82, 0.7); }
    .ui-layer-corners-item--top-left:before {
      border-color: rgba(210, 63, 74, 0.7); }
  .ui-layer-corners-item--top-right, .ui-layer-corners-item--top-right:before {
    top: 0;
    right: 0;
    border-top: 1px solid;
    border-right: 1px solid; }
  .ui-layer-corners-item--top-right {
    border-color: rgba(246, 222, 82, 0.7); }
    .ui-layer-corners-item--top-right:before {
      border-color: rgba(210, 63, 74, 0.7); }
  .ui-layer-corners-item--bottom-left, .ui-layer-corners-item--bottom-left:before {
    bottom: 0;
    left: 0;
    border-bottom: 1px solid;
    border-left: 1px solid; }
  .ui-layer-corners-item--bottom-left {
    border-color: rgba(246, 222, 82, 0.7); }
    .ui-layer-corners-item--bottom-left:before {
      border-color: rgba(210, 63, 74, 0.7); }
  .ui-layer-corners-item--bottom-right, .ui-layer-corners-item--bottom-right:before {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid;
    border-right: 1px solid; }
  .ui-layer-corners-item--bottom-right {
    border-color: rgba(246, 222, 82, 0.7); }
    .ui-layer-corners-item--bottom-right:before {
      border-color: rgba(210, 63, 74, 0.7); }

@-webkit-keyframes ui-layer-corner {
  30% {
    opacity: 1;
    -webkit-transform: scale(0.8); }
  40% {
    -webkit-transform: scale(0.1); }
  100% {
    -webkit-transform: scale(1); } }
.ui-actions {
  position: absolute;
  top: 0.6em;
  right: 1.3em;
  z-index: 1;
  width: calc(100% - 8em);
  height: 2em; }
  @media (min-width: 768px) {
    .ui-actions {
      top: 0.8em; } }
  .ui-actions--footer {
    width: calc(100% - 4em);
    top: auto;
    right: auto;
    bottom: 0.4em;
    left: 1.1em;
    z-index: 1;
    -webkit-transform: rotate(180deg); }
    @media (min-width: 667px) {
      .ui-actions--footer {
        width: calc(100% - 8em); } }
    @media (min-width: 768px) {
      .ui-actions--footer {
        bottom: -0.4em; } }
    .ui-actions--footer .ui-actions-line {
      background: rgba(246, 222, 82, 0.8); }
    .ui-actions--footer .ui-actions-line-circle {
      border-color: #f6de52; }

.ui-actions-lines {
  position: absolute;
  top: 0;
  left: 0;
  right: -0.4em;
  bottom: 0; }

.ui-actions-line {
  position: absolute;
  background: rgba(210, 63, 74, 0.8); }

.ui-actions-line--0 {
  display: none;
  top: 0;
  left: -1.02%;
  width: 0;
  height: 1px;
  margin-top: 15px;
  -webkit-transform-origin: left center;
  -webkit-transform: rotate(-55deg);
  -webkit-animation-name: ui-actions-line-0;
  -webkit-animation-delay: 1450ms;
  -webkit-animation-duration: 400ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }

@-webkit-keyframes ui-actions-line-0 {
  100% {
    width: 1.25%; } }
.ui-actions-line--1 {
  top: 0;
  right: 0;
  height: 1px;
  width: 0;
  -webkit-transform-origin: right center;
  -webkit-animation: ui-actions-line-1 400ms 1400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-actions-line-1 {
  to {
    width: 100%; } }
.ui-actions-line--2 {
  top: 0;
  right: 0;
  height: 0;
  width: 1px;
  -webkit-transform-origin: center top;
  -webkit-animation: ui-actions-line-2 400ms 1400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-actions-line-2 {
  to {
    height: 100%; } }
.ui-actions-line-circle {
  display: inline-block;
  position: absolute;
  z-index: 1;
  border-radius: 50%;
  border: 1px solid rgba(210, 63, 74, 0.8); }

.ui-actions-line-circle--start {
  top: 0;
  left: 0;
  width: 6px;
  height: 6px;
  margin-left: -5px;
  margin-top: -2px;
  -webkit-transform-origin: right center;
  -webkit-transform: scale(0);
  -webkit-animation: ui-header-lines-end 350ms 1700ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-actions-line-circle--end {
  bottom: 0;
  right: 0;
  width: 7px;
  height: 7px;
  margin-bottom: -7px;
  margin-right: -3px;
  -webkit-transform-origin: top center;
  -webkit-transform: scale(0);
  -webkit-animation: ui-header-lines-end 350ms 1700ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-recently {
  display: none;
  position: relative;
  z-index: 2;
  margin: 1em 0;
  padding: 1em 1em;
  color: #f6de52;
  border: 1px solid rgba(210, 63, 74, 0.8);
  opacity: 0;
  visibility: hidden;
  -webkit-animation: ui-header-activity-item 210ms 1530ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 768px) {
    .ui-recently {
      margin: 0.7em 0 0.7em 1.4em;
      float: left;
      width: calc(100% - 26em); } }

.ui-recently-list {
  margin-bottom: 2em; }

.ui-recently-list-title {
  font-size: 1.1em;
  font-weight: 500;
  margin-bottom: 0.4em; }

.ui-recently-list-item {
  padding: 0.2em 0;
  display: block;
  font-weight: 400;
  font-size: 1em;
  line-height: 1.2; }

.ui-footer {
  position: relative;
  z-index: 2;
  padding: 2em 0 1.5em; }
  @media (min-width: 667px) {
    .ui-footer {
      padding: 2em 0; } }

.ui-content--footer {
  -webkit-transform-origin: center center;
  -webkit-transform: scale(0.9);
  opacity: 0;
  -webkit-animation: ui-footer 350ms 1200ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-footer {
  to {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-footer-part {
  padding-left: 1em;
  margin-bottom: 2em; }
  .ui-footer-part:last-of-type {
    padding-right: 0;
    margin-bottom: 0; }
  @media (min-width: 667px) {
    .ui-footer-part {
      margin-bottom: 2em; } }
  @media (min-width: 840px) {
    .ui-footer-part {
      float: left;
      width: 50%;
      padding-left: 0.5em;
      padding-right: 1.3em;
      margin-bottom: 0; } }
  @media (min-width: 840px) {
    .ui-footer-part:nth-child(3) {
      margin-top: 2em; } }

.ui-footer-caption {
  position: relative;
  z-index: 3;
  margin: 3em 2em 0 0;
  padding: 0em 0.6em 0.2em;
  font-weight: 500;
  line-height: 1.2;
  color: #f6de52; }
  @media (min-width: 667px) {
    .ui-footer-caption {
      margin: 3em 2em 0 0;
      padding: 0em 0.6em 0.6em; } }
  @media (min-width: 768px) {
    .ui-footer-caption {
      margin: 4em 5.8em -0.8em 0;
      padding: 0; } }
  @media (min-width: 1024px) {
    .ui-footer-caption {
      font-size: 1em; } }

.ui-footer-caption-link {
  display: inline-block;
  margin-right: 0.5em;
  vertical-align: top; }
  .ui-footer-caption-link:last-of-type {
    margin-right: 0; }

.ui-footer-caption-copyright {
  display: block;
  margin-top: 0.5em; }
  @media (min-width: 768px) {
    .ui-footer-caption-copyright {
      display: inline-block;
      margin-top: 0.25em; } }

.ui-footer-caption-addon {
  margin-bottom: 0.8em; }
  @media (min-width: 768px) {
    .ui-footer-caption-addon {
      display: inline-block;
      position: absolute;
      right: 0;
      top: 0;
      margin-bottom: 0;
      margin-top: 0; } }

.ui-footer-caption-secret {
  display: inline-block; }

.ui-impressions-wrapper {
  position: relative;
  padding-bottom: 0 0 1.3em;
  color: #f6de52; }

.ui-impressions {
  position: relative;
  margin-left: -1em;
  margin-right: -1em;
  padding: 1.5em 0;
  padding-left: 0.5em;
  padding-right: 0.5em;
  white-space: nowrap; }
  @media (min-width: 480px) {
    .ui-impressions {
      padding-left: 1em;
      padding-right: 1em; } }
  @media (min-width: 768px) {
    .ui-impressions {
      margin-left: -1.9em;
      margin-right: -1.9em;
      padding-left: 2em;
      padding-right: 2em; } }
  @media (min-width: 840px) {
    .ui-impressions {
      padding-left: 1em;
      padding-right: 1em; } }
  @media (max-width: 1023px) {
    .ui-impressions {
      -webkit-overflow-scrolling: touch;
      overflow-x: auto;
      overflow-y: auto; } }
  @media (min-width: 1024px) {
    .ui-impressions {
      overflow: hidden; } }
  @media (min-width: 1200px) {
    .ui-impressions {
      padding-left: 0.4em;
      padding-right: 0.4em; } }

.ui-header-bg,
.ui-article-bg,
.ui-values-bg,
.ui-about-bg,
.ui-map-bg,
.ui-listening-bg,
.ui-watching-bg,
.ui-enquiry-bg,
.ui-footer-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  opacity: 0;
  -webkit-transform: scaleY(0.6);
  -webkit-animation: ui-impressions-bg 300ms 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-header-bg {
  -webkit-transform-origin: center top;
  background: linear-gradient(to bottom, rgba(47, 44, 30, 0.3), rgba(210, 63, 74, 0.2)); }

.ui-article-bg {
  -webkit-transform-origin: center top;
  background: rgba(210, 63, 74, 0.6); }

.ui-values-bg {
  -webkit-transform-origin: center center;
  background: linear-gradient(to bottom, rgba(210, 63, 74, 0.3), rgba(210, 63, 74, 0.2)); }

.ui-about-bg {
  -webkit-transform-origin: center center;
  background: linear-gradient(to bottom, rgba(210, 63, 74, 0.1), rgba(210, 63, 74, 0)); }

.ui-map-bg {
  -webkit-transform-origin: center center;
  background: rgba(0, 0, 0, 0.3); }

.ui-listening-bg {
  -webkit-transform-origin: center center;
  background: linear-gradient(to bottom, rgba(20, 20, 20, 0.5), rgba(246, 222, 82, 0.1)); }

.ui-watching-bg {
  -webkit-transform-origin: center center;
  background: linear-gradient(to bottom, rgba(20, 20, 20, 0.5), rgba(210, 63, 74, 0.1)); }

.ui-enquiry-bg {
  -webkit-transform-origin: center center;
  background: rgba(20, 20, 20, 0.4); }

.ui-footer-bg {
  -webkit-transform-origin: center bottom;
  background: linear-gradient(to bottom, rgba(47, 44, 30, 0.3), rgba(20, 20, 20, 0.5)); }

@-webkit-keyframes ui-impressions-bg {
  to {
    opacity: 1;
    -webkit-transform: scaleY(1); } }
.ui-impression {
  display: inline-block;
  width: 12em;
  margin-right: 2em;
  vertical-align: top;
  white-space: normal;
  opacity: 0;
  -webkit-transform-origin: center top;
  -webkit-transform: scale(1.1) translateX(-1em);
  -webkit-animation: ui-impression 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards;
  -webkit-animation-delay: 1200ms; }
  .ui-impression:nth-child(1) {
    -webkit-animation-delay: 1200ms + 50ms; }
  .ui-impression:nth-child(2) {
    -webkit-animation-delay: 1200ms + 100ms; }
  .ui-impression:nth-child(3) {
    -webkit-animation-delay: 1200ms + 150ms; }
  .ui-impression:nth-child(4) {
    -webkit-animation-delay: 1200ms + 200ms; }
  .ui-impression:nth-child(5) {
    -webkit-animation-delay: 1200ms + 250ms; }
  .ui-impression:first-of-type {
    margin-left: 1em !important; }
  @media (min-width: 1024px) {
    .ui-impression:last-of-type {
      margin-right: 0; } }
  @media (min-width: 1024px) {
    .ui-impression {
      display: block;
      float: left;
      width: 23%;
      margin-right: 2%;
      margin-left: 0; } }

@-webkit-keyframes ui-impression {
  to {
    opacity: 1;
    -webkit-transform: scale(1) translateX(0); } }
@media (min-width: 1024px) {
  .ui-impression-info {
    padding: 0 0.6em; } }

.ui-impression-cover {
  display: block;
  width: 100%;
  min-height: 12em;
  max-height: 22em;
  margin-bottom: 1em;
  border: 1px solid;
  overflow: hidden;
  -webkit-transform: scale(1.1);
  -webkit-animation: ui-impression-cover 250ms 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-impression-cover:hover:after {
    background: transparent; }
  .ui-impression-cover:after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(246, 222, 82, 0.1);
    transition: background 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }

@-webkit-keyframes ui-impression-cover {
  to {
    -webkit-transform: scale(1); } }
.ui-impression-cover-image {
  display: block;
  width: 100%; }

.ui-impression-title {
  margin-bottom: 0.3em;
  font-size: 1.05em;
  font-weight: 500;
  line-height: 1.3; }

.ui-impression-title-artist {
  font-size: 0.9em;
  font-weight: 400; }

.ui-impression-rating {
  font-weight: 400;
  line-height: 1.5; }

.ui-impression-rating-stars {
  display: inline-block; }

.ui-content {
  position: relative;
  max-width: 1200px;
  min-height: 100%;
  z-index: 10;
  padding: 1em;
  margin: auto; }
  @media (min-width: 768px) {
    .ui-content {
      padding: 2em 2em; } }
  .ui-content--header {
    max-width: 45.5rem; }
    @media (min-width: 768px) {
      .ui-content--header {
        padding: 1.5em 2em 2em; } }
  @media (min-width: 768px) {
    .ui-content--footer {
      padding: 2em 2em 1.5em; } }
  @media (min-width: 768px) {
    .ui-content--smaller {
      padding: 2em 2em; } }
  @media (min-width: 768px) {
    .ui-content--copy {
      padding: 1em 2em; } }

.ui-content-title-wrapper {
  position: absolute;
  top: -0.4em;
  left: 0;
  right: 0;
  text-align: center; }
  .ui-content-title-wrapper--location {
    top: -3.4em; }
    @media (min-width: 768px) {
      .ui-content-title-wrapper--location {
        top: -4.4em; } }

.ui-content-title {
  display: inline-block;
  padding: 0.4em 1em;
  z-index: 10;
  font-size: 0.9em;
  font-weight: 500;
  line-height: 0;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  opacity: 0;
  background: #2f2c1e;
  border-radius: 4px;
  border: 1px solid #f6de52;
  color: #f6de52;
  -webkit-transform: scaleY(0);
  -webkit-transform-origin: center top;
  -webkit-animation: ui-content-title 300ms 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-content-title {
  to {
    opacity: 1;
    -webkit-transform: scaleY(1);
    line-height: 1; } }
.ui-copy {
  font-size: 1em;
  margin: 1.5em auto;
  padding: 0 0.4em;
  color: #f6de52;
  line-height: 1.5;
  opacity: 0;
  -webkit-animation: ui-header-activity-item 210ms 1530ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 667px) {
    .ui-copy {
      padding: 0; } }
  .ui-copy h1,
  .ui-copy h2,
  .ui-copy h3,
  .ui-copy h4,
  .ui-copy h5,
  .ui-copy h6,
  .ui-copy p,
  .ui-copy ul,
  .ui-copy blockquote {
    max-width: 41rem;
    margin-left: auto;
    margin-right: auto; }
  .ui-copy blockquote {
    max-width: 43.6rem; }
    .ui-copy blockquote.big {
      padding-left: 0;
      max-width: 54rem;
      font-size: 1.8em;
      font-style: italic;
      text-align: center;
      border: 0; }
  .ui-copy p,
  .ui-copy blockquote {
    margin-top: 1.8rem;
    margin-bottom: 1.8rem;
    font-size: 1.1em;
    font-weight: 400; }
  .ui-copy blockquote {
    padding: 0.3rem 0 0.3rem 1.2rem;
    border-left: 2px solid #f6de52; }
  .ui-copy cite {
    display: block;
    margin-top: 0.5em;
    font-style: normal;
    text-align: right; }
  .ui-copy + .ui-copy {
    margin-top: 3em; }

.ui-copy-magic {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1; }

@-webkit-keyframes ui-work-item-web-part {
  to {
    opacity: 1;
    -webkit-transform: scaleX(1); } }
.ui-work-item-picture-web-header {
  height: 10%;
  margin-bottom: 4%; }

.ui-work-item-picture-web-logo {
  width: 30%;
  height: 100%;
  float: left;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: left center;
  -webkit-transform: scaleX(0);
  -webkit-animation: ui-work-item-web-part 300ms 1800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-picture-web-nav {
  width: 50%;
  height: 100%;
  float: right;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: right center;
  -webkit-transform: scaleX(0);
  -webkit-animation: ui-work-item-web-part 270ms 1800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-picture-web-body {
  height: 66%;
  margin: auto auto 4%; }

.ui-work-item-picture-web-body-col {
  display: block;
  width: 30%;
  height: 100%;
  margin-right: 5%;
  float: left;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: left center;
  -webkit-transform: scaleX(0);
  -webkit-animation: ui-work-item-web-part 240ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-work-item-picture-web-body-col:nth-child(1) {
    -webkit-animation-delay: 1900ms; }
  .ui-work-item-picture-web-body-col:nth-child(2) {
    -webkit-animation-delay: 2000ms; }
  .ui-work-item-picture-web-body-col:nth-child(3) {
    -webkit-animation-delay: 2100ms; }
  .ui-work-item-picture-web-body-col:last-of-type {
    margin-right: 0; }

.ui-work-item-picture-web-footer {
  width: 100%;
  height: 12%;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: left center;
  -webkit-transform: scaleX(0);
  -webkit-animation: ui-work-item-web-part 210ms 2200ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-work-item-picture-part {
  to {
    opacity: 1;
    -webkit-transform: translateX(0); } }
@-webkit-keyframes ui-work-item-picture-part-small {
  to {
    opacity: 1;
    -webkit-transform: scale(1); } }
.ui-work-item-picture-app-iphone {
  position: absolute;
  bottom: 0;
  right: 20%;
  z-index: 1;
  width: 4.34em;
  height: 8em;
  border: 1px solid #f6de52;
  border-radius: 6px;
  background: #48151c;
  opacity: 0;
  -webkit-transform-origin: center;
  -webkit-transform: translateX(4em);
  -webkit-animation: ui-work-item-picture-part 300ms 1700ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-work-item-picture-app-iphone:before, .ui-work-item-picture-app-iphone:after {
    content: "";
    display: inline-block;
    position: absolute;
    opacity: 0;
    -webkit-transform-origin: center;
    -webkit-transform: scale(1.2);
    -webkit-animation: ui-work-item-picture-part-small 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-work-item-picture-app-iphone:before {
    top: 2.6%;
    left: 50%;
    width: 12px;
    margin-left: -6px;
    height: 4px;
    border: 1px solid rgba(246, 222, 82, 0.7);
    border-radius: 2px;
    -webkit-animation-delay: 2000ms; }
  .ui-work-item-picture-app-iphone:after {
    left: 50%;
    bottom: 3.5%;
    width: 8px;
    height: 8px;
    margin-left: -4px;
    border: 1px solid rgba(246, 222, 82, 0.7);
    border-radius: 50%;
    -webkit-animation-delay: 2000ms; }

.ui-work-item-picture-app-iphone-bezel {
  display: block;
  position: absolute;
  top: 9%;
  left: 3%;
  bottom: 12%;
  width: 94%;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: center;
  -webkit-transform: scale(0.8);
  -webkit-animation: ui-work-item-picture-part-small 300ms 1800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-picture-app-ipad {
  position: absolute;
  top: 0;
  left: 12.6%;
  width: 13em;
  height: 9em;
  border: 1px solid #f6de52;
  border-radius: 6px;
  background: #48151c;
  opacity: 0;
  -webkit-transform-origin: center;
  -webkit-transform: translateX(-4em);
  -webkit-animation: ui-work-item-picture-part 300ms 1600ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-work-item-picture-app-ipad:before, .ui-work-item-picture-app-ipad:after {
    content: "";
    display: inline-block;
    position: absolute;
    opacity: 0;
    -webkit-transform-origin: center;
    -webkit-transform: scale(1.2);
    -webkit-animation: ui-work-item-picture-part-small 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-work-item-picture-app-ipad:before {
    top: 50%;
    left: 1.6%;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border: 1px solid rgba(246, 222, 82, 0.7);
    border-radius: 50%;
    -webkit-animation-delay: 2200ms; }
  .ui-work-item-picture-app-ipad:after {
    top: 50%;
    right: 1.6%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border: 1px solid rgba(246, 222, 82, 0.7);
    border-radius: 50%;
    -webkit-animation-delay: 2200ms; }

.ui-work-item-picture-app-ipad-bezel {
  display: block;
  position: absolute;
  top: 5%;
  left: 7%;
  right: 5%;
  bottom: 5%;
  border: 1px solid rgba(246, 222, 82, 0.7);
  opacity: 0;
  -webkit-transform-origin: center;
  -webkit-transform: scale(0.8);
  -webkit-animation: ui-work-item-picture-part-small 300ms 2000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-picture-code {
  display: block;
  font-family: "Menlo", monospace;
  font-size: 0.9em;
  line-height: 1.5;
  text-align: left;
  white-space: nowrap;
  color: #f6de52; }

.ui-work {
  margin: 3em 0 3.4em; }

.ui-work-item {
  text-align: center; }
  @media (max-width: 1023px) {
    .ui-work-item {
      width: 90%;
      max-width: 350px;
      margin: 3em auto; } }
  @media (min-width: 1024px) {
    .ui-work-item {
      width: 33.33%;
      float: left;
      padding: 0 0.7em; } }

@-webkit-keyframes ui-work-item-picture {
  to {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1); } }
.ui-work-item-title {
  color: #f6de52;
  margin-bottom: 0.5em;
  opacity: 0;
  -webkit-transform: translateY(1em) scale(1);
  -webkit-animation: ui-work-item-picture 300ms 1400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-caption {
  font-weight: 400;
  line-height: 1.4;
  color: #f6de52;
  opacity: 0;
  -webkit-transform: translateY(0.7em) scale(1);
  -webkit-animation: ui-work-item-picture 300ms 1600ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-work-item-picture {
  to {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1); } }
.ui-work-item-picture {
  display: block;
  margin: 0 auto 1.2em;
  width: 200px;
  height: 200px;
  opacity: 0;
  -webkit-transform: translateY(-1em) scale(1.1);
  -webkit-animation: ui-work-item-picture 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

.ui-work-item-picture--web {
  width: 90%;
  padding: 0.8em;
  background: #48151c;
  border: 1px solid #f6de52;
  -webkit-animation-delay: 1200ms; }

.ui-work-item-picture--app {
  position: relative;
  width: 90%;
  -webkit-animation-delay: 1400ms; }

.ui-work-item-picture--development {
  width: 90%;
  padding: 0.4em 0.6em;
  overflow-x: hidden;
  overflow-y: auto;
  background: #48151c;
  border: 1px solid #f6de52;
  -webkit-animation-delay: 1600ms; }
  .ui-work-item-picture--development .diff {
    color: #d23f4a; }

.ui-values-item {
  position: relative;
  margin-top: 1.5em; }
  .ui-values-item--with-number {
    padding-left: 3em; }

.ui-values-item-number {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.6em;
  height: 1.6em;
  margin-top: -0.75em;
  text-align: center;
  line-height: 1.4;
  font-size: 1.3em;
  font-weight: 500;
  border: 2px solid #f6de52;
  border-radius: 50%; }

.ui-copy-subheading,
.ui-values-item-title {
  font-size: 0.9em;
  text-transform: uppercase;
  letter-spacing: 1px; }
  .ui-copy-subheading + p,
  .ui-values-item-title + p {
    margin-top: 0; }

.ui-copy-heading {
  font-size: 2.2em;
  font-weight: 600;
  line-height: 1.2; }

.ui-copy-subheading {
  margin-top: 2em;
  margin-bottom: 0.5em; }

.ui-enquiry-form {
  margin: auto;
  padding: 2em 0;
  max-width: 28em;
  height: 100%;
  max-height: 50em;
  transition: all 500ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-size: 1.1em;
  -webkit-transform: scaleY(1); }
  .ui-enquiry-form.animation {
    opacity: 0;
    -webkit-animation: ui-header-activity-item 210ms 1530ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  @media (min-width: 768px) {
    .ui-enquiry-form {
      padding: 3em 0;
      font-size: 1.2em; } }
  .ui-enquiry-form.success {
    padding: 0;
    -webkit-transform: scaleY(0);
    visibility: hidden;
    opacity: 0; }
  .ui-enquiry-form.error {
    -webkit-animation: ui-enquiry-form-error 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }

@-webkit-keyframes ui-enquiry-form-error {
  0% {
    -webkit-transform: translateX(-1em); }
  25% {
    -webkit-transform: translateX(1em); }
  50% {
    -webkit-transform: translateX(-0.5em); }
  75% {
    -webkit-transform: translateX(0.5em); }
  100% {
    -webkit-transform: translateX(0); } }
.ui-enquiry-form-item {
  position: relative;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  @media (min-width: 768px) {
    .ui-enquiry-form-item--half {
      width: 48%;
      float: left;
      margin-right: 4%;
      margin-bottom: 0; } }
  .ui-enquiry-form-item--half:last-of-type {
    margin-right: 0; }
  .ui-enquiry-form-item--select:before, .ui-enquiry-form-item--select:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0.2em;
    width: 0.5em;
    height: 0.1em;
    margin-top: -0.9em;
    background: #ccb846; }
  .ui-enquiry-form-item--select:before {
    right: 0.45em;
    -webkit-transform: rotate(45deg);
    border-radius: 2px 0 0 2px; }
  .ui-enquiry-form-item--select:after {
    -webkit-transform: rotate(-45deg);
    border-radius: 0 2px 2px 0; }

.ui-enquiry-form-item.success,
.ui-enquiry-form-submit.success {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateX(1em); }

.ui-enquiry-form-input,
.ui-enquiry-form-textarea {
  display: block;
  margin-left: 0;
  margin-bottom: 1.8em;
  padding: 0 0 6px 0;
  font-size: 1em;
  font-family: "Whitney SSm A", "Whitney SSm B", "Lucida Grande", -apple-system, sans-serif;
  font-weight: 400;
  border-radius: 0;
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(246, 222, 82, 0.8);
  color: #f6de52; }

.ui-header-newsletter-form-input.error,
.ui-enquiry-form-input.error,
.ui-enquiry-form-textarea.error,
.ui-enquiry-form-select.error {
  border-color: #d23f4a; }

.ui-enquiry-form-input--active + label,
.ui-enquiry-form-select--active + label,
.ui-enquiry-form-textarea--active + label,
.ui-enquiry-form-input:focus + label,
.ui-enquiry-form-textarea:focus + label {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0) scaleY(1);
  transition-duration: 150ms;
  transition-delay: 100ms; }

.ui-enquiry-form-input-label {
  position: absolute;
  bottom: 100%;
  margin-bottom: 0.3em;
  font-size: 0.7em;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #f6de52;
  opacity: 0;
  visibility: hidden;
  transition: all 75ms 0 cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-transform: translateY(0.5em) scaleY(0.8); }

.ui-enquiry-form-input {
  width: 100%; }

.ui-enquiry-form-textarea {
  width: 100%;
  height: 1.64em;
  resize: none;
  line-height: 1.4;
  overflow: hidden;
  white-space: break-word; }

.ui-enquiry-form-select {
  display: block;
  width: 100%;
  padding: 0 0 0.3em 0;
  font-size: 1em;
  font-family: "Whitney SSm A", "Whitney SSm B", "Lucida Grande", -apple-system, sans-serif;
  font-weight: 400;
  margin-bottom: 1.5em;
  border: none;
  border-radius: 0;
  border-bottom: 1px solid rgba(246, 222, 82, 0.8);
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  color: rgba(246, 222, 82, 0.8);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  .ui-enquiry-form-select--active {
    color: #f6de52; }

.ui-enquiry-form-submit {
  position: relative;
  transition: all 120ms cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  @media (min-width: 667px) {
    .ui-enquiry-form-submit {
      margin-top: 1em; } }

.ui-enquiry-form-submit-button {
  padding: 0.4em 1em;
  font-size: 1em;
  width: 100%; }
  @media (min-width: 480px) {
    .ui-enquiry-form-submit-button {
      float: right;
      width: auto;
      margin: 0.1em 0 0 1em; } }

.ui-enquiry-form-submit-caption {
  font-size: 0.9em;
  font-weight: 400;
  color: #f6de52;
  line-height: 1.5;
  margin-top: 1em;
  text-align: center; }
  @media (min-width: 480px) {
    .ui-enquiry-form-submit-caption {
      float: left;
      margin-top: 0;
      text-align: left; } }

.ui-map,
.ui-article,
.ui-values,
.ui-enquiry {
  position: relative; }

.ui-line {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  z-index: 1;
  background: #f6de52;
  -webkit-transform-origin: center center;
  -webkit-transform: scaleX(0);
  -webkit-animation: ui-line 300ms 1000ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1 forwards; }
  .ui-line--action {
    background: #d23f4a; }

@-webkit-keyframes ui-line {
  to {
    width: 100%;
    -webkit-transform: scaleX(1); } }
body {
  background: #2f2c1e;
  font-family: "Whitney SSm A", "Whitney SSm B", "Lucida Grande", -apple-system, sans-serif;
  font-size: 14px;
  font-weight: 200;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  cursor: default;
  max-width: 100%; }
  @media (min-width: 768px) {
    body {
      font-size: 16px; } }
  @media (min-width: 1280px) {
    body {
      font-size: 18px; } }

.ui--ready {
  opacity: 1;
  overflow: auto; }

.ui-flashy-word {
  -webkit-animation-name: ui-header-activity-item;
  -webkit-animation-duration: 300ms;
  -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-animation-fill-mode: forwards; }
