.sub-container {
  width: 100%;
  margin: 0 auto;
  height: 300px;
  display: table-cell;
  vertical-align: middle; }

.subscribe-header {
  font-weight: 500;
  font-size: 20px;
  color: black; }

.subscribe-copy {
  color: black;
  font-size: 15px; }

p.subscribe-disclaimer, a {
  font-size: 15px;
  color: #7c7c7c; }

.invalid-message {
  color: red;
  font-size: 15px;
  position: absolute;
  bottom: 55px;
  width: 100%;
  left: 0; }
  @media only screen and (min-width: 1200px) {
    .invalid-message {
      bottom: 55px; } }
  @media only screen and (min-width: 992px) {
    .invalid-message {
      bottom: 55px; } }
  @media only screen and (min-width: 768px) {
    .invalid-message {
      bottom: 55px; } }
  @media only screen and (max-width: 600px) {
    .invalid-message {
      bottom: 71px; } }

fieldset {
  padding-bottom: 50px; }
  @media only screen and (min-width: 1024px) {
    fieldset {
      float: none; } }

.email-input {
  width: 100%;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.sign-up-button {
  width: 105px;
  font-weight: bold;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

.top-container {
  display: table;
  vertical-align: middle;
  width: 100%;
  transition: all .25s;
  height: 100%; }

.subscribe-banner {
  position: relative;
  text-align: center;
  background-image: url(http://res.cloudinary.com/redballoon/image/upload/c_scale,h_200,w_956/v1543388313/author/banner/subscribe-feature.jpg);
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: cover;
  height: 500px; }

.header-text-block {
  width: 100%;
  text-align: center;
  padding-top: 50px;
  padding-bottom: 50px; }

.image-class {
  padding-top: 30px;
  padding-bottom: 30px;
  max-width: 100%; }

.subtitle-text {
  margin: auto;
  width: 90%;
  line-height: 32px;
  color: #7c7c7c; }
  @media screen and (min-width: 570px) {
    .subtitle-text {
      width: 90%; } }
  @media only screen and (min-width: 1024px) {
    .subtitle-text {
      width: 90%; } }
  @media only screen and (min-width: 1366px) {
    .subtitle-text {
      width: 33%; } }

.email-container {
  width: 90%;
  margin: auto;
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px; }
  @media screen and (min-width: 570px) {
    .email-container {
      width: 90%; } }
  @media only screen and (min-width: 1024px) {
    .email-container {
      width: 90%; } }
  @media only screen and (min-width: 1366px) {
    .email-container {
      width: 33%; } }

.condition-link {
  color: #358ed7; }

.sign-up-button {
  width: 105px;
  font-weight: bold;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  float: left;
  height: 48px; }

.email-content {
  width: 350px;
  float: left; }
  @media only screen and (max-width: 520px) {
    .email-content {
      width: calc(100% - 105px); } }

.email-outer-content {
  width: 456px;
  margin: auto; }
  @media only screen and (max-width: 520px) {
    .email-outer-content {
      width: 100%; } }
