/* ported from old non-responsive CSS */
#flash_area {
  color: #666;
  font-size: 12pt;
  position: relative;
  text-align: center;
  z-index: 1;
}
#flash_area #hide_flash {
  display: none;
}
#flash_area.has_message {
  background-color: #FFFBE2;
  border-bottom: 1px solid #FFE222;
  padding: 15px 15px 5px 15px;
}
#flash_area.has_message #hide_flash {
  display: block;
  font-size: 8pt;
  padding: 1px 4px;
  position: absolute;
  right: 2px;
  text-align: center;
  top: 2px;
}
a img {
  border: none;
}
/* end port */

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body #header {
  text-align: center;
  background-image: url(/images/index/hero_image_new.jpg);
  background-repeat: no-repeat;
  background-position: 75% 75%;
  background-size: cover;
  margin-top: 0;
  min-height: 500px;
  box-sizing: border-box;
  margin: 0 0 0 0;
  padding: 85px 0 0 0;
  border-bottom: 3px solid #0099bb;
}
body #header .header-text {
  margin-top: 40px;
}
body #header .header-text h1 {
  text-align: left;
  color: #fff;
  text-transform: none;
  font: 32px/40px Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}
body #header .header-text p {
  text-align: left;
  color: #fff;
  font: 20px/30px "Open Sans", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  margin: 1.2rem 0;
  text-shadow: 0 1px 10px rgba(0,0,0,0.2);
}
body #header .header-text .um-button {
  float: left;
}
body #header .create-snapshot {
  margin-top: 40px;
  background-color: white;
  -moz-box-shadow:5px 5px 10px 5px rgba(68, 68, 68, .3);
  -webkit-box-shadow:5px 5px 10px 5px rgba(68, 68, 68, .3);
  box-shadow:5px 5px 10px 5px rgba(68, 68, 68, .3);
}
body #header .create-snapshot h1 {
  text-transform: none;
  background-color: rgb(58, 89, 153);
  color: white;
  font-size: 16px;
  padding: 10px 16px;
}
body #header .create-snapshot p {
  text-transform: none;
  color: #444;
  font-size: 12px;
  padding: 25px 10px 10px 10px;
  line-height: 20px;
}
body .run-snapshot {
  box-sizing: border-box;
  margin-top: 22px;
  padding-left: 15px;
  padding-right: 15px;
}

.snapshot-front-page {
  margin-top: 50px;
}

.snapshot-front-page h1 {
  color: #fff;
  line-height: 1.4;
  margin: 0 0 20px 0;
  text-shadow: 0 1px 10px rgba(0,0,0,0.2);
  text-transform: none;
  font-weight: 300;
  font-size: 36px;
}

.snapshot-front-page .search-form {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  border-radius: 2px;
  box-shadow: 0 0 20px rgba(0,0,0,0.2);
  margin-bottom: 25px;
}

.snapshot-front-page p.powered_by,
.snapshot-front-page p.powered_by a {
  font-size: 16px !important;
  color: #fff !important;
  font: "Open Sans", sans-serif;
  line-height: 1.4 !important;
  margin: 1.2rem 0 !important;
  text-shadow: 0 1px 10px rgba(0,0,0,0.2) !important;
}
.snapshot-front-page p.powered_by a {
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  .snapshot-front-page h1 {
    font-size: 30px;
  }
  .snapshot-front-page .search-form {
    height: 50px;
  }
  .snapshot-front-page .search-form__button {
    width: 50px;
    font-size: 14px;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  body .run-snapshot .search-form__input {
    -ms-flex-shrink: 1;
    -ms-flex-grow: 0;
    -ms-flex-basis: auto;
    width: 260px;
  }
}

input#q::-webkit-input-placeholder { color: #999; }
input#q:-moz-placeholder { color: #999; } /* FF 4-18 */
input#q::-moz-placeholder { color: #999; } /* FF 18+ */
input#q::-ms-input-placeholder { color: #999; } /* IE 10+ */

body .container .row {
  margin: 0 0 20px 0;
}
body .container .row.intro h1 {
  color: #222;
  font: 28px Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
  margin: 40px 0 18px 0;
  padding: 0 0 0 0;
  text-transform: none;
}
body .container .row .bullet {
  margin: 0 10px;
}
body .container .row .bullet svg {
  position: absolute;
}
body .container .row p {
  color: #444;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 24px;
  margin: 0 0 18px 0;
  padding: 0 0 0 0;
}
body .container .row .bullet h3 {
  color: #222;
  font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  margin: 0 0 8px 0;
  padding: 0 0 0 50px;
}
body .container .row .bullet p {
  padding-left: 50px;
}
body .container .row div.callout {
  border: 2px solid rgb(231, 235, 241);
  border-left: none;
  border-right: none;
  margin: 15px 0;
  padding: 0 0 15px 0;
  text-align: center;
}
body .container .row div.callout h3 {
  color: rgb(58, 89, 153);
  margin: 21px 0 8px 0;
  padding: 0 0 0 0;
}
body .container .row div.callout blockquote {
  margin: 0 0 0 0;
  padding: 10px 10px 0 10px;
}
body .container .row div.callout blockquote p {
  color: #777;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-style: italic;
  line-height: 24px;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}
body .container .row div.callout blockquote cite {
  display: block;
  color: #555;
  font: italic 12px/24px "Open Sans", Helvetica, Arial, sans-serif;
}
body .container .row div.callout blockquote cite:before {
  content: "— ";
}
body .container .row.benefit {
  margin: 40px 0;
}
body .container .row.benefit h2 {
  color: #222;
  font: 20px/30px Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
  margin: 0 0 8px 0;
  padding: 0 0 0 0;
}
body .container .row.benefit ul {
  color: #444;
  font: 15px/24px "Open Sans", Helvetica, Arial, sans-serif;
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
}
body .container .row.benefit ul li {
  margin: 0 0 12px 20px;
}
body .callout.highlight {
  background-color: #efefef;
  border: 1px solid #ddd;
  border-left: none;
  border-right: none;
  text-align: center;
  margin: 15px 0;
  padding: 17px 0 22px 0;
}
body .callout.highlight h3 {
  color: #222;
  font: 20px/24px Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
  margin: 10px 0 8px 0;
  padding: 0 0 0 0;
}
body .callout.highlight p {
  margin: 0 0 0 0;
  padding: 8px 0 0 0;
}
body .um-button {
  display: inline-block;
  background-color: #0099bb;
  color: white;
  border-radius: 3px;
  text-transform: uppercase;
  text-decoration: none;
  font: 15px/24px Montserrat, Helvetica, Arial, sans-serif;
  margin: 6px 2px;
  padding: 4px 12px;
}
body #footer {
  color: #444;
  font: 14px/24px "Open Sans", Helvetica, Arial, sans-serif;
  margin: 35px 10px 0 10px;
  padding: 0 0 10px 0;
}




