/* Defaults */
@charset="utf-8";

html[dir=ltr] {
  text-align: right;
}

* {
  vertical-align: baseline;
  font-feature-settings: "kern" 1;
  font-variant-ligatures: no-common-ligatures;
  /*, "liga" 1, "dlig" 1*/
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Fonts */
@font-face {
    font-family: 'Brace-Thin';
    src: url('fonts/BraceWeb-Thin.eot');
    src: url('fonts/BraceWeb-Thin.eot?') format('embedded-opentype'),
    url('fonts/BraceWeb-Thin.woff') format('woff'),
    url('fonts/BraceWeb-Thin.ttf') format('opentype');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'Brace-ExtraBold';
    src: url('fonts/BraceWeb-ExtraBold.eot');
    src: url('fonts/BraceWeb-ExtraBold.eot?') format('embedded-opentype'),
    url('fonts/BraceWeb-ExtraBold.woff') format('woff'),
    url('fonts/BraceWeb-ExtraBold.ttf') format('opentype');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Output Sans';
    src: url('fonts/Output_Sans-Bold.eot');
    src: url('fonts/Output_Sans-Bold.eot?') format('embedded-opentype'),
    url('fonts/Output_Sans-Bold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Output Sans';
    src: url('fonts/Output_Sans-Regular.eot');
    src: url('fonts/Output_Sans-Regular.eot?') format('embedded-opentype'),
    url('fonts/Output_Sans-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Output Sans';
    src: url('fonts/Output_Sans-Light.eot');
    src: url('fonts/Output_Sans-Light.eot?') format('embedded-opentype'),
    url('fonts/Output_Sans-Light.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

::-moz-selection {
  background-color: #111111;
  color: #FEFEFE;
}
::selection {
  background-color: #111111;
  color: #FEFEFE;
}

/* Custom UI Styles */
::-webkit-scrollbar {
  width: .9rem;
  background-color: #FAFBFB;
}
::-webkit-scrollbar-track {
  background-color: #FAFBFB;
}
::-webkit-scrollbar-thumb {
  border-radius: .9rem;
  background-color: #A7A9AB;
  border: solid 4px #FEFEFE;
}

.app ::-webkit-scrollbar {
  display: none;
}

.app .settings-secondary:hover ::-webkit-scrollbar {
  display: inline-block;
}

::-webkit-input-placeholder {
  color: #D1D2D4;
}
:-moz-placeholder {
  /* Firefox 18- */
  color: #D1D2D4;
}
::-moz-placeholder {
  /* Firefox 19+ */
  color: #D1D2D4;
}
:-ms-input-placeholder {
  color: #D1D2D4;
}
::-moz-selection {
  /* Code for Firefox */
  color: #FEFEFE;
  background: rgba(100, 100, 100, .4);
}
::selection {
  color: #FEFEFE;
  background: rgba(100, 100, 100, .4);
}

/* Prevent the text contents of draggable elements from being selectable. */
[draggable] {
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slotIn {
  from {
    transform: translate3d(0, 2rem, 0);
    opacity: 0;
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes whiteIn {
  from {
    background-color: rgba(255,255,255, 1);
  }
  to {
    background-color: rgba(255,255,255, 0);
  }
}
@keyframes blueIn {
  from {
    background-color: #FEFEFE;
  }
  to {
    background-color: #51C2BE;
  }
}
@keyframes loading {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0.4;
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}
@keyframes rotate {
  from {
    transform: rotate3d(0, 0, 1, 0deg)
  }
  to {
    transform: rotate3d(0, 1, 1, 360deg)
  }
}
@keyframes combineLeft {
  from {
    transform: translate3d(-10rem, 0, 0);
    opacity: 0;
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 0.3;
  }
}
@keyframes combineRight {
  from {
    transform: translate3d(10rem, 0, 0);
    opacity: 0;
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 0.3;
  }
}
@keyframes fromblue {
  from {
    background-color: #51C2BE;
  }
  to {
    background-color: #D1D2D4;
  }
}
@keyframes colorShift {
  0% {
    background-color: #51C2BE;
  }
  20% {
    background-color: #e2674f;
  }
  40% {
    background-color: #aedfe3;
  }
  60% {
    background-color: #f1b41b;
  }
  80% {
    background-color: #1d5671;
  }
  100% {
    background-color: #51C2BE;
  }
}
@keyframes weightShift {
  0% {
    font-weight: 500;
  }
  25% {
    font-weight: 600;
  }
  50% {
    font-weight: 700;
  }
  75% {
    font-weight: 800;
  }
  100% {
    font-weight: 900;
  }
}
.fade-in.first {
  opacity: 0;
  animation: fadeIn ease-in-out 1;
  animation-fill-mode: forwards;
  animation-duration: .1s;
  animation-delay: 0s;
}
.fade-in {
  opacity: 0;
  animation: fadeIn ease-in-out 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.33s;
}
.fade-in.two {
  animation-duration: .4s;
  animation-delay: 0.66s;
}
.fade-in.three {
  animation-duration: .4s;
  animation-delay: 0.77s;
}
.slot-in div {
  display: inline-block;
  opacity: 0;
  transition: color .1s ease;
  will-change: opacity;
  will-change: transform;
}
.slot-in div:hover {
/*  color: #51C2BE;*/
/*  opacity: .6;*/
/*  margin: 1rem;*/
/*  transform: translate3d(0, -2rem, 0) !important;*/
  /*font-weight: 100;*/
/*  opacity: .1;*/

  /* font-family: "Brace-Thin"; */
  /* padding: 0 .1ch; */
}
.type-tiles.slot-in div:nth-child(1) {
  animation-delay: .44s;
}
.type-tiles.slot-in div:nth-child(2) {
  animation-delay: .88s;
}
.type-tiles.slot-in div:nth-child(3) {
  animation-delay: .77s;
}
.type-tiles.slot-in div:nth-child(4) {
  animation-delay: 1.11s;
}
.type-tiles.slot-in div:nth-child(5) {
  animation-delay: 1.55s;
}
.type-tiles.slot-in div:nth-child(6) {
  animation-delay: 1.33s;
}


.slot-in div:nth-child(1) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.18s;
}
.slot-in div:nth-child(2) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.20s;
}
.slot-in div:nth-child(3) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.22s;
}
.slot-in div:nth-child(4) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.24s;
}
.slot-in div:nth-child(5) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.26s;
}
.slot-in div:nth-child(6) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.28s;
}
.slot-in div:nth-child(7) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.30s;
}
.slot-in div:nth-child(8) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.32s;
}
.slot-in div:nth-child(9) {
  animation: slotIn ease 1;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 0.34s;
}

.white-in {
  background-color: rgba(255,255,255, 1);
  animation: whiteIn ease-in-out 1;
  animation-fill-mode: forwards;
  animation-duration: .8s;
  animation-delay: 0.77s;
}

