body {
  background: #e5e3dd;
  margin: 0;
  font-family: 'ProximaNova-Regular', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img {
  width: 100%;
  height: auto;
}
p {
  margin: 0;
}
@font-face {
  font-family: 'ProximaNova-Bold';
  src: url('../font/ProximaNova-Bold.eot?#iefix') format('embedded-opentype'), url('../font/ProximaNova-Bold.otf') format('opentype'), url('../font/ProximaNova-Bold.woff') format('woff'), url('../font/ProximaNova-Bold.ttf') format('truetype'), url('../font/ProximaNova-Bold.svg#ProximaNova-Bold') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'ProximaNova-Regular';
  src: url('../font/ProximaNova-Regular.eot?#iefix') format('embedded-opentype'), url('../font/ProximaNova-Regular.otf') format('opentype'), url('../font/ProximaNova-Regular.woff') format('woff'), url('../font/ProximaNova-Regular.ttf') format('truetype'), url('../font/ProximaNova-Regular.svg#ProximaNova-Regular') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'AK';
  src: url('../font/AkzidenzGrotesk-Black.eot?#iefix') format('embedded-opentype'), url('../font/AkzidenzGrotesk-Black.woff') format('woff'), url('../font/AkzidenzGrotesk-Black.ttf') format('truetype'), url('../font/AkzidenzGrotesk-Black.svg#AkzidenzGrotesk-Black') format('svg');
  font-weight: normal;
  font-style: normal;
}
video {
  display: block;
  width: 100%;
}
b {
  font-family: 'ProximaNova-Bold';
  white-space: nowrap;
}
.clear:after {
  content: "";
  clear: both;
  display: table;
}
.nowrap {
  white-space: nowrap;
}
#wrapper {
  width: 100%;
  margin: 0 auto;
  padding-top: 20px;
  overflow: hidden;
}
.left-side {
  width: 39.5%;
  float: left;
  padding: 78px 1.5% 40px 5%;
}
.left-side .quote {
  font-size: 22px;
  text-align: right;
}
.right-side {
  width: 47%;
  float: left;
  padding: 40px 5% 40px 2%;
}
#preview-container {
  clear: both;
  position: relative;
  height: 0;
  padding-top: 56.25%;
}
#preview-container .options {
  visibility: hidden;
  padding-bottom: 8px;
  position: relative;
}
#preview-container .options .square {
  display: inline-block;
  cursor: pointer;
  width: 20px;
  height: 20px;
  position: relative;
  top: 5px;
  outline: 1px solid #000;
}
#preview-container .options .square.active {
  outline: 1px solid #1da1f2;
}
#preview-container .options .square#steel {
  background: #5f717b;
}
#preview-container .options .square#black {
  background: #000;
}
#preview-container .options .square#white {
  background: #fff;
}
#preview-container #preview {
  height: 100%;
  width: 100%;
  position: relative;
  top: 0;
}
#preview-container #preview-overlay {
  position: relative;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  margin: 0 auto;
  pointer-events: none;
}
#preview-container #preview-overlay .upper {
  top: 0;
  right: 0;
  height: auto;
  width: 50%;
}
#preview-container #preview-overlay .lower {
  bottom: 8px;
  left: 0;
  width: 30%;
  max-width: 200px;
  height: auto;
  top: initial;
}
#preview-container #preview-overlay img {
  position: absolute;
  height: 100%;
  transform: none;
}
#preview-container video {
  height: 100%;
  width: auto;
  margin: 0 auto;
}
#preview-container img {
  width: auto;
  height: 100%;
  margin: 0 auto;
  display: block;
  position: relative;
}
#preview-container .portrait {
  width: auto;
}
#preview-container .landscape {
  width: 100%;
  height: auto;
}
.padding-clear {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
#spinner {
  width: 77px;
  position: absolute;
  display: none;
  top: -14px;
  right: 100%;
}
#instruct {
  text-align: right;
  padding: 0 5%;
  font-size: 27px;
}
#instruct h2 {
  font-family: 'ProximaNova-Bold', sans-serif;
  margin: 0;
  font-size: 50px;
  line-height: 0.8em;
}
#instruct p {
  margin-top: 12px;
}
#create {
  position: relative;
  margin-top: 20px;
}
#create #save-btn {
  display: none;
}
#create .button {
  display: inline-block;
  cursor: pointer;
  position: relative;
  width: 208px;
  background: #162e84;
  text-align: center;
  color: #fff;
  border-radius: 6px;
  padding: 15px 0 11px;
  font-family: 'AK';
}
#create #create-btn.disabled {
  opacity: 0.3;
  cursor: no-drop;
  pointer-events: none;
}
#create #create-btn:hover .rules {
  display: block;
}
#create #create-btn input {
  cursor: inherit;
  display: block;
  font-size: 999px;
  height: 100%;
  width: 100%;
  opacity: 0;
  position: absolute;
  right: 0;
  text-align: right;
  top: 0;
}
#create .error {
  position: absolute;
  top: 101%;
  width: 500px;
  right: 0;
  font-size: 14px;
}
#create progress {
  display: none;
  position: absolute;
  right: 0;
  top: 104%;
  height: 5px;
  width: 208px;
}
.rules {
  position: absolute;
  bottom: 126%;
  width: 202%;
  right: 0;
  background: #fff;
  padding: 10%;
  border-radius: 4px;
  font-size: 12px;
  border: 1px solid #000;
  color: #000;
  box-shadow: 4px 5px 9px 1px #CCC;
  font-family: 'Arial';
  display: none;
}
.rules:after,
.rules:before {
  top: 100%;
  left: 96%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.rules:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #ffffff;
  border-width: 13px;
  margin-left: -31px;
}
.rules:before {
  border-color: rgba(0, 0, 0, 0);
  border-top-color: #000000;
  border-width: 14px;
  margin-left: -32px;
}
#share {
  display: none;
  float: right;
  margin-top: 20px;
}
#share > div {
  float: right;
  width: 18.5%;
  cursor: pointer;
  margin-top: 7px;
  margin-left: 7px;
  position: relative;
}
#share > div#twitter-btn {
  clear: both;
}
#share > div progress {
  position: absolute;
  bottom: 89%;
  width: 100%;
  display: none;
}
#share .error {
  position: absolute;
  top: 84%;
  width: 500px;
  right: 0;
  font-size: 16px;
}
#share #restart-btn {
  margin-top: 0;
}
#share #restart-btn:hover .rules {
  display: block;
}
#share:after {
  content: "";
  clear: both;
  display: table;
}
#title-treatment {
  width: 100%;
  height: 0;
  padding-bottom: 27%;
  background: url(../img/tt.png) no-repeat;
  background-size: 100%;
  float: right;
  margin-top: 41px;
  position: relative;
}
.copy {
  text-align: right;
  font-size: 10px;
  color: #232323;
  font-family: 'arial';
  position: absolute;
  right: 5%;
  width: 90%;
  padding-top: 5px;
}
.copy a {
  color: inherit;
}
#share-modal {
  position: absolute;
  background: #fff;
  width: 87%;
  max-width: 500px;
  left: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  padding: 20px;
  border: 1px solid #1da1f2;
  display: none;
  box-shadow: 0px 9px 44px -10px rgba(0, 0, 0, 0.5);
  z-index: 3;
}
#share-modal .post {
  display: none;
}
#share-modal .post h3 {
  text-align: center;
  margin: 0;
}
#share-modal .post p {
  text-align: center;
}
#share-modal h2 {
  text-align: center;
  margin-top: 0;
}
#share-modal textarea {
  text-align: left;
  width: calc(100% - 18px);
  font-size: 16px;
  resize: none;
  line-height: 20px;
  padding: 8px;
  margin-bottom: 5px;
  display: block;
  outline: 1px solid;
  margin-top: 5px;
}
#share-modal textarea:focus {
  outline: 0;
  border-color: #1da1f2;
  box-shadow: inset 0 0 0 1px rgba(0, 132, 180, 0.7);
}
#share-modal .close-btn {
  position: absolute;
  top: 0px;
  right: 3px;
  cursor: pointer;
  transform: rotate(45deg);
  font-size: 35px;
  font-family: sans-serif;
  width: 10px;
  height: 10px;
}
#share-modal #share-btn {
  float: right;
  color: #fff;
  background-color: #1da1f2;
  border: 1px solid #1da1f2;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15);
  font-size: 14px;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 18px;
  cursor: pointer;
  position: relative;
}
#share-modal #share-btn .share-spinner {
  position: absolute;
  right: 100%;
  top: 0;
  width: 36px;
  display: none;
}
.disabled {
  opacity: 0.5;
}
.desktop {
  display: block;
}
@media screen and (max-width: 800px) {
  .desktop {
    display: none;
  }
  .left-side {
    width: 90%;
    padding: 0 5%;
    float: none;
  }
  .left-side .text {
    width: 100%;
  }
  .left-side .quote {
    font-size: 20px;
    margin-top: 20px;
  }
  .right-side {
    width: 90%;
    padding: 0 5%;
    float: none;
    margin-top: 0px;
    padding-bottom: 10px;
  }
  #title-treatment {
    margin-top: 19px;
    margin-bottom: 41px;
  }
  #share {
    position: relative;
    margin-top: 10px;
  }
  #share > div {
    width: calc(50% - 7px);
    margin-top: 2px;
  }
  #share > div a {
    display: block;
    height: 100%;
  }
  #share #instagram-btn {
    position: absolute;
    top: 0;
    margin-top: 0;
  }
  #instruct {
    padding: 0 5%;
    font-size: 22px;
  }
  #instruct h2 {
    font-size: 1.9em;
  }
  #instruct label {
    margin-top: 20px;
  }
  #create .error {
    position: relative;
    top: 0;
    width: 100%;
  }
  .copy {
    text-align: center;
  }
}
@media screen and (max-width: 414px) {
  #wrapper {
    padding-top: 5px;
  }
  #create {
    margin-top: 7px;
    padding-bottom: 10px;
  }
  #instruct {
    font-size: 16px;
  }
  #instruct p {
    margin-top: 6px;
  }
  #instruct label {
    margin-top: 6px;
  }
  #title-treatment {
    margin: 5px auto 0;
    padding-bottom: 23%;
    width: 80%;
  }
  #preview-container {
    height: auto;
    padding-top: 0;
  }
  #preview-container .padding-clear {
    position: relative;
    width: auto;
    height: auto;
  }
  #preview-container #preview-overlay {
    position: absolute;
    width: 100%;
    top: 33px;
    height: calc(100% - 33px);
  }
  #preview-container .landscape {
    width: 100%;
    height: auto;
  }
  #preview-container .portrait {
    width: 100%;
  }
  .left-side .quote {
    font-size: 15.4px;
    margin-top: 9px;
  }
  .rules {
    width: 315px;
    right: -10px;
  }
}