/* general styles */
.narrow { display: none; }
h1 {
  font: normal 36px Montserrat, sans-serif;
  color: #7d93b2;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  text-align: center;
  margin: 0 0 0.25em 0;
}
h2 {
  font: 22px Montserrat, sans-serif;
  color: #444;
  margin: 0;
  padding: 0;
}
h3 {
  font: normal 18px Montserrat, sans-serif;
  color: #444;
  -webkit-font-smoothing: antialiased;
}
h4 {
  font: bold 16px/1.7 Montserrat, sans-serif;
  color: #444;
  text-transform: uppercase;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  padding: 0;
}
p {
  font: 16px/1.7 'Open Sans', sans-serif;
  color: #444;
}
p.tagline {
  font-family: Montserrat, sans-serif;
  -webkit-font-smoothing: antialiased;
  margin: 0 0 0 0;
  text-align: center;
}
p.description {
  color: #777;
}
.flat_button { background-color: #7d93b2; }
a.flat_button {
  display: inline-block;
  font: 16px/1.7 Montserrat, sans-serif;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  border-radius: 3px;
  width: 145px;
  padding: 7px 0 6px 0;
}

/* product colors */
.tu { background-color: #09b; }
.ig { background-color: #ff8459; }

/* top section: header */
#header {
  margin: 96px 0 45px 0;
}

/* second section: query form */
#query_form_container {
  text-align: center;
}
#query_form_container input[type=text] {
  font: normal 16px 'Open Sans', sans-serif;
  color: #222;
  border: 1px solid #999;
  height: 35px;
  margin: 0 0 0 0;
  padding: 1px 10px;
  width: 358px;
}
#query_form_container input.default_text {
  color: #999;
  font-style: italic;
}
#query_form_container input[type=submit] {
  font: 18px Montserrat, sans-serif;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  border: 1px solid #7d93b2;
  background-color: #7d93b2;
  border-radius: 3px;
  width: 73px;
  height: 39px;
  cursor: pointer;
}

/* third section: process */
#process {
  margin: 98px 0 0 0;
}
#process img {
  float: left;
  width: 60px;
  height: 75px;
  margin: 0 15px 0 0;
}
#process p {
  font: normal 15px/1.7 'Open Sans', sans-serif;
  color: #444;
  margin: 0;
  padding: 0;
}

/* fourth section: impact */
#impact {
  background-color: #efefef;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin: 0;
  margin-top: 63px;
  padding: 0;
  padding-top: 25px;
  padding-bottom: 18px;
}
#impact .screenshot {
  text-align: center;
}
#impact img {
  width: 460px;
  height: 306px;
}

/* fifth section: suite */
#suite {
  margin: 27px 0 32px 0;
}
#suite .element {
  text-align: center;
}
#suite .element .logomark {
  width: 124px;
  display: inline-block;
  color: #fff;
  font: 56px Montserrat, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  padding: 25px 0 31px 0;
  border-radius: 8px 0;
}
#suite a.flat_button {
  width: 218px;
  padding: 13px 0 12px 0;
  font-size: 11px;
}

/* sixth section: subscribe */
#subscribe_form_container {
  border-top: 1px solid #ccc;
  padding-top: 36px;
}

/* last section: footer */
#footer {
  padding-top: 3px;
  text-align: center;
}
#footer p {
  font: 13.3px/2 'Open Sans', sans-serif;
  color: #888;
  margin: 0;
  padding: 0;
}
#footer p a {
  color: #888;
}

/* Responsive sizing: derived from http://stephen.io/mediaqueries/ */
/* tablet uses same widths as desktop */
/* phone landscape */
@media only screen
and (min-width: 320px)
and (max-width: 568px)
and (orientation: landscape) {
  .wide { display: none; }
  .narrow { display: inline; }
  body #header { padding-top: 40px; padding: 40px 10px 0 10px; }
  body #header input#q { width: 220px; }
  body #header input[type=submit] { width: 70px; }
}
/* phone portrait */
@media only screen
and (min-width: 320px)
and (max-width: 568px)
and (orientation: portrait) {
  .wide { display: none; }
  .narrow { display: inline; }
  body #header { padding-top: 40px; padding: 40px 10px 0 10px; }
  body #header input#q {
    width: 220px;
  }
  body #header input[type=submit] {
    width: 70px;
  }
}