.blueIn {
  background-color: #FEFEFE;
  animation: blueIn ease-in-out 1;
  animation-fill-mode: forwards;
  animation-duration: 2s;
}
.loading {
  animation-duration: 2s;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
  animation-name: loading;
}
.spin {
  animation-duration: 2.5s;
  transform: rotate(0deg);
  animation-fill-mode: both;
  animation-name: spin;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
.fromblue {
  background-color: #51C2BE;
  animation: fromblue ease-in-out 1;
  animation-fill-mode: forwards;
  animation-duration: .8s;
  animation-delay: 0s;
}


body {
  margin: 0;
  padding: 0;
}
body.view-bg .login-box:not(.logged-in) {
  margin: 0;
  padding: 0;
  position: relative;
  background-color: #f9f9fa; 

  /* background: linear-gradient(35deg, #F1F1F1 0%,#FFF 100%);*/
  /* background-image: url('assets/images/map.png');*/
  /* background-color: #FAFAFA;*/
}
.container {
  height: 100%;
}

@media (min-width:40rem) {
  body.view-bg .login-box:not(.logged-in) {
    margin: 0;
    padding: 0;
    position: relative;
/*    background: url('/assets/images/productionmap.jpg') no-repeat center center fixed; 
    background-attachment: fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;*/
  }
}

body.app.view-bg .login-box:not(.logged-in) {
  background: url('/images/productionmap.jpg') no-repeat center center fixed; 
}

a:link, a:visited {
  text-decoration: none;
  color: #51C2BE;
  transition: color 0.16s ease;
}
a:hover, a:focus, a:active {
  color: #008583;
/*  cursor: pointer;*/
}


/* Inline Text Styles and Modifications */
.key-command {
  background-color: #F1F1F2;
  border-radius: 2px;
  padding: .2rem .4rem;
  font-size: .8rem;
  letter-spacing: .05rem;
  font-weight: 800;
  white-space: nowrap;
}
.button-command {
  background-color: #51C2BE;
  color: #FEFEFE;
  border-radius: 2px;
  padding: .25rem .4rem .2rem .4rem;
  font-size: .7rem;
  letter-spacing: .05rem;
  white-space: nowrap;
}

/* Top Level Pages */
/* Nav Component */
nav {
  display: flex;
  height: 5.5rem;
  font-size: .9rem;
  z-index: 200;
  font-family: "Output Sans";
  font-weight: 400;
  position: relative;
  flex-wrap: wrap;
  transition: all .4s ease;
  box-shadow: 0px 10px 80px -40px rgba(0,0,0,0);
}
nav:hover {
  box-shadow: 0px 10px 80px -40px rgba(0,0,0,.4);
}
nav .bar1 {
  /*background-color: #FEFEFE;*/
  background-color: #111;
  display: flex;
  width: 50%;
  height: 100%;
  order: 1;
}
nav .bar1 > * {
  align-self: center;
  text-align: center;
  color: #FEFEFE;
  padding-left: 10%;
}
nav .bar1 > .menu span {
  transition: color 0.16s ease;
  font-weight: 400;
}
nav .bar1 > .menu:hover span {
  color: #008583;
}
nav .bar1 > .logo {
  position: relative;
  transition: opacity 0.16s ease;
}
/*nav .bar1 > .logo .backdrop {
  position: absolute;
  top: 0;
  left: 50%;
}*/
/*nav .bar1 > .logo .backdrop:after {
  content: '';
  position: absolute;
  background-color: #51C2BE;
  left: 0;
  top: 0;
  height: 2em;
  width: 2em;
}
*/
nav .bar1 > .logo:hover {
  opacity: .3;
}
nav .bar1 > a > * {
  pointer-events: none;
} 

nav .bar1 > .menu {
  color: rgba(255,255,255, .3);
  font-family: "Output Sans";
  font-weight: 400;
  font-size: 2.2rem;
  margin-bottom: .2rem;
  display: block;
  cursor: pointer;
}

nav .bar2 {
  width: 0%;
  overflow: hidden;
  background-color: rgba(0,0,0,.9);
  transition: background-color 0.6s ease, max-height 0.4s ease;
  order: 3;
  width: 100%;
  max-height: 0;
}
nav.menu-open .bar2 {
  max-height: 20rem;
  /*box-shadow: 0px 10px 80px -40px rgba(0,0,0,1);*/
}
.tripple-bars {
  cursor: pointer;
}
nav.menu-open .tripple-bars {
  display: none;
  cursor: pointer;
}
nav .close {
  display: none;
}
nav.menu-open .close {
  display: inline-block;
  cursor: pointer;
  font-size: 2rem;
  font-weight: 400;
}

nav .bar2:hover {
  /*  background-color: rgba(0,0,0,1);*/
}
nav .bar2 > div {
  align-self: center;
  padding: 2rem 5% 2rem 5%;
  color: #FEFEFE;
  background-color: rgba(255,255,255,0);
  transition: background 0.16s ease;
}
nav .bar2 > div:hover {
  background-color: rgba(255,255,255,.04);
}
nav .bar2 > div:hover a {
/*  color: #51C2BE;*/
}
nav .bar2 > div {
/*  cursor: pointer;*/
}
nav .bar3 {
  background-color: #111;
  position: relative;
  display: flex;
  width: 50%;
  height: 100%;
  order: 2;
  transition: none;
}
nav .bar3 > a {
  align-self: center;
  text-align: center;
  width: 100%;
  color: #FEFEFE;
  transition: none;
}
nav .bar3 > a span {
/*  transition: border 0.16s ease;*/
}
nav .bar3 > a span svg {
/*  transition: all 0.16s ease;*/
}
nav .bar3 > a:hover {
  color: #51C2BE;
  /* -webkit-background-blend-mode: multiply;  
  -webkit-mix-blend-mode: multiply; */
}
nav .bar3 > a:hover div svg polygon {
  fill: #51C2BE;
}
nav .bar3 > a:hover div {
  border: solid 2px #51C2BE;
}
nav .nav-item a:link, nav .nav-item a:visited {
  color: #FEFEFE;
  position: relative;
}
nav .nav-item a:hover, nav .nav-item a:focus, nav .nav-item a:active {
  color: #51C2BE;
/*  font-weight: 800;*/
}
.nav-item.active a:after {
  content: '';
  position: absolute;
  left: 0;
  display: inline-block;
  height: 1px;
  width: 100%;
  border-bottom: 1px solid #51C2BE;
  margin-top: 1.2rem;
  transition: border 0.16s ease;
}
.nav-item.active a:link, .nav-item.active a:visited {
  color: #51C2BE;
  font-weight: 800;
}

.nav-item.active a:hover, .nav-item.active a:active, .nav-item.active a:focus {
  color: #008583;
}
.nav-item.active a:hover:after {
  border-bottom: 1px solid #008583;
}
/*nav .bar3 .nav-item a:hover span, nav .bar3 .nav-item a:focus span, nav .bar3 .nav-item a:active span {
  border: solid 2px #51C2BE;
}*/

a.logout:link {
    font-family: 'Output Sans';
    font-size: .7rem;
    display: inline-block;
    padding-left: 56%;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: .03rem;
}
.logged-in a.logout:hover {
/*    font-weight: 800;*/
    color: #111;
}

/* Dashboard sub nav */
.subnav {
  padding: 1.2rem 5%;
  font-family: 'Output Sans';
  font-size: .9rem;
}
.subnav a {

}
.subnav a:hover {
/*  opacity: .6;*/
}
.tab-account, .tab-projects, .tab-billing {
  padding: 0 .9rem;
  margin: 0 -3px 0 0;
  letter-spacing: .04rem;
  text-transform: capitalize;
  position: relative;
}
.subnav.account .tab-account, .subnav.projects .tab-projects, .subnav.billing .tab-billing {
  display: inline-block;
  font-weight: 800;
  color: #FEFEFE;
}
.tab-account:after, .tab-projects:after, .tab-billing:after  {
  content: '';
  position: absolute;
  background-color: #FEFEFE;
  top: 36px;
  top: -1.2rem;
  color: black;
  width: 100%;
  height: 55px;
  z-index: -1000;
  left: 0;
  transition: all 0.16s ease;
}
.tab-account:hover:after, .tab-projects:hover:after, .tab-billing:hover:after  {
  background-color: #f9fafa;
}
.subnav.account .tab-account:after, .subnav.projects .tab-projects:after, .subnav.billing .tab-billing:after  {
  content: '';
  position: absolute;
  background-color: #51c2be;
  top: 36px;
  top: -1.2rem;
  color: black;
  width: 100%;
  height: 55px;
  z-index: -1000;
  left: 0;
}

/* min-width:40rem */
@media (min-width:40rem) {
  nav .bar1 {
    width: 20%;
  }
  nav .bar1 > a {
    width: 100%;
    padding-left: 0;
  }
  nav .bar1:hover {
  }
  nav .bar1 > .menu {
    display: none;
  }
  nav .bar2 {
    max-height: 100%;
    height: 100%;
    display: flex;
    order: 2;
    width: 60%;
    background-color: rgba(255,255,255,.4);
  }
  nav .bar2:hover {
    background-color: rgba(255,255,255,.5);
  }
  nav .bar2 > div {
    align-self: center;
    text-align: center;
    flex: 1;
    width: 25%;
  }
  nav .bar3 {
    width: 20%;
    text-align: left;
  }
  nav .bar3 a div {
    border: none;
  }
  nav .bar3 > a:hover .dropdown-button{
    border: none;
  }
  nav .nav-item a:link, nav .nav-item a:visited {
    color: #111;
  }
  nav .nav-item a:hover, nav .nav-item a:focus, nav .nav-item a:active {
    color: #51C2BE;
  }
  .subnav { 
    padding: 1.2rem 10%;
  }
}

@media (min-width:80rem) {
  nav .bar3 a div {
    border: solid #444 2px;
  }
  nav .bar3 > a:hover div {
    border: solid 2px #51C2BE;
  }
}

/*.bg {
  background-color: #F9F9FA;
}*/

/* Intro */
.intro {
  background-color: #F9F9FA;
  position: relative;
  border-top: none;
}
.intro h1, .intro p {
  outline: none;
}
.intro video {
  /*clip-path: polygon*/
  width: 100%;
}
.intro h1 {
  font-family: "Brace-ExtraBold";
  font-weight: 800;
  text-align: center;
  font-size: 6.5vmax;
  margin: 0 1rem;
  color: #111111;
  -webkit-font-smoothing: antialiased;
  letter-spacing: .1rem;
}

/* Call to action area */
.cta {
  padding: 3rem 5% 3rem;
  text-align: center;
  position: relative;
  background-color: #FEFEFE;
}
.cta:after {
  height: 1.4rem;
  width: 1px;
  content: '';
  position: absolute;
  left: -.5px;
  top: -.7rem;
  background-color: #d1d2d4;
  left: 50%;
  margin-left: -1px;
}
/*.cta:before {
  height: 1px;
  width: 1.4rem;
  content: '';
  position: absolute;
  left: -1.4rem;
  bottom: 3rem;
  background-color: #d1d2d4;
  left: 50%;
  margin-left: -.7rem;
}*/
.cta .subhead {
  font-family: "Output Sans";
  font-weight: 300;
  font-size: 1rem;
  margin: 0 0 .9rem 0;
  line-height: 1.5;
  position: relative;
}
.cta .button.medium {
  background: linear-gradient(25deg, #ea8752 0%, #e2674f 100%);
  border: none;
  color: #FEFEFE;
  -webkit-font-smoothing: antialiased;
  transition: none;

  border-radius: 2px;
  border: solid #ea8752 2px;
}
.cta .button.medium:hover {
  background: #111111;
  border: solid #111111 2px;
}
.cta .button.medium.secondary {
  background: transparent;
  border: none;
  color: #FEFEFE;
  -webkit-font-smoothing: antialiased;
  transition: none;

  border: solid #e2674f 2px;
  color: #e2674f;
}
.cta .button.secondary:hover {
  background: transparent;
  border: solid #111111 2px;
  color: #111111;
}
.cta .or {
  font-size: .8rem;
  display: inline-block;
  margin: 0 .375rem;
  display: none;
  font-family: "Output Sans";
  font-weight: 400;
  text-align: center;
  line-height: 1.5;
  letter-spacing: .1rem; 
  color: #999999;
  text-transform: uppercase;
}
/* /Intro Section */

/* min-width:40rem */
@media (min-width:40rem) {
  .intro {
    overflow: hidden;
    padding: 3.5rem 5% 3.5rem;
    position: relative;
  }
  .intro video {
    box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
    border: solid #d1d2d4 2px;
    border-radius: 1px;
    margin-bottom: -5rem;
    z-index: -10;
  }
  .intro:after {
    height: 6rem;
    width: 100%;
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
/*    background-color: #f9f9fa;*/
    background: linear-gradient(0deg, rgba(249, 249, 250, 1) 0%, rgba(249, 249, 250, 0) 100%);
    opacity: 1;
  }
  .intro:before {
    height: 100%;
    width: 100%;
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
/*    background-color: #111;*/
/*    clip-path: polygon(50% 0%, 100% 0%, 100% 100%, 0% 100%);
    opacity: .02;*/
/*     background: linear-gradient(35deg, #51C2BE 0%,#afdfe1 100%); */
/*    background-blend-mode: multiply;
    mix-blend-mode: multiply;*/
  }
  .cta .or {
    display: inline-block;
  }
  .cta .button.secondary {
    display: inline-block;
  }
  .cta {
    padding: 5rem 5% 6rem;
    text-align: center;
    position: relative;
  }
  .cta:after {
    height: 1.4rem;
    width: 1px;
    content: '';
    position: absolute;
    left: -.5px;
    top: -.7rem;
    background-color: #d1d2d4;
    left: 50%;
    margin-left: -1px;
  }
}
/* /min-width:40rem */
/* /min-width:80rem */
@media (min-width:80rem) {
  .intro {
    padding: 3.5rem 15% 3.5rem;
  }
}
/* /min-width:80rem */

/* Manefesto */
.type-tiles {
  display: flex;
  flex-flow: row wrap;
  background-color: #FFFFFF;
}
.type-section {
  height: 12rem;
  flex: 1 100%;
  position: relative;
}
.type-tile {
  height: 100%;
  will-change: opacity;
}

.type-section:nth-child(1) .type-tile {
  background: url('/assets/images/gallery/typetile1.png') no-repeat center center;
  background-size: cover;

  background-color: #efb222;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(1) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(1):before {
  content: 'Scandia Line – @Processtype and Ocre Poster Serif – @DSType_Foundry';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(1):hover:before {
  opacity: 1;
}
.type-section:nth-child(2) .type-tile {
  background: url('/assets/images/gallery/typetile2.png') no-repeat center center;
  background-size: cover;

  background-color: #afdfe1;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(2) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(2):before {
  content: 'Buendia – @Boldmonday';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(2):hover:before {
  opacity: 1;
}
.type-section:nth-child(3) .type-tile {
  background: url('/assets/images/gallery/typetile3.png') no-repeat center center;
  background-size: cover;

  background-color: #205570;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(3) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(3):before {
  content: 'Willumsen – @Playtype, Wedding Gothic – @Atftype and Abelard – @Itfoundry';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(3):hover:before {
  opacity: 1;
}
.type-section:nth-child(4) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(4):before {
  content: 'Nitti Monstro – @Boldmonday';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(4):hover:before {
  opacity: 1;
}
.type-section:nth-child(4) .type-tile {
  background: url('/assets/images/gallery/typetile4.png') no-repeat center center;
  background-size: cover;

  background-color: #f59490;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(5) .type-tile {
  background: url('/assets/images/gallery/typetile5.png') no-repeat center center;
  background-size: cover;

  background-color: #df6854;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(5) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(5):before {
  content: 'Plinc Stan Slope – @Houseindustries';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(5):hover:before {
  opacity: 1;
}
.type-section:nth-child(6) .type-tile {
  background: url('/assets/images/gallery/typetile6.png') no-repeat center center;
  background-size: cover;

  background-color: #eaeaea;
  position: relative;
  transition: opacity 0.2s ease-in-out;
}
.type-section:nth-child(6) .type-tile:hover {
  opacity: .075;
}
.type-section:nth-child(6):before {
  content: 'Test your own typeface! (Univers Next – @Linotype)';
  width: 80%;
  padding: 0 10%;
  top: 45%;
  left: 0;
  position: absolute;
  opacity: 0;
  color: #111;
  font-family: "Output Sans";
  font-weight: 200;
  line-height: 1.55;
  font-size: .9rem;
  text-align: center;
  vertical-align: middle;
  transition: opacity 0.2s ease;
}
.type-section:nth-child(6):hover:before {
  opacity: 1;
}
.manefesto {
  position: relative;
  overflow: hidden;
}
.manefesto:after {
  content: '';
  position: absolute;
  background-image: url('/assets/images/t_small.svg');
  background-repeat: no-repeat;
  background-size: 80% 80%;
  background-position: 50% 50%;
  z-index: 100;
  top: .5rem;
  width: 100%;
  opacity: 0;
  height: 100%;
  left: 0;
  transform: translate3d(-10rem, 0, 0);
  transition: all 0.6s ease;
}
.manefesto:hover:after {
  transform: translate3d(0, 0, 0);
  opacity: 0.2;
}
.manefesto:before {
  content: '';
  position: absolute;
  background-image: url('/assets/images/screen_large.svg');
  background-repeat: no-repeat;
  background-size: 80% 80%;
  background-position: 50% 50%;
  z-index: 100;
  top: 0;
  width: 100%;
  opacity: 0;
  height: 100%;
  right: 0;
  transform: translate3d(10rem, 0, 0);
  transition: all 0.6s ease;
}
.manefesto:hover:before {
  transform: translate3d(0, 0, 0);
  opacity: 0.2;
}
.manefesto {
  font-family: "Output Sans";
  font-weight: 200;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.65;
  color: #51C2BE;
/*  padding: 8rem 5%;*/
/*  margin: 0;*/
/*  background-color: #FEFEFE;*/
}

@media (min-width:40rem) {
  .type-section {
    height: 16rem;
    flex: 2 50%;
  }
  .type-section:nth-child(2), .type-section:nth-child(5) {
    margin-top: 0;
  }
  .type-tile {
    height: 100%;
  }
  .manefesto {
/*    padding: 10rem 10%;
    font-size: 1.1rem;*/
  }
  .manefesto:after {
    /*max-width: 25rem;*/
  }
  .manefesto:before {
    /*max-width: 25rem;*/
  }
}
@media (min-width:60rem) {
  .type-section {
    height: 14rem;
    flex: 3 33%;
  }
  .type-section:nth-child(2), .type-section:nth-child(5) {
    margin-top: -1.375rem;
  }
  .type-tile {
    height: 100%;
  }
  .manefesto {
/*    padding: 12rem 22%;*/
  }
  .manefesto:after {
  }
  .manefesto:before {
  }
}
@media (min-width:80rem) {
  .type-section {
    height: 18rem !important; /* Not sure why we need this... */
    flex: 3 33%;
  }
  .type-tile {
    height: 100%;
  }
  .manefesto {
   /* padding: 12rem 30%;
    font-size: 1.3rem;*/
  }
  .manefesto:after {
    /*max-width: 100%;*/
  }
  .manefesto:before {
    /*max-width: 100%;*/
  }
}

/* About */
.about {
  background-blend-mode: overlay;
}
.about .feature-intro {
  background-color: #FEFEFE;
  padding: 6rem 0 3rem 0;
  border-bottom: solid #F1F1F2 1px;
}
.about .feature-intro p {
  font-weight: 300;
  letter-spacing: .04rem;
  line-height: 1.65rem;
  text-align: center;
  padding: .9rem 5%;
}

.about h2 {
  -webkit-font-smoothing: antialiased;
  font-family: "Brace-Thin";
  font-weight: 100;
  text-align: center;
  font-size: 2.1rem;
  color: #111;
/*  padding: 0rem 5% 0rem 5%;*/
  position: relative;
  margin: 0;
}
.about p {
  padding: 1.1rem 0 1.1rem 0;
  margin: 0;
  font-family: "Output Sans";
  color: #111;
  font-size: .9rem;
  line-height: 1.5;
}
.about h2:after {
  height: 1.4rem;
  width: 1px;
  content: '';
  position: absolute;
  left: -.5px;
  top: -3.5rem;
  background-color: #d1d2d4;
  left: 50%;
  margin-left: -1px;
}
.about .features {
  background-color: #FEFEFE;
  display: flex;
  flex-flow: row wrap;
}
.about .features .col-one {
  flex: 1 100%;
  display: flex;
  position: relative;
  padding: 5% 5% 10% 5%;
}
.about .features .col-two {
  flex: 1 100%;
  width: 100%;
}
.about .features video {
  width: 100%;
  height: auto;
  background-color: #FEFEFE;
}
.about .features h3 {
  font-family: "Brace-ExtraBold";
  font-size: 1.3rem;
  line-height: 1.25;
  letter-spacing: .05rem;
  color: #111;
  margin: 0;
  -webkit-font-smoothing: antialiased;

}
.about .features p {
  -webkit-font-smoothing: antialiased;
  font-family: "Output Sans";
  padding: .375rem 0;
  color: #111;
  font-size: .9rem;
  line-height: 1.5;
}


.about .features .learn-more {
  -webkit-font-smoothing: antialiased;
  font-family: "Output Sans";
  display: inline-block;
  color: #51C2BE;
  font-size: .9rem;
  line-height: 1.5;
  border-bottom: solid 1px #FEFEFE;
  transition: all 0.16s ease;
  text-decoration: none;
  margin-right: 0.6rem;
  margin-bottom: 0.45rem;
}
.about .features .learn-more:hover {
  opacity: .65;
}
.about .features:nth-of-type(2) .learn-more {
  border-bottom: solid 1px #F2B321;
  color: #F2B321;
}
.about .features:nth-of-type(3) .learn-more {
  border-bottom: solid 1px #205670;
  color: #205670;
}
.about .features:nth-of-type(4) .learn-more {
  border-bottom: solid 1px #E16954;
  color: #E16954;
}


.about .features > div .help {
  margin: 1rem 5% 1rem 5%;
  padding: 1rem 0;
  font-weight: 800;
}
.icon-compass {
  text-align: center;
  margin: 2rem 0 0 0;
}
.icon-compass > * {
  width: 1.2rem;
}
.compass {
/*  transition: all .89s ease;
  display: inline-block;
  font-size: .6rem;*/
}
.suggestion-box:hover .compass {
  -webkit-transform: rotate(-310deg);
  opacity: .3;
}
.about .features > div .suggest-features {
  margin: 2rem 5%;
  font-weight: 800;
  text-align: center;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: .1rem;
}
.about .features > div .suggest-features a:link, .about .features > div .suggest-features a:visited {
/*  border: solid #444 2px;*/
  padding: .49rem .9rem;
  border-radius: 2px;
  color: #FEFEFE;
  display: block;
  transition: all 0.16s ease;
}
.about .features > div .suggest-features a:hover, .about .features > div .suggest-features a:focus, .about .features > div .suggest-features a:active {
  color: #51C2BE;
/*  border: solid #51C2BE 2px;*/
}


.about .features > div .disclaimer {
  margin: 2rem 5%;
  font-size: .5rem;
  color: #6F6F6F;
}

/* min-width:40rem */
@media (min-width:40rem) {
  .about .feature-intro p {
    padding: 1.1rem 20% 1.1rem 20%;
  }
  .about .features {
    border-bottom: solid #FEFEFE 1px;
  }
  .about .features .col-one {
    flex: 1 33%;
    align-items: center;
    justify-content: center;
  }
  .about .features .col-two {
    flex: 1 56%;
    padding: 5% 5% 5% 5%;
    background-color: #F1F1F2;
  }
  .about .features.swap-order .col-one {
    order: 1;
  }
  .about .features.swap-order .col-two {
    order: 2;
  }
  .about .features div.suggestion-box {
    max-width: 100%;
    margin: 0 auto;
    border-top: none;
    padding: 2rem 5%;
    border-top: none;
  }
  .about .features > div .help {
    margin: 0;
    text-align: center;
  }
  .about .features > div .suggest-features {
    margin-right: 0;
    margin-left: 0;
  }
  .about .features > div .disclaimer {
    margin-right: 0;
    margin-left: 0;
  }
}
/* /min-width:40rem */
/* /min-width:60rem */
@media (min-width:60rem) {

  .about .features  {
    padding: 2.5% 5%;
    background-color: #F1F1F2;
    border-bottom: solid #FEFEFE 1px;
  }
  .about .features .col-one {
    padding: 5% 5% 5% 5%;
    overflow: visible;
  }
  .about .features .col-one div {
    box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
    padding: 2rem 2rem;
    background-color: #FEFEFE;
    border-radius: 2px;
    position: relative;
  }
  .about .features .col-one div:after {
    position: absolute;
    width: 1.4rem;
    height: 1px;
    position: absolute;
    top: 50%;
    left: -21%;
    content: '';
    background-color: #D1D2D4;
  }
  .about .features .col-one div:before {
    position: absolute;
    width: 1.4rem;
    height: 0.9rem;
    position: absolute;
    top: 0;
    left: -.7rem;
    content: '';
    background-blend-mode: 
    multiply; mix-blend-mode: multiply;
  }
  .about .features:nth-of-type(2) .col-one div:before {
    background-color: #F2B321;
  }
  .about .features:nth-of-type(3) .col-one div:before {
    background-color: #205670;
  }
  .about .features:nth-of-type(4) .col-one div:before {
    background-color: #E16954;
  }
  .about .features.swap-order .col-one div:after {
    position: absolute;
    width: 1.4rem;
    height: 1px;
    position: absolute;
    top: 50%;
    right: -21%;
    left: auto;
    content: '';
    background-color: #D1D2D4;
  }
  .about .features video {
    box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
    border: solid #d1d2d4 1px;
  }
}
/* /min-width:60rem */

  

/* Try Section */
.try {
/*  background-color: #FEFEFE;*/
  padding: 3.5rem 5% 5rem 5%;
  text-align: center;
  background-color: rgba(255,255,255,.4);
}
.try > h2 {
  font-family: "Brace-Thin";
  text-align: center;
  font-size: 2.1rem;
  font-weight: 100;
  margin: 0 0 2.5rem 0;
  background-image: linear-gradient(to bottom, #111111 25%, #111111 25%);
  background-repeat: repeat-x;
  background-size: 1px 1px;
  color: #111;
  line-height: 1.5;
  background-position: 0 47px;
  display: inline-block;
}
.try > div {
  text-align: center;
  background-blend-mode: multiply;  
  mix-blend-mode: multiply;
}

/* Buttons */
.button.first-of-pair {
  margin-right: 0.45rem;
}

.try *.button {
  display: inline;
  padding: .9rem 1.2rem .9rem 1.2rem;
  font-size: .9rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #FEFEFE;
  font-family: "Output Sans";
  background-color: #51C2BE;
  letter-spacing: .05em;
  transition: all 0.16s ease;
  -webkit-appearance: none;
  border: solid #51C2BE 2px;
}
.try *.button:hover, .try *.button:active, .try *.button:focus {
  background-color: #111111;
  border: solid #111111 2px;
}
/* /Buttons */

/* Dropdowns */
.dropdown-group {
/*  display: inline-block;
  width: 60%;
  margin-left: .375rem;*/
}
.dropdown-input {
  position: relative;
  width: auto;
  border: solid #d1d2d4 1px;
}
.dropdown-arrow {
  display: inline-block;
  padding: .96rem 5%;
  font-family: "Output Sans";
  font-size: .5rem;
  cursor: pointer;
/*  border-top: solid #D1D2D4 1px;*/
  background-color: #D1D2D4;
  text-align: center;
  width: 20%;
  position: absolute;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.dropdown-arrow:hover {
  color: #FEFEFE;
  background-color: #111111;
}
.dropdown-arrow:hover svg polygon {
  fill: #FEFEFE;
}
/* Different dropdown for myfonts without variations */
.fontSelectProvider .dropdown-arrow {
  padding: .6rem 5%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: transparent;
  width: auto;
  height: 100%;
  width: 100%;
  vertical-align: middle;
  text-align: right;
}
.fontSelectProvider .dropdown-arrow:hover {
  color: #FEFEFE;
  background-color: none;
}
.arrow-triangle {
  font-size: .5rem;
  vertical-align: middle;
}
/*.dropdown-arrow.inline {
  display: inline-block;
  position: relative;
}*/

.dropdown {
  font-size: .7rem;
  color: #111111;
  font-family: "Output Sans";
  z-index: 100;
  max-height: 19.5rem;
  position: absolute;
  width: 100%;
  background-color: #F1F2F2;
  border: solid 1px #D1D2D4;
  z-index: 50000;
  overflow-y: scroll; 
  overflow-x: hidden; 
}
.dropdown > * {
  border-top: none;
  padding: .65rem 5%;
  cursor: pointer;
  background-color: #FEFEFE;
  transition: background 0.16s ease;
}
.dropdown > .font-selected {
  background-color: #51C2BE;
}
.dropdown > .unicode-choice:nth-of-type(1) {
    margin-top: .375rem;
}
.dropdown > .unicode-choice:nth-of-type(3) {
    margin-top: .9rem;
}
.dropdown > .font-choice:hover, .dropdown > .unicode-choice:hover {
    background-color: #D1D2D4;
}

/* For the font item input only */
.active-font-varations {
  width: 80%;
  display: inline-block;
  padding: .375rem .375rem .3rem;
  /*border: solid #d1d2d4 1px;
  border-top: none;*/
}
.variations-list {
  font-size: .5rem;
  font-weight: 800;
  margin-top: 0.25rem;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  font-family: 'Output Sans';
  color: #6f6f6f;
  pointer-events: none;
}

.variations-container {
  display: flex;
  align-items: flex-start;
}
.multiple-variations {
  flex: 1 30%;
  width: 30%;
  display: inline-block;
}
.variation-selector {
  flex: 1 70%;
  width: 70%;
  margin: 1.45rem 0 0 .45rem;
  display: inline-block;
  border: 1px solid rgb(209, 210, 212);
  background: #F1F1F2;
  height: 145px;
  position: relative;
}
.variation-selector .axes {
  margin: .6rem;
  background-color: #FEFEFE;
  height: calc(100% - 1.2rem);
  border: 1px solid rgb(241, 241, 242);
  cursor: crosshair;
  color: #111;
  position: relative;
}
.cross-hair {
  font-size: 1.4rem;
  background-color: transparent;
  position: absolute;
  height: 1rem;
  width: 1rem;
  transform: translateZ(0);
  will-change: left, top;
  margin: -.35rem 0 0 -.4rem;
  line-height: 1rem;
  text-align: center;
  color: #51c2be;
  pointer-events: none;
  z-index: 10000;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none;   /* Chrome/Safari/Opera */
  -khtml-user-select: none;    /* Konqueror */
  -moz-user-select: none;      /* Firefox */
  -ms-user-select: none;       /* Internet Explorer/Edge */
  user-select: none;
  background-blend-mode: multiply;
  mix-blend-mode: multiply;
}
/* Marker container for all master markers */
.master-markers.x-markers, .master-markers.y-markers {
  height: 100%;
  width: 100%;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
}

.master-markers.x-markers {
  flex-direction: column;
}
.master-markers.y-markers {
}

.master-markers.y-markers .y {
  height: 100%;
  border-right: solid #F6F6F6 1px;
}
.master-markers.y-markers .y:first-child {
/*  border-left: solid #F6F6F6 1px;*/
}

.master-markers.x-markers .x {
  border-bottom: solid #F6F6F6 1px;
  width: 100%;
}
.master-markers.x-markers .x:first-child {
/*  border-top: solid #F6F6F6 1px;*/
}

.type-pole {
  pointer-events: none;
  background-color: #FDFDFD;
  font-size: .5rem;
  padding: 0.1rem 0.2rem;
  border: 1px solid #d1d2d4;
}
.type-pole:nth-child(2) {
  position: absolute;
  top: -1px;
  left: -1px;
}
.type-pole:nth-child(3) {
  position: absolute;
  top: -1px;
  right: -1px;
  font-weight: 900;
}
.type-pole:nth-child(4) {
  position: absolute;
  bottom: -1px;
  left: -1px;
}
.type-pole:nth-child(5) {
  position: absolute;
  bottom: -1px;
  right: -1px;
  font-weight: 900; 
}

/* /Dropdowns */

/* Font Suggestions */
/*.font-guide {
  padding: .750rem 0;
}*/
.font-hint {
  border-top: solid 1px #D1D2D4;
  padding: .750rem 5%;
  cursor: default;
  line-height: 1.5;
  height: auto;
}
.font-suggestions {
  border-top: solid 1px #D1D2D4;
  padding: .750rem 5%;
  cursor: default;
  line-height: 1.5;
  opacity: .5;
  transition: all 0.3s ease;
/*  filter: grayscale(100%);*/
}
.font-suggestions:hover {
  opacity: 1;
/*  filter: grayscale(0%);*/
  background-color: #F1F1F2;
}
.font-suggestions > div {
  margin: .375rem 0 .375rem 0;
}
.font-suggestions > div a:hover, .font-suggestions > div a:active, .font-suggestions > div a:focus {
  color: #111111;
}
.font-suggestions .font-feature {
  font-weight: 900;
  margin-bottom: .375rem;
}
.font-suggestions a:link, .font-suggestions a:visited {
  color: #6f6f6f;
}
.font-suggestions .font-feature-more {
  border-top: solid 1px #D1D2D4;
  padding-top: .9rem;
}
.font-suggestions .font-link {
  display: inline-block;
  line-height: 2;
/*  padding: .375rem 0 .3rem;*/
}

/* /Font Suggestions */

/* /Try Section */

/* Newsletter Section */
.newsletter {
  background-color: #51C2BE;
  padding: 1rem 5%;
  background-blend-mode: multiply;
  mix-blend-mode: multiply;
}
.newsletter label {
  padding: 1rem -4px 1rem -4px;
  font-weight: 900;
}
.newsletter input[type=text] {
  margin: 0 -4px;
  border: none;
  -webkit-appearance: none;
  border-radius: 0;
  transition: border 0.16s ease;
  border-left: solid 0 transparent;
}
.newsletter input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
  padding: .9rem 1.1rem;
  margin: 1rem -4px 1rem -4px;
  width: 100%;
  display: inline-block;
  background-color: #111111;
  font-weight: 900;
  text-transform: uppercase;
  font-size: .9rem;
  color: #FEFEFE;
  font-family: "Output Sans";
  border: none;
  -webkit-font-smoothing: antialiased;
  letter-spacing: .02rem;
  transition: background 0.16s ease;
  cursor: pointer;
}
.newsletter input[type=text]:focus {
  border-left: solid .375rem #111;
}
.newsletter input[type=submit]:hover, .newsletter input[type=submit]:active, .newsletter input[type=submit]:focus {
  background-color: #6F6F6F;
}

/* min-width:40rem */
@media (min-width:40rem) {
  .newsletter {
    background-color: #51C2BE;
    padding: 1rem 10%;
  }
  .newsletter input[type=text] {
    width: 70%;
    display: inline-block;
    margin: 0 0;
  }
  .newsletter input[type=submit] {
    width: 30%;
    display: inline-block;
    margin: 1rem -4px 1rem -4px;
  }
}
@media (min-width:60rem) {
  .newsletter p {
    display: inline-block;
    width: 40%;
  }
  .newsletter input[type=text] {
    width: 40%;
    display: inline-block;
    margin: 0 0;
  }
  .newsletter input[type=submit] {
    width: 20%;
    display: inline-block;
    margin: 1rem -4px 1rem -4px;
  }
}
@media (min-width:80rem) {
  .newsletter {
    background-color: #51C2BE;
/*    padding: 1rem 30%;*/
  }
}
/* /min-width:40rem */
/* /Newsletter Section */

/* Footer Section */
.footer {
  display: inline-block;
  font-size: .72rem;
  color: #6F6F6F;
  font-family: "Output Sans";
  background-color: #F1F1F2;

  padding: 5% 5% 5% 5%;
  line-height: 1.5;
  width: 100%;
  opacity: .65;
  transition: all .4s ease;

  -webkit-background-blend-mode: screen;
  -webkit-mix-blend-mode: screen;
}
.footer:hover {
  opacity: .9;
}
.footer .by-line {
  margin-bottom: .2rem;
}
.footer .copyright {
  margin-top: 0rem;
}
.footer .credit-line {

}
@media (min-width:40rem) {
  .footer {
    padding: 5% 10%;
  }
}
@media (min-width:60rem) {
  .footer {
  }
}
@media (min-width:80rem) {
  .footer {
    padding: 5% 10%;
  }
}
/* /Footer Section */

/* Application authentication views */
body.view-signin {
  background: url('/assets/images/productionmap.jpg') no-repeat center center fixed; 
  background-attachment:scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
}
body.view-signin.app {
  background: url('/assets/images/productionmap.jpg') no-repeat center center fixed; 
  background-attachment:scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
.sign-up {
  font-size: .9rem;
  margin-top: 1.2rem;
  line-height: 1.4;
  font-weight: 400;
  display: inline-block;
  text-transform: uppercase;
  font-family: "Output Sans";
}
.sign-up a:link {
  margin-left: .375rem;
  font-weight: 900;
  cursor: pointer;
}
.sign-up a:hover, .sign-up a:focus, .sign-up a:active {
  color: #6f6f6f;
}
.forgot-password a:link {
  color: #51C2BE;
  font-weight: 400;
  display: inline-block;
  font-family: "Output Sans";
}
.forgot-password a:hover, .forgot-password a:focus, .forgot-password a:active {
  color: #6f6f6f;
}


.section-info {
  padding: 10% 5% 10% 5%;
  background-color: #FEFEFE;
  border-top: solid 1px #F1F1F2;
  border-bottom: solid 1px #F1F1F2;
}
body.view-signin.section-info {
  border-top: none;
}

/*Dashboard */ 
.section-info.section-dash {
  border-bottom: none;
  max-width: 70rem;
}
.section-info.section-dash h2 {
  margin-top: 1rem;
  color: #111;
  letter-spacing: .01rem;
  -webkit-font-smoothing: antialiased;
}
.section-info.section-dash h3, .section-info.section-dash h4 {
  margin: .375rem 0 .375rem 0;
}
.section-info.section-dash p {
  margin: .375rem 0 .9rem 0;
}

.section-info.section-dash .project-contain {
  display: inline-block;
  width: 100%;
  margin-bottom: 1.2rem;
  transition: all .16s ease;
}

.section-info.section-dash .project-list .project {
  width: 100%;
  min-height: 8rem;
  border: solid 1px #D1D2D4;
  display: inline-block;
  padding: 5% 5%;
/*  border-top: solid .375rem #D1D2D4;*/
  transition: all .16s ease;
}
.section-info.section-dash .project-list .project:hover {
  transform: translate3d(0, -.375rem, 0);
  border: solid 1px #51C2BE;
  box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
  cursor: pointer;
}

.section-info.section-dash .project-list .new-project.project:hover {
  transform: none;
  color: #008583;
/*  transform: scale(.925, .925);*/
}

.section-info.section-dash .project-list .project-contain:hover {
  box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
}
.section-info.section-dash .project-list .project.new-project {
  position: relative;
  border: dashed 1px #51C2BE;
  min-height: 11.05rem;
  order: 99999;
  color: #51C2BE;
  cursor: pointer;
}
.section-info.section-dash .project-list .project-title {
  display: flex;
}
.section-info.section-dash .project-list .project-title > div {
}
.section-info.section-dash .project-list .project-title .project-detail-info {
  flex: 2 70%;
}
.section-info.section-dash .project-list .project-title .project-detail-functionality {
  text-align: right;
  flex: 2 30%;
  font-weight: 300;
  cursor: pointer;
}
.section-info.section-dash .project-list .project-title .project-detail-functionality .project-delete {
  color: #d1d2d4;
  transition: color .16s ease;
  width: auto;
  display: inline-block;
}
.section-info.section-dash .project-list .project-title .project-detail-functionality .project-delete:hover {
  color: #EA8752;
}
.section-info.section-dash .project-list .project-title.new-project-title {
  color: #51C2BE;
}
.section-info.section-dash .project-list .project.new-project:after {
  width: 4rem;
  height: 4rem;
  position: absolute;
  bottom: 50%;
  left: 50%;
  margin-left: -2rem;
  margin-bottom: -2.3rem;
  line-height: 1;
  content: '+';
  font-size: 3rem;
  text-align: center;
  display: inline-block;
}

.section-info.section-dash .project-list .project-title {
  font-weight: 300;
  font-family: "Output Sans";
  font-size: .9rem;
  color: #111;
  padding: 1rem 5%;
  border: solid 1px #D1D2D4;
  margin-top: -1px;
}
.section-info.section-dash .project-list .project-metadata p  {
  margin: .15rem 0 0 0;
  font-size: .8rem;
}
.section-info.section-dash .project-list .project-metadata p.text-content-truncated  {
    text-overflow: ellipsis; /* will make [...] at the end */
    width: 90%; /* change to your preferences */
    white-space: nowrap; /* paragraph to one line */
    overflow: hidden; /* older browsers */
    border-bottom: solid #F1F1F2 1px;
    padding-bottom: .7rem;
    margin-bottom: .9rem;
}

.section-info.section-dash .project-list .project .project-info {
  font-weight: 800;
  font-family: "Output Sans";
}
.section-info.section-dash .project-list .project .project-actions > a {
  margin-top: .375rem;
  width: 100%;
}

.section-info.section-dash .instructions {
  margin-top: 2.2rem;
  border-top: solid #F1F1F2 1px;
  padding-top: 2.2rem;
}

.tile-sheet {
  display: flex;
  flex-wrap: wrap;
}
.tile-sheet h3 {
  margin-bottom: .375rem;
}
.tile-sheet h3, .tile-sheet p {
  width: 100%;
}
.tile {
  flex: 1 100%;
  padding: 1.2rem 0 1.2rem 0; 
  border-top: solid #F1F1F2 1px;
}
.tile img {
  width: 100%;
  border: solid #F1F1F2 1px;
}

.section-info.color-tile.primary-info {
  background-color: #51C2BE;
  border: none;
  background-blend-mode: multiply;
  mix-blend-mode: multiply;

  /* Try overlayigna sublte darkness gradient to make things more dynamic? */
/*  animation-duration: 60s;
  animation-fill-mode: both;
  animation-name: colorShift;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;*/
}

/* TODO: Rename to something else for animation focused things? */
/*.color-tile {
  position: relative;
  overflow: hidden;
}*/
/*.color-tile:after {
  font-family: system, -apple-system, ".SFNSDisplay-Regular", "Helvetica Neue", "Lucida Grande";
  position: absolute;
  font-size: 4vmax;
  padding: 2vmax;
  top: 50%;
  left: 50%;
  content: 'HELLO';
  border: solid #FEFEFE 2px;
  border-radius: 2px;
  letter-spacing: 0.2rem;
  min-width: 4vmax;
  color: #FEFEFE;
  animation-duration: 10s;
  animation-fill-mode: both;
  animation-name: migrate;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}*/
/*
@keyframes migrate {
  0% {
    transform: translate3d(0, 200%, 0);
  }
  100% {
    transform: translate3d(0, -200%, 0);
  }
}*/

.section-info.color-tile.primary-info.red { 
  /* background-color: #e2674f; */;
  background: linear-gradient(35deg, #ea8752 0%,#e2674f 100%);
}
.section-info.color-tile.primary-info.cyan { 
/*  background-color: #aedfe3;*/
  background: linear-gradient(35deg, #aedfe3 0%,#BAE5F2 100%);
}
.section-info.color-tile.primary-info.navy { 
/*  background-color: #1d5671;*/
  background: linear-gradient(35deg, #1d5671 0%,#287A9B 100%);
}
.section-info.color-tile.primary-info.yellow { 
/*  background-color: #f1b41b;*/
  background: linear-gradient(35deg, #f1b41b 0%,#FCC81E 100%);
}
.section-info.color-tile.primary-info.typeshift-blue { 
/*  background-color: #f1b41b;*/
  background: linear-gradient(35deg, #51C2BE 0%,#1d5671 100%);
}

.section-info.color-tile.primary-info h1 {
  color: #FEFEFE;
}
.section-info.color-tile.primary-info p {
  color: #FEFEFE;
  opacity: .92;
/*  margin-bottom: 0;*/
}
.section-info h1 {
  font-family: "Brace-Thin";
  font-size: 2.6rem;
  text-transform: uppercase;
  line-height: 1;
  font-weight: 100;
  color: #51C2BE;
  margin: 0;
}
.section-info h1.marketing {
  font-family: "Brace-Thin";
  font-size: 2.3rem;
  text-transform: capitalize;
  line-height: 1.2;
  font-weight: 100;
  color: #51C2BE;
  margin: 0 0 1.4rem 0;
  text-align: center;
}
.section-info h2 {
  font-family: "Brace-ExtraBold";
  font-size: 1.35rem;
  line-height: 1.25;
  letter-spacing: .01rem;
  color: #51C2BE;
  -webkit-font-smoothing: antialiased;
}
.section-info h3 {
  font-family: "Output Sans";
  font-size: 1.4rem;
  font-weight: 400;
  color: #51C2BE;
}
.section-info h2.marketing, .section-info h3.marketing {
  text-align: center;
}
.section-info p {
  margin: .9rem 0rem;
  font-size: .9rem;
  line-height: 1.4;
  font-weight: 400;
  color: #111111;
  font-family: "Output Sans";
}
.section-info p.marketing {
  margin: .9rem 0rem;
  font-size: .9rem;
  line-height: 1.5;
  font-weight: 400;
  color: #111111;
  font-family: "Output Sans";
  text-align: center;
}
.section-info p.marketing.thanks {
  margin-top: 3rem;
  position: relative;
}
.section-info p.marketing.thanks:before {
  width: 2rem;
  height: 1px;
  position: absolute;
  top: -1.6rem;
  left: 50%;
  margin-left: -1rem;
  content: '';
  background-color: #51C2BE;
}

p.marketing.divide-above {
  margin-top: 5rem;
  position: relative;
}
p.marketing.divide-above:before {
  width: 100%;
  height: 2.8rem;
  position: absolute;
  top: -4rem;
  left: 0%;
  content: '';
  background-image: url('/assets/images/compass.svg');
  background-repeat: no-repeat;
  background-size: 100% 100%;
/*  background-position: 50% 50%;*/
}
p.marketing.divide-below {
  margin-bottom: 3.8rem;
  position: relative;
}
p.marketing.divide-below:before {
  width: 100%;
  height: 3.3rem;
  position: absolute;
  bottom: -5.6rem;
  left: 0%;
  content: '';
  background-image: url('/assets/images/compass.svg');
  background-repeat: no-repeat;
  background-size: 100% 100%;
/*  background-position: 50% 50%;*/
}

.compass-below {
  position: relative;
}
.compass-below.blue {
  color: #51C2BE;
}
.compass-below.blue:before, .compass-below.blue:after {
  border: solid #51C2BE 1px;
  top: 11.5rem;
}
p.marketing.compass-below {
  margin-bottom: 3.8rem;
}
.compass-below:before {
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  bottom: -3.75rem;
  left: 50%;
  margin-left: -1.25rem;
  content: '⚙';
  font-size: 0.9rem;
 /* line-height: 2.625rem;*/
  line-height: 2.7rem;
  border: solid #FEFEFE 1px;
  border-radius: 100%;
  display: inline-block;

  animation-duration: 3s;
  transform: rotate(0deg);
  animation-fill-mode: both;
  animation-name: spin;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;

  background-blend-mode: screen;
  mix-blend-mode: screen;
}
.compass-below:after {
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  bottom: -3.75rem;
  left: 50%;
  margin-left: -1.25rem;
  content: '';
  line-height: 2.625rem;
  border: solid #FEFEFE 1px;
  border-radius: 100%;
  display: inline-block;

  animation-duration: 7s;
  transform: rotate(0deg);
  animation-fill-mode: both;
  animation-name: rotate;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}

.section-info.section-invite .button {
/*  background-color: #111;*/
  color: #FEFEFE;
}
.section-info.section-invite .button:hover {
  background-color: transparent;
  color: #51c2be;
}

.info-account {
  font-size: .9rem;
  line-height: 1.4;
  font-weight: 900;
  color: #111111;
  margin: 0 0 2rem 0;
  font-family: "Output Sans";
}
.section-account h2 {
  line-height: 1.4;
  font-weight: 800;
  font-size: 1.2rem;
  font-family: "Output Sans";
}
.section-info h1.over-cta {
  margin-bottom: .9rem;
  margin-left: -2.375rem;
  opacity: 0;
  transition: all 0.4s ease;
}
.section-info h1.over-cta.loaded {
  opacity: 1;
  margin-left: 0;
}

.section-info.feature-tutorial {
  line-height: 1.4;
  font-size: .9rem;
  font-family: "Output Sans";
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: right;
}

.section-info .sub-nav-content {
  position: relative;
}
.section-info .sub-nav-content > * {
  position: absolute;
  top: 0;
  transition: transform 0.3s ease, opacity 0.1s linear;
}

/* Section toggles */
.feature-tutorial.content-intro .content-intro,
.feature-tutorial.content-text-elements .content-text-elements,
.feature-tutorial.content-text-styles .content-text-styles,
.feature-tutorial.content-font-selector .content-font-selector,
.feature-tutorial.content-variable-fonts .content-variable-fonts,
.feature-tutorial.content-opentype .content-opentype,
.feature-tutorial.content-code .content-code,
.feature-tutorial.content-context .content-context,
.feature-tutorial.content-shortcuts .content-shortcuts {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.sub-nav-section.content-intro,
.sub-nav-section.content-text-elements,
.sub-nav-section.content-text-styles,
.sub-nav-section.content-font-selector,
.sub-nav-section.content-variable-fonts,
.sub-nav-section.content-opentype,
.sub-nav-section.content-code,
.sub-nav-section.content-context,
.sub-nav-section.content-shortcuts {
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 1rem, 0);
}

.section-info.feature-tutorial .sub-nav {
  flex: 1 100%;
  width: 100%;
  margin: .9rem 0;
}
.section-info.feature-tutorial .sub-nav-section-header {
  /*-webkit-font-smoothing: antialiased;*/
  font-family: "Brace-Thin";
  font-size: 2.2rem;
  margin-bottom: 1.7rem;
  padding-bottom: .9rem;
  border-bottom: solid 1px #d1d2d4;
}
.section-info.feature-tutorial .sub-nav-section-label {
  font-size: .9rem;
  font-family: "Output Sans";
  font-weight: 800;
  padding-bottom: 0rem;
}
.section-info.feature-tutorial .sub-nav-section p.sub-nav-section-after-label {
  margin-top: .375rem;
}
.section-info.feature-tutorial .sub-nav ul {
  margin: 0;
  padding: 0;
}
.section-info.feature-tutorial .sub-nav li {
  list-style: none;
  margin-bottom: .7rem;
  display: inline-block;
}
.section-info.feature-tutorial .sub-nav li div {
  color: #111;
  cursor: pointer;
  background-color: #F1F1F2;
  padding: .25rem .65rem .1rem .65rem;
  border-radius: 2px;
  font-weight: 300;
  width: auto;
}
.section-info.feature-tutorial .sub-nav li div:hover {
  color: #51C2BE;
}
.section-info.feature-tutorial .sub-nav li div.active {
  color: #51C2BE;
  font-weight: 800;
  position: relative;
}
.section-info.feature-tutorial .sub-nav-content {
  flex: 1 100%;
  align-self: top;
  width: 100%;
  max-width: 40rem;
}
.section-info.feature-tutorial .sub-nav-content img {
  max-width: 100%;
  border: solid 1px #d1d2d4;
  margin: .375rem 0;
}
.section-info.feature-tutorial .sub-nav-content p {
  line-height: 1.4666666; 
  font-weight: 300;
}
.section-info.feature-tutorial .sub-nav-content p.paragraph-intro {
  font-size: 1.1rem;
  font-weight: 300;
  line-height: 1.4666666; 
}



.faqs {
  padding: 0;
}
.faqs li {
  list-style: none;
  padding: 0;
  margin: 1.4rem 0;
  font-size: .9rem;
  line-height: 1.4;
  font-weight: 200;
  color: #111111;
  font-family: "Output Sans";
}
.faqs li .faq-question {
  font-weight: 900;
  margin: 0 0 .375rem 0;
}
.faqs li .faq-answer {
  font-weight: 400;
}


/* Account section for authenticated users */
.section-account {
  margin-top: 3rem;
}
.section-account .nav-bar {
  border-bottom: solid #D1D2D4 1px;
  margin: 0 5% 0% 5%;
}
.section-account .nav-bar a:link, .section-account .nav-bar a:visited {
  display: inline-block;
  margin: 0 5% 0 0;
  margin-bottom: .9rem;

  font-size: 1rem;
  line-height: 1.4;
  font-weight: 800;
  font-family: "Output Sans";
}
.section-account .nav-bar a:hover {
  color: #111111;
}

/* Toggle visibility for sections in the dashboards */
.account-area, .projects-area, .billing-area {
  display: none;
}
.projects .projects-area {
  display: inline-block;
  width: 100%;
}
.account .account-area {
  display: inline-block;
}
.billing .billing-area {
  display: inline-block;
}

.nav-bar.account .tab-account, .nav-bar.projects .tab-projects, .nav-bar.billing .tab-billing  {
  color: #111111;
  position: relative;
}

/* Alerts */
.flash {
  font-weight: 400;
  background-color: #F1F1F2;
  font-size: .9rem;
  line-height: 1.5;
  font-family: "Output Sans";
  border-left: solid #EA8752 0.375rem;
  color: #EA8752;
  padding: .375rem .375rem .375rem .575rem;
  margin: .9rem 0rem;
  max-width: 26rem;
}
.flash.global {
  border: none;
  color: #111;
  background-color: #F1F1F2;
  padding: .9rem 5% .9rem 5%;
  max-width: 100%;
  margin: 0;
  position: relative;
/*  border-bottom: solid 1px #FEFEFE;*/
}
/*.flash.global:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: .375rem;
  background-color: #EA8752;
  height: 100%;
}*/
/* /alerts */

/* min-width:40rem */
@media (min-width:40rem) {
  .section-info {
    padding: 10% 10% 10% 10%;
    background-color: transparent;
  }
  .section-info h1.marketing {
    font-size: 2.6rem;
  }
  .section-info.primary-info {
    background-color: #FEFEFE;  
  }
  .section-info p.marketing {
    margin: 1rem 15%;
  }
  .section-account .nav-bar {
    margin: 0% 10% 0% 10%;
  }
  .tab-contents {
    padding: 3rem 10% 10% 10%;
    background-color: #F1F1F2;
  }

  /* Dashboard */
  .section-info.section-dash .project-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: left;
    flex-flow: row wrap;
    align-content: flex-end;
    width: 100%;
  }
  .section-info.section-dash .project-list .project-contain {
    width: 30%;
    margin: .7rem 3% .7rem 0;
  }
  /*.section-info.section-dash .project-list .project-contain:nth-child(3n+2) {
    margin: .7rem 2.5%;
  }*/
  /*.section-info.section-dash .project-list .project-contain:last-child {
    margin-left: 2.5%;
  }*/

  .tile {
    flex: 2 40%;
    padding: 1.2rem 0 1.2rem 0; 
  }
  .tile:nth-of-type(odd) {
    margin-right: 2.5%;
  }
  .tile:nth-of-type(even) {
    margin-left: 2.5%;
  }
  form.user-form label {
    display: block;
  }
  .center-form {
    padding: 10% 12.5%;
    background-color: #fefefe;
    margin: 0 auto;p
    border: solid #F1F1F2 1px;
  }
  .compass-below:before, .compass-below:after {
    bottom: -4rem;
  }
  .flash.global {
    padding: .9rem 10% .9rem 10%;
  } 
}
/* /min-width:40rem */
/* min-width:60rem */

/* min-width: 60rem */
@media (min-width: 60rem) {
  .section-info.section-dash {
    padding: 3% 0% 7.5% 10%;
    width: 60%;
    display: inline-block;
  }
  .section-info.section-invite {
    padding: 3% 10% 7.5% 5%;
    width: 40%;
    margin-left: -4px;
    display: inline-block;
    vertical-align: top;
    border-bottom: none;
  }
  .section-info.section-invite h3 {
    margin: 0;
  }
  .section-info.feature-tutorial .sub-nav {
    flex: 0 25%;
    width: 25%;
    margin-top: 3.85rem;
  }
  .section-info.feature-tutorial .sub-nav-content {
    flex: 1 75%;
    width: 75%;
  }
  .section-info.feature-tutorial .sub-nav ul { 

  }
  .section-info.feature-tutorial .sub-nav li {
    display: block;
  }
  .section-info.feature-tutorial .sub-nav li div {
    display: inline-block;
    background-color: transparent;
  }
  .section-info.feature-tutorial .sub-nav li div:hover {
   /* background-color: #F1F1F2;*/
  }
  .section-info.feature-tutorial .sub-nav li div.active {
   /* background-color: #F1F1F2;*/
  }
  .section-info.feature-tutorial .sub-nav li div:after {
    color: #111;
    cursor: pointer;
    width: 0rem; 
    height: 1px;
    position: absolute; 
    top: 50%;
    margin-top: -2px;
    left: -2.4rem; 
    content: ''; 
    background-color: #d1d2d4;
    opacity: 0;
    transition: opacity 0.16s ease, width 0.3s ease;
  }
  .section-info.feature-tutorial .sub-nav li div.active:after {
    width: 1.4rem; 
    opacity: 1;
    background-color: #d1d2d4;
  }
}

/* min-width:80rem */
@media (min-width:80rem) {
  .section-info {
    padding: 7.5% 10% 7.5% 10%;
  }
  .section-info.text-column {
    padding: 7.5% 20% 7.5% 20%;
  }
  .section-info.color-tile.primary-info {
    padding: 7.5% 20% 7.5% 20%;
  }
  form.user-form label {
    margin: 0 .750rem .375rem 0;
    display: block;
  }
  .center-form {
    max-width: 75%;
    padding: 7.5% 7.5%;
    background-color: #fefefe;
    margin: 0 auto;
  }
  .section-info.section-dash .project-list .project-contain {
    
  }
  .section-info.section-dash .project-list .project-contain:nth-child(3n+2) {
    
  }
}
/* /min-width:60rem */


/* Elements */
button {
  border: none;
  -webkit-appearance: none;
}
.button {
  padding: .375rem .7rem .3rem .7rem;
  border-radius: 2px;
  max-width: 20rem;
  font-family: "Output Sans";
  font-size: .9rem;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  background-color: #51C2BE;
  color: #111111;
  cursor: pointer;
  display: inline-block;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: background 0.16s ease, color 0.16s ease;
}
.button:hover, .button:focus, .button:active {
  background-color: #6f6f6f; /* #51C2BE */ /* EA8752 */
  color: #FEFEFE;
}
.instance-controls .button.primary {
  background-color: #A7A9AB;
  color: #D1D2D4;
  pointer-events: none;
}
/* TODO: This should be disabled when the font already exists */
.confirmed .instance-controls .button.primary {
  background-color: #51C2BE;
  color: #111111;
  pointer-events: all;
}
.confirmed .instance-controls .button.primary:hover, .confirmed .instance-controls .button.primary:focus, .confirmed .instance-controls .button.primary:active {
  background-color: #6f6f6f; /* #51C2BE */ /* EA8752 */
  color: #FEFEFE;
}
.button.large.double {
  width: 45%;
  display: inline-block;
  color: #FEFEFE;
}
.button.large.double {
  margin: 0 2% 0 0;
}
.button.large.double.second {
  margin: 0 0 0 2%;
  background-color: #111111;
  color: #FEFEFE;
}
.button.large.double.second:hover {
  background-color: #6f6f6f;
}

.button.tiny {
  padding: .29rem .6rem .28rem;
  width: auto;
  letter-spacing: .07rem;
  background-color: #51C2BE;
  color: #FEFEFE !important;
  margin: .375rem 0 0 0;
  font-size: .67rem;
}
.button.tiny:hover {
  background-color: #6f6f6f;
  color: #FEFEFE;
}
.button.medium {
  padding: .6rem 1.4rem .56rem;
  width: auto;
  letter-spacing: .05rem;
  border: solid #51C2BE 2px;
}
.button.large {
  padding: .9rem 1.1rem .83rem 1.1rem;
  width: 100%;
  letter-spacing: .05rem;
}
form { 
  margin: 1rem 0;
}
label {
  display: inline-block;
  font-family: "Output Sans";
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0 0 .375rem 0;
}
input[type=text], input[type=password], input[type=email] {
  -webkit-appearance: none;
  padding: .9rem 1.1rem;
  width: 100%;
  display: inline-block;
  outline: none;
  font-size: .9rem;
  font-family: "Output Sans";
  border: solid #D1D2D4 1px;
  border-radius: 0;
}
.input-group, .button-group {
  width: 100%;
  display: block;
}

/* Forms */
form.user-form { 
  margin: 1rem 0;
}
form.user-form label {
  margin: 0 .750rem .375rem 0;
  display: block;
}
form.user-form input[type=text], form.user-form input[type=password], form.user-form input[type=email] {
  padding: .750rem .750rem;
  margin: 0 0 1rem 0;
  max-width: 26rem;
  display: inline-block;
}
form.user-form input[type=text]:focus, form.user-form input[type=password]:focus, form.user-form input[type=email]:focus {
  border: solid #51C2BE 1px;
}

/* Application */
/* Styles for inside the main application */
.logged-in {
/*  position: relative;*/
}
.logged-in nav {
  display: none; /* TEMPORARY, maybe this takes the place of the normal file, edit, etc. menu bar */
}
.logged-in .bar1 {
}
.logged-in .bar3 {
}
/* Do we need this? */
nav .bar3 a div {
  border: solid #444 2px;
  padding: .49rem .9rem;
  border-radius: 2px;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
}

/* For the more complex nav in the dashboard, handle the toggle */
nav .bar3 a.toggle-closed {
  display: none;
}
nav .bar3.open {
  position: relative;
}
nav .bar3.open a.toggle-closed {
  display: block;
}
nav .bar3.open a.toggle-closed div {
  border: solid #51C2BE 2px;
  color: #51C2BE;
}
nav .bar3.open a.toggle-open {
  display: none;
}

nav .bar3 .dropdown-list {
  opacity: 0;
  position: absolute;
  display: block;
  text-align: left;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 5.5rem;
  border-top: none;
  border-radius: 0 0 2px 2px;
  box-shadow: 0 10px 80px -40px rgba(0,0,0,.4);
  pointer-events: none;
  transform: translate3d(0, -1rem, 0);
  transition: opacity .16s ease, transform .16s ease;
}
nav .bar3.open .dropdown-list {
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(0, 0, 0);
}
nav .bar3 .dropdown-list .dropdown-item {
  background-color: #FEFEFE;
  padding: .9rem 1.2rem;
  border-bottom: solid 1px #F1F1F2;
  border-left: solid 1px #F1F1F2;
  border-right: solid 1px #F1F1F2;
  display: inline-block;
  width: 100%;
}
nav .bar3 .dropdown-list .dropdown-item:first-child {
  border-top: solid 1px #F1F1F2;
}
nav .bar3 .dropdown-list .dropdown-item:hover {
  background-color: #51c2be;
  color: #FEFEFE;
}
nav .bar3 .dropdown-list .dropdown-item {
  transition: none;
}
nav .bar3 .dropdown-list .dropdown-item.secondary {
  color: #6f6f6f;
}

.logged-in a:link, a:visited {
  color: #51C2BE;
}
.logged-in a:hover, a:focus, a:active {
  color: #51C2BE;
}
.section-info p a:link, .section-info p a:visited {
  color: #008583;
}
.section-info p a:focus, .section-info p a:hover, .section-info p a:active {
  color: #51C2BE;
}



/* Settings Bars */
.settings-main {
  width: 20%;
  min-width: 16.5rem;
  border-right: solid #D1D2D4 1px;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #FEFEFE;
  height: 100%;
  z-index: 100;
  overflow-y: scroll;
  overflow: visible; /* Probably a better way to do this */

  transition: transform 0.16s ease;
  will-change: transform;
}

.settings-main .settings-module.collapsed:nth-child(4) .settings-module-title {
  border-bottom: none;
}
.settings-secondary  .settings-module.collapsed:nth-of-type(2) .settings-module-title {
  border-bottom: none;
}

.settings-secondary {
  width: 20%;
  min-width: 16.5rem;
  border-left: solid #D1D2D4 1px;
  position: fixed;
  right: 0;
  top: 0;
  background-color: #FEFEFE;
  height: 100%;
  z-index: 100;
  overflow-y: scroll;
  transition: transform 0.16s ease;
  will-change: transform;
}

.settings-main.closed {
  transform: translate3d(-100%, 0, 0);
  -webkit-transform: translate3d(-100%, 0, 0);
  overflow: visible;
}
.settings-main.closed .toggle-shut {
  transform: translate3d(3.35rem, 0, 0);
  -webkit-transform: translate3d(3.35rem, 0, 0);
  opacity: .2;
}
.settings-secondary.closed {
  transform: translate3d(100%, 0, 0);
  -webkit-transform: translate3d(100%, 0, 0);
  overflow: visible;
}
.settings-secondary.closed .toggle-shut {
  transform: translate3d(-3.35rem, 0, 0);
  -webkit-transform: translate3d(-3.35rem, 0, 0);
  opacity: .2;
}
/* /Settings Bars */

/* Toggle Button */
.toggle-shut {
  color: #D1D2D4;
  font-family: "Output Sans";
  font-weight: 800;
  font-size: .7rem;
  border: solid #D1D2D4 2px;
  padding: .375rem .375rem .3rem .375rem;
  margin: .7rem;
  width: auto;
  cursor: pointer;
  display: inline-block;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.toggle-shut:hover, .toggle-shut:focus, .toggle-shut:active {
  color: #51C2BE;
  border: solid #51C2BE 2px;
}
.settings-main .toggle-shut {
  position: absolute;
  right: 0;
}
/* /Toggle Button */


/* Preview Area */
.preview {
  padding: 2rem 0;
  text-align: center;
  height: 100%;
}
.preview textarea {
    border: solid 1px transparent;
    width: 100%;
    display: block;
    margin: 0 auto;
}
.preview textarea:hover {
/*  border: dashed 1px rgba(255,255,255,.2);*/
}
.preview textarea.active {
  border: dashed 1px #DDD;
  background-color: rgba(0, 0, 0, .05);
  outline: none;
}
.preview .type-node-container {
  position: relative;
}

/* Preview Area – When dragging */
.preview.drag-and-dropping {

}
.preview.drag-and-dropping .type-node-container textarea {
  border: none;
}
.preview.drag-and-dropping .type-node-container .drop-zone {
/*  display: none;*/
}

/* Preview Area – Drag and drop */
.drop-zone {
  height: 3rem;
  position: relative;
  display: none;
  width: 100%;
  margin: -1.5rem 0;
  cursor: pointer;
}
.drop-zone:after {
  background-color: #d1d2d4;
  content:"";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
}
.drag-and-dropping .drop-zone {
  display: inline-block;
}
.above-hover .drop-zone.zone-above:after {
  background-color: #EA8752;
  height: 3px;
  margin-top: -1px;
}
.below-hover .drop-zone.zone-below:after {
  background-color: #EA8752;
  height: 3px;
  margin-top: -1px;
}
/*Cute little marker*/
/*.above-hover .drop-zone.zone-above:before, .below-hover .drop-zone.zone-below:before {
  background-color: #EA8752;
  content:"";
  position: absolute;
  top: 0;
  margin-top: 1.22rem;
  left: -.32rem;
  transform: rotate(45deg);
  width: .6rem;
  height: .6rem;
}*/

/* For now, hide all the bottom drop zone for each element except for the very last one */
.preview.drag-and-dropping .type-node-container .drop-zone.zone-below {
  display: none;
}
.preview.drag-and-dropping .type-node-container:last-child .drop-zone.zone-below {
  display: inline-block;
}



/* Preview Area – Direct Type Manipulation */
.typeNode.active.modifyingTextElement {
  border: solid transparent 1px;
  
  border-left: solid #EA8752 1px;
  border-right: solid #EA8752 1px;

  position: relative;
  background-color: rgba(0,0,0,0); 
}
/*.typeNode.modifyingTextElement:after {
  content: 
`↖ ↑ ↗
← · →
↙ ↓ ↘`;
  position: absolute;
  font-family: Output Sans;
  font-size: .75rem;
  font-weight: 400;
  top: 50%;
  right: 50%;
  width: auto;
  height: auto;
}*/

/* Temp styles to be overwritten by JS */
.preview textarea {
  font-family: system, -apple-system,
      ".SFNSDisplay-Regular", "Helvetica Neue", "Lucida Grande";
  font-weight: 400;
  font-size: inherit;
  padding: 5% 2.5%;
  outline: none;  
}
.preview textarea { 
  resize: none;
  overflow: hidden;
  min-width: 5rem;
  min-height: 1.5rem;
  cursor: text;
  background-color: transparent;
/*  max-height: 8rem;*/
} 
/* min-width:40rem */
@media (min-width:40rem) {
  .preview {
    padding: 2rem 0;
  }
  nav .bar3 .dropdown-list {
    /*width: 20%;*/
  }
}
/* /min-width:40rem */

/* Project Name */
.project-name {
  margin: 1.25rem 5%;
  font-family: "Output Sans";
  font-size: .9rem;
  font-weight: 800;
  border: none;
  outline: none;
}
.project-info:after {
  content: 'Saved';
  position: absolute;
  font-family: Output Sans;
  font-size: .75rem;
  font-weight: 400;
  top: 1.35rem;
  right: 3.2rem;
  width: auto;
  height: auto;
  opacity: 0;
  color: #111;
  text-transform: uppercase;
  letter-spacing: .02rem;
  transition: color .16s ease, opacity .16s ease;
}
body.saved .project-info:after {
  opacity: 1;
  color: #51C2BE;
}

body.offline .project-info:after {
  color: #EA8752;
  content: 'Offline';
  opacity: 1;
}

/* /Project Name */

/* Project Controls */
.settings-main .project-controls {
  border-top: solid 2px #D1D2D4;
  background-color: #F1F1F2;
  padding: .9rem 5%;
}
.settings-main .project-controls .insert {
  width: auto;
  display: inline-block;
  text-transform: capitalize;
  border-radius: 0;
  border: solid 2px #47b9b5;
  transition: none;
}
/* TODO: Clear up difference of classnames between dropdown arrow and arrow; */
.settings-main .project-controls .insert .arrow {
  display: inline-block;
  vertical-align: middle;
  margin-left: .375rem;
  margin-top: -.15rem;
}
.settings-main .project-controls .insert:hover {
  border: solid 2px #6f6f6f;
}
.settings-main .project-controls .insert:hover svg polygon {
  fill: #FEFEFE;
}
.serif-type {
  font-family: "Hoefler Text", Baskerville, Georgia, serif;
  font-size: 1rem;
  letter-spacing: .4px;
}
.bold-type {
  /*font-family: "Brace-ExtraBold";*/ /* Generalize this class later! */
  font-family: 'Output Sans';
  font-weight: 800;
}
.bold-type.feedback:hover {
  color: #EA8752;
}
p.bold-type { 
  /*font-family: "Brace-ExtraBold";*/ /* Generalize this class later! */
  font-family: 'Output Sans';
  font-weight: 800;
}
.bold-type.download {
  transform: rotate(90deg);
  display: inline-block;
}
.settings-main .project-controls .insert:hover {
  background-color: #6f6f6f;
  color: #fefefe;
}
/* /Project Controls */

/* Settings Modules */
.settings-module {
  border-top: solid 2px #D1D2D4;
}
.settings-module .settings-container {
  min-height: 0.9rem;
  background-color: #F1F1F2;
}
.settings-module.collapsed .settings-container {
  min-height: 0;
}
.settings-module.collapsed .settings-module-functionality {
  height: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
}
.settings-module-title {
  border-bottom: solid 2px #D1D2D4;
  padding: .7rem 5% .6rem 5%;
  color: #111111;
  font-weight: 800;
  font-family: "Output Sans";
  font-size: .9rem;
  position: relative;
  width: 100%;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.category-toggle {
  position: absolute;
  right: 10%;
  font-weight: 400;
  font-size: .5rem; /* Temporary */
  margin-top: .17rem;
}

.settings-module-functionality {
  font-family: "Output Sans";
  font-size: .7rem;
  overflow: visible;
  font-weight: 400;
  max-height: 80rem;
  min-height: 0;

  transition: transform .1s ease;
  will-change: transform;
}
.hidden {
  display: none;
  height: 0;
  pointer-events: none;
}

.settings-module-functionality.element {
  background-color: #F1F1F2;
}
.settings-module-functionality.element.no-elements {
  background-color: #FEFEFE;
  line-height: 1.5;
  color: #51C2BE;
  font-weight: 800;
}

/* List Specific Styles */
/* Drag and drop */
li.placeholder {background: rgb(255,240,120);}
li.placeholder:before {
  content: "Drop here";
  color: rgb(225,210,90);
}

.settings-module-functionality.list {
  background-color: #F1F1F2;
  margin: 0;
  max-height: 17.5rem;
  overflow-y: scroll;
}
.settings-module-functionality.list > div {
  background-color: #FEFEFE;
  border-bottom: solid #E6E7E8 1px;
  cursor: pointer;
  position: relative;
}
.settings-module-functionality.list > div:nth-child(even) {
  background-color: #F9FAFA;
}
.settings-module-functionality.list .class-name-set {
  padding: .7rem 5%;
}

/* Dropzone*/
.settings-module-functionality.list > div input {
  margin: 0;
  background: transparent;
  border: none;
  outline: none;
  cursor: pointer;
  pointer-events: none;
  border-bottom: solid transparent 1px;
  width: 65%;
}
.settings-module-functionality.list > div > div {
/*  transition: opacity 0.16s ease;*/
}
.settings-module-functionality.list > div > div:hover {
/*  opacity: .7;*/
}
/* If the list item is active, then it’s selectable */
.settings-module-functionality.list > div.true input {
  pointer-events: all;
}
/* If the list item is active, then it’s selectable */
.settings-module-functionality.list > div.true input:focus {
  border-bottom: solid rgba(0,0,0,.175) 1px;
}
.settings-module-functionality.list > div:hover .delete-element, .settings-module-functionality.list > div:hover .duplicate-element {
  opacity: .2;
}
.delete-element, .duplicate-element {
  color: #111111;
  position: absolute;
  background-color: rgba(0,0,0,.1);
  top: 0;
  right: 0;
  font-size: .9rem;
  opacity: 0;
  padding: .65rem .8rem;
}
.duplicate-element {
  right: 2.3rem;
}
.duplicate-element svg {
  width: 14px;
  vertical-align: middle;
  margin-top: -2px;
}
.settings-module-functionality.list > div .delete-element:hover, .settings-module-functionality.list > div .duplicate-element:hover {
  opacity: 1;
  background-color: rgba(0,0,0,.05);
}
.delete-element > div, .duplicate-element > div {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
/*  transform: scale(1, 1);*/
  transition: transform 0.16s ease, background 0.16s ease, color 0.16s ease;
}
.delete-element:hover > div {
/*  transform: scale(.8, .8);*/
}
.settings-module-functionality.list > *:last-of-type {
  margin-bottom: .9rem;
}
/* TODO: Come up with a better classname than this one! */
.settings-module-functionality.list > div.true, .settings-module-functionality.list > *.true {
  background-color: #51C2BE;
}




/* Code Section */

.settings-module-functionality.code {
/*  border-bottom: solid #E6E7E8 1px;*/
}
.settings-module-functionality.code > textarea { 
  padding: .7rem 5%;
  width: 100%;
  height: 10.5rem;
  background-color: #FAFBFB;
  cursor: text;
  display: inline-block;
  overflow-x: hidden;
  line-height: 1.5;
  font-family: "Output Sans";
  font-size: .7rem;
  outline: none;
  border: none;
  resize: none;
}
.settings-module-functionality.list .class-name-set:before {
/*  content: '{ }';
  font-size: .7rem;
  color: #111;
  font-weight: 300;
  position: absolute;
  top: .07rem;
  bottom: 0;
  left: -1.2rem;*/
  pointer-events: none;
}
.settings-module-functionality.download {
  margin: .9rem 5%;
}
.settings-module-functionality.download .button {
  text-transform: capitalize;
}



/* Bottom Panel Section */

.settings-main .bottom-panel-fixed { /* Temporary for getting user feedback */
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
.settings-module-functionality.suggest {
  margin: .9rem 5%;
  font-weight: 400;
  font-size: .9rem;
  border-top: solid #F1F1F2 1px;
  padding-top: .9rem;
}
.settings-module-functionality.suggest a:link {
  color: #EA8752;
}
.settings-module-functionality.suggest a:visited {
  color: #EA8752;
}
.settings-module-functionality.suggest a:hover {
  color: #51C2BE;
}
.settings-module-functionality.suggest:hover .emoji-type {
  
}
.emoji-type {
  font-size: 1.3rem;
  margin-right: .375rem;
  vertical-align: middle;
  display: inline-block;
}
.settings-module-functionality.information {
  margin: .9rem 5%;
  background-color: #FEFEFE;
}

.functionality-name {
  margin: 0 .7rem .25rem 0;
  display: inline-block;
}
.functionality-name.compact {
  margin: 0;
}
.context-information {
  margin: .7rem 0;
  line-height: 1.4;
}
.context-information span:first-child {
  font-weight: 800;
}



/* Settings Module Features */

.settings-module-feature {
  margin: .9rem 5%;
}
.settings-module-feature.font-provider {
  margin: 0;
/*  padding: .375rem 5% 0 5%;*/
  height: 3.3rem;
  display: flex;
  font-weight: 800;
  background-color: #F1F1F2;
}
.settings-module-feature.font-provider > div {
/*  flex: 2 50%;*/
  align-self: center;
  text-align: center;
  height: 100%;
  display: flex;
  border-top: solid #F1F1F2 4px;
  position: relative;
  cursor: pointer;  
  /* transition: all 0.16s ease; */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: #F1F1F2;
  min-width: 3.75rem;
  opacity: .68;
  margin-right: 1px; /* Temporary fix */
}
.settings-module-feature.font-provider > div:first-child {
  width: 60%;
}
.settings-module-feature.font-provider > div:after {
  content: '';
  border-right: solid #F1F1F2 1px;
  width: 2px;
  right: -1px;
  top: 0;
  height: 100%;
}
.settings-module-feature.font-provider > div:hover {
  border-top: solid #D1D2D4 4px;
  background-color: #D1D2D4;
}

.settings-module-feature.font-provider.local > div:nth-of-type(1) {
  border-top: solid #51C2BE 4px;
  background-color: #FEFEFE;
  color: #51C2BE;
  opacity: 1;
}
.settings-module-feature.font-provider.variable > div:nth-of-type(2) {
  border-top: solid #51C2BE 4px;
  background-color: #FEFEFE;

  opacity: 1;
}
.settings-module-feature.font-provider.typekit > div:nth-of-type(3) {
  border-top: solid #51C2BE 4px;
  background-color: #FEFEFE;

  opacity: 1;
}
.settings-module-feature.font-provider.myfonts > div:nth-of-type(4) {
  border-top: solid #51C2BE 4px;
  background-color: #FEFEFE;

  opacity: 1;
}

.settings-module-feature.font-provider > div:nth-of-type(2):after {
  border: none;
}

.settings-module-feature.font-provider > div > * {
  align-self: center;
  width: 100%;
}
.localFonts {

}
.settings-module-feature.font-provider > div > img {
/*  width: auto;*/
}
.settings-module-feature.font-provider .provider-label {
  width: auto;
  margin: 0 .75rem 0 20%;
}
.settings-module-feature.font-provider.typekit .provider-label {
  color: #152600;
}
.settings-module-feature.fonts {
  margin: 0;
  background-color: #FEFEFE;
  border-bottom: solid #F1F1F2 1px;
  padding: .9rem 5%; /* We have to replace the default margin with padding here for the background */
}
.settings-module-feature.column-width input[type=number], .settings-module-feature.letter-spacing input[type=number] {
  width: 78%;
}
.settings-module-feature.font-size input[type=number], .settings-module-feature.line-height input[type=number] {
  max-width: 55%;
  width: 100%;
}
.settings-module-feature.font-size {
  width: 42.5%;
  display: inline-block;
  margin: .9rem 2.5% 0 5%;
}
.settings-module-feature.line-height {
  width: 42.5%;
  display: inline-block;
  margin: .9rem 5% 0 2.5%;
}
/* Color Specific Settings Styles */

.settings-module-feature.designspace .functionality-name, .settings-module-feature.fonts .functionality-name {
  font-weight: 900;
}

/* Design Space Specific Settings Styles */
.settings-module-feature.color {
  border-bottom: solid #FEFEFE 1px;
  padding: .9rem 5%;
  margin: 0;
}
.settings-module-feature.color > div {
  display: inline-block;
  width: 50%;
}
.settings-module-feature.color > div:first-child {
  padding-right: 2.5%;
}
.settings-module-feature.color > div:nth-child(2) {
  padding-left: 2.5%;
}
.settings-module-feature .functionality-name.background-color {
/*  margin-left: 1.2rem;*/
}
/*.settings-module-feature.color:nth-of-type(4) {
  margin-left: 0;
}*/

.item-over .drop-area {
  border: dashed #EA8752 2px;
  padding: .375rem;
}
.item-over .drop-area:hover {
  border: dashed #51c2be 2px;
}
.item-over .drop-area:hover > * {
  opacity: .7;
}

.settings-module-feature.font-select-edit, 
.settings-module-feature.font-style-select-edit, 
.settings-module-feature.weight-select-edit,
.settings-module-feature.width-select-edit,
.settings-module-feature.manage-local-fonts {
  display: inline-block;
  width: 100%;
  margin: .3rem 0 .9rem 0;
  position: relative;
  overflow: visible;
}
.settings-module-feature.font-select-edit .dropdown-input {
  position: relative;
  background-color: #F1F1F2;
}
.settings-module-feature.font-select-edit .dropdown-input:after {
  content: '✓';
  font-size: 1rem;
  color: #51C2BE;
  font-weight: 900;
  position: absolute;
  top: .26rem;
/*  margin-left: -2.7rem;*/
  transform: translate3d(-2.7rem, .3rem, 0);
  transition: all 0.16s ease;
  opacity: 0;
  pointer-events: none;
}
.confirmed .settings-module-feature.font-select-edit .dropdown-input:after {
  opacity: 1;
/*  margin-left: -1.8rem;*/
  transform: translate3d(-1.8rem, .3rem, 0);
  pointer-events: none;
}

.dropdown-input.confirmed .dropdown-arrow {
  /*background-color: #51C2BE;*/
}

/* Eventually these styles should be agnostic */
/*.settings-module-feature.weight-select-edit, .settings-module-feature.axis-select-edit {
  display: inline-block;
  margin: 0;
  width: 100%;
}*/
.settings-module-feature.weight-select-edit input[type=number], .settings-module-feature.axis-select-edit input[type=number] {
  margin: .3rem 0 0;
}
.settings-module-feature.weight-select-edit > .bold, .settings-module-feature.weight-select-edit > .italic {
  padding: .375rem .375rem .3rem .375rem;
  border: solid #D1D2D4 1px;
  font-family: "Output Sans";
  font-size: .7rem;
  font-weight: 800;
  width: auto;
  display: inline-block;
  width: 1.8rem;
  text-align: center;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0 .3rem 0 .6rem;
  transition: box-shadow 0.16s ease, border 0.16s ease;
}

.settings-module-feature.manage-local-fonts {
  margin-bottom: 0;
}

.instance-controls {
  width: 100%;
  margin: 0 0 .3rem 0;
  display: inline-block;
}
.instance-controls .button {
  transition: none;
  display: inline-block;
  text-transform: capitalize;
  font-size: .7rem;
  width: 46%;
  font-weight: 800;
}

.instance-controls .button.save {
  margin: 0 .9rem 0 0rem;
}
.instance-controls .button.delete {
}
/* Generalize these styles later */
.instance-controls .button.primary {
/*  background-color: #51C2BE;*/
}
.instance-controls .button.primary:hover {
  background-color: #111111;
}
.settings-module-feature .space {
  background-color: #FEFEFE;
}
.settings-module-feature.fonts input[type=text] {
  width: 80%;
  display: inline-block;
  margin: 0 .375rem 0 0;
}
.settings-module-feature.fonts select {
  padding: .375rem .375rem .3rem .375rem;
  border: solid #D1D2D4 1px;
  width: auto;
  font-family: "Output Sans";
  font-size: .7rem;
  height: 1.65rem;
  font-weight: 400;
  -webkit-appearance: none;
  border-radius: 0;
}
.settings-module-feature.fonts select:focus {
  outline: none;
  border: solid 1px #51C2BE;
/*  -webkit-box-shadow: 0px 0px 0px 2px #51C2BE;
  -moz-box-shadow: 0px 0px 0px 2px #51C2BE;
  box-shadow: 0px 0px 0px 2px #51C2BE;*/
}

.settings-module-feature.font-variations {
  padding: 1.2rem 0;
  margin: 0;
  border-top: solid #FEFEFE 1px;
}
.settings-module-feature.font-variations > div {
  padding-right: 5%;
  padding-left: 5%;
}
.settings-module-feature.font-variations > .functionality-name {
  margin-bottom: 1rem;
}

.functionality-name.font-axis {
  margin-top: .9rem;
}


/* Text Alignment Styles */
.settings-module-feature .button-group div {
  padding: .375rem .55rem .3rem .55rem;
  display: inline-block;
  font-size: .7rem;
  border: solid #D1D2D4 1px;
  border-radius: 2px;
  background-color: #FEFEFE;
  color: #111;
  display: inline-block;
  margin: 0 .75rem .75rem 0;
  cursor: pointer;
  user-select: none;
/*  transition: all 0.16s ease;*/
}
/* Font Styles */
.settings-module-feature.font-style-select-edit .font-style-choice {
  margin-bottom: 0;
  padding: .45rem 1rem .3rem 1rem;
  font-style: italic;
}

/* Have and selected button styles */
.settings-module-feature .button-group div:hover, .settings-module-feature .button-group div:focus, .settings-module-feature .button-group div:active {
  background-color: #D1D2D4;
  border: solid #D1D2D4 1px;
}
.settings-module-feature .button-group div.applied {
  background-color: #51C2BE;
  border: solid #51C2BE 1px;
}
.settings-module-feature .button-group div.applied:hover {
  opacity: .75;
}

/* In the case of buttons for Axes, the class 
that's changing is the name of the property that's being toggled,
not 'div.applied'. In this case it’s just  */
.settings-module-feature .button-group.italic div {
  background-color: #51C2BE;
  border: solid #51C2BE 1px;
}
.settings-module-feature .button-group.italic div:hover {
  opacity: .75;
}


/* For text alignment */
.settings-module-feature.text-alignment {
  border-bottom: solid #FEFEFE 1px;
  padding: .9rem 5%;
  margin: 0;
}
.settings-module-feature.text-alignment .button-group {
  display: inline;
}
.settings-module-feature.text-alignment .button-group div {
  margin: 0 .75rem 0 0;
}
.settings-module-feature.text-alignment .button-group.left div:nth-child(1),
.settings-module-feature.text-alignment .button-group.center div:nth-child(2),
.settings-module-feature.text-alignment .button-group.right div:nth-child(3) {
    background-color: #51C2BE;
    border: solid #51C2BE 1px;
}
.settings-module-feature.text-alignment > .functionality-name {
/*  margin-bottom: 1rem;*/
}

/*.settings-module-feature .button-group div.common-ligatures {
  font-variant-ligatures: common-ligatures;
}
.settings-module-feature .button-group div.discretionary-ligatures {
  font-variant-ligatures: discretionary-ligatures;
}
.settings-module-feature .button-group div.small-caps {
  font-variant: small-caps;
}
.settings-module-feature .button-group div.fractions {
  font-feature-settings: 'frac';
}*/


/* Design Space */
.settings-module-feature.designspace {
  border-top: solid #D1D2D4 1px;
  border-bottom: solid #D1D2D4 1px;
  margin: 0; 
  background-color: #F1F1F2;
/*  padding: .9rem 5%;*/
}
.settings-module-feature.designspace .add-master {
  padding: .375rem 5% .3rem 5%;
  font-family: "Output Sans";
  font-size: .9rem;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  background-color: #D1D2D4;
  color: #111111;
  margin-bottom: 2rem;
  cursor: pointer;
}
.settings-module-feature.designspace .space {
  background-color: #FEFEFE;
  padding: .9rem 5%;
}
.settings-module-feature.designspace .space .model {
  height: 8rem;
  width: 8rem;
  margin: .9rem auto;
  border: solid #E6E7E8 1px;
  cursor: crosshair;
/*s*/
  position: relative;
  justify-content: center;
  align-content: space-between;
  align-items: center;
  justify-content: space-between;

  /* Should probably just position things in here absolutely */
}
.settings-module-feature.designspace .space .model:before {
  content: '';
  width: 1px;
  height: .5rem;
  left: -1px;
  top: -.5rem;
  background-color: #e6e7e8;
  position: absolute;
}
.settings-module-feature.designspace .space .model:after {
  content: '';
  width: 1px;
  height: .5rem;
  right: -1px; 
  top: -.5rem;
  background-color: #e6e7e8;
  position: absolute;
}
.settings-module-feature.designspace .space .model .master {
  height: 14px;
  width: 14px;
  background-color: #A7A9AB;
  display: inline-block;
  position: absolute;
  z-index: 100;
  margin: -7px 0 0 -7px;
  cursor: pointer;
  transition: all 0.16s ease;
}
.settings-module-feature.designspace .space .model .master:hover {
  transform: scale(1.2, 1.2);
}
.settings-module-feature.designspace .space .model .master:nth-of-type(1) {
  top: 50%;
  left: 50%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(2) {
  top: 25%;
  left: 25%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(3) {
  top: 75%;
  left: 75%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(4) {
  top: 25%;
  left: 100%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(5) {
  top: 100%;
  left: 0%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(6) {
  top: 50%;
  left: 75%;
}
.settings-module-feature.designspace .space .model .master:nth-of-type(7) {
  top: 0%;
  left: 50%;
}
.settings-module-feature.designspace .space .model .master:first-of-type:after {
  content: '';
  position: absolute;
  background-color: #E6E7E8;
  top: -5px;
  left: -5px;
  width: 24px;
  height: 24px;
  background-blend-mode: multiply;
  mix-blend-mode: multiply;
}

.settings-module-feature.color input[type=text] {
  width: 100%; 
  display: block;
  text-align: center;
}


/* Padding Specific Settings Styles */
.settings-module-feature.padding input[type=number]:nth-of-type(1) {
  display: block;
  margin: .75rem 37% .25rem 37%;
  width: 25%;
}
.settings-module-feature.padding input[type=number]:nth-of-type(2) {
  margin: 0;
  width: 25%;
}
.settings-module-feature.padding input[type=number]:nth-of-type(3) {
  margin: 0 0 0 50%;
  width: 25%;
}
.settings-module-feature.padding input[type=number]:nth-of-type(4) {
  display: block;
  margin: .25rem 37%;
  width: 25%;
}

.settings-module-feature select {
  padding: .375rem .375rem .3rem .375rem;
  border: solid #D1D2D4 1px;
  width: auto;
  font-family: "Output Sans";
  font-size: .7rem;
  height: 1.65rem;
  font-weight: 400;
  -webkit-appearance: none;
  border-radius: 0;
  background-color: #FEFEFE;
/*  text-align: center;*/
/*  color: #777777;*/
}
.settings-module-feature input[type=range] {
  -webkit-appearance: none;
  display: inline-block;
  vertical-align: middle;
  width: 55%;
  display: inline-block;
  background-color: #a7a9ab;
  height: 2px;
  margin-left: 1.2rem;
  outline: none;
  cursor: pointer;
}
.settings-module-feature input[type=color] {
  -webkit-appearance: none;
  padding: 0;
  margin: 0;
  border: none;
  height: 1.8rem;
  width: 1.8rem;
  display: inline-block;
  outline: none;
  cursor: pointer;
  background-color: transparent;
  vertical-align: sub;
}
.settings-module-feature input[type=color]:hover {
  opacity: .6;
}

/* Non selectable predetermined fonts */
.settings-module-feature .font-item {
  width: 100%;
  display: inline-block; 
  margin: 0;

  padding: .375rem .375rem .3rem;
  border: solid #D1D2D4 1px;

  font-family: "Output Sans";
  font-size: .7rem;
  font-weight: 400;

  min-height: 26px; /* If the input is empty for some reason. */
}
.settings-module-feature .font-item:hover {
  color: #FEFEFE;
  background-color: #111;
}

/* Local selectable fonts */
.settings-module-feature input[type=text], .settings-module-feature input[type=number] {

/*  This may be the answer */
  width: 3.75rem;  
  -webkit-appearance: none;
  margin: 0 .375rem 0 0;

  padding: .375rem .375rem .3rem;
  border: solid #D1D2D4 1px;

  font-family: "Output Sans";
  font-size: .7rem;
  font-weight: 400;

  /*transition: box-shadow 0.16s ease, border 0.16s ease;*/
}
.settings-module-feature input[type=text] {
  width: 3rem;
  -webkit-appearance: none;
}

.settings-module-feature input[type=text]:focus, .settings-module-feature input[type=number]:focus, select:focus {
  outline: none;
  border: solid 1px #51C2BE;
  -webkit-box-shadow: 0px 0px 0px 2px #51C2BE;
  -moz-box-shadow: 0px 0px 0px 2px #51C2BE;
  box-shadow: 0px 0px 0px 2px #51C2BE;
}
/* Buttons */

.settings-module-feature .dropdown-input input {
  z-index: 10000;
  padding: .750rem .375rem;
  border: none;
}
.settings-module-feature .dropdown-input input:focus {
  box-shadow: none;
  border: none;
}
/*.settings-module-feature .dropdown-input input[type=text]:focus {
  border: solid 1px #D1D2D4;
  -webkit-box-shadow: 0px 0px 0px 2px #D1D2D4;
  -moz-box-shadow: 0px 0px 0px 2px #D1D2D4;
  box-shadow: 0px 0px 0px 2px #D1D2D4;
}*/
.confirmed .settings-module-feature .dropdown-input {
  border: solid 1px #d1d2d4;
  -webkit-box-shadow: 0px 0px 0px 1px #d1d2d4;
  -moz-box-shadow: 0px 0px 0px 1px #d1d2d4;
  box-shadow: 0px 0px 0px 1px #d1d2d4;
}

.notFound {
  transition: all 1s ease;
}
.notFound:hover {
  color: blue;
  text-shadow: 4px 4px 2px rgba(255, 0, 255, 1), 8px 8px 12px rgba(0, 0, 255, 1), -1px -1px 22px rgba(0, 255, 255, 1);
}


/* Partners */
#mfPreviewBar {
  display: none !important;
  opacity: 0 !important;
  z-index: -1000 !important;
  height: 0 !important;
  width: 0 !important;
}

/* Alerts */
/* Hide the settings while in preview */
.preview-mode .settings-main, .preview-mode .settings-secondary  {
  display: none;
}
.in-app-alert {
  padding: 1.1rem 5% 1.1rem 5%;
  font-family: "Output Sans";
  color: #51C2BE;
  font-size: .9rem;
  line-height: 1.5;
  border-bottom: solid 1px #D1D2D4;
  z-index: 100000;
  font-weight: 800;
  background-color: #FEFEFE;
}


/* Variable Fonts */
@font-face {
    font-family: 'Dunbar';
    src: url('fonts/dunbar_series_typeshift.ttf') format('opentype');
    font-style: normal;
}
@font-face {
    font-family: 'Libre Franklin Gothic GX';
    src: url('fonts/LibreFranklinGX-Roman.ttf') format('opentype');
    font-style: normal;
}
@font-face {
    font-family: 'Libre Franklin Gothic Italic';
    src: url('fonts/LibreFranklinGX-Italic.ttf') format('opentype');
    font-style: normal;
}
@font-face {
    font-family: 'Gingham Regular';
    src: url('fonts/Gingham.ttf') format('truetype');
    font-style: normal;
}
@font-face {
    font-family: 'Lab';
    src: url('fonts/Lab-DJR.ttf') format('truetype');
    font-style: normal;
}


.variable-font-description {
  margin-top: .275rem;
}
.variable-font-instructions {
  line-height: 1.4;
}