/*******************************************************************************
 * base.scss
 *
 * Contains base styles for HTML elements only.
 ******************************************************************************/

body {
  min-width: 300px;
}

html,
body {
  font-family: 'Source Sans Pro', "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 16px;
  margin: 0;
  padding: 0;
}

p {
  font-size: 1.10em; /* relative size */
  line-height: 1.45; /* 23.2px */
  margin: 1em 0;
}

a {
  color: #007CBA;
  text-decoration: none;
}

a:hover {
  color: #007CBA;
}

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

h1 {
  font-weight: 300; /* Light */
  font-size: 3.75rem; /* 60px */
  letter-spacing: 0.01em;
}

h2, h3, h4, h5, h6 {
  /* Semibold: Note Source Sans Pro has no 500 value. */
  /* https://www.google.com/fonts/specimen/Source+Sans+Pro */
  font-weight: 600; /* Semi-bold */
  margin: 1.5em 0 1em;
}

h2 {
  margin: 1em 0;
  font-size: 2.125rem; /* 34px */
  letter-spacing: 0.01em;
}
@media (min-width: 34em) { /* 544px @ 16px font size -- SM */
  h2 {
    font-size: 2.375rem; /* 38px */
  }
}
@media (min-width: 48em) {  /* 768px @ 16px font size  -- MD */
  h2 {
    font-size: 2.5rem; /* 40px */
  }
}

h3 {
  font-size: 1.5rem; /* 24px */
  letter-spacing: 0.01em;
}

h4 {
  font-size: 1.25rem; /* 20px */
}

ul {
  margin: .75em 0;
  padding-left: 2em;
}

li {
  margin: .5em 0;
  line-height: 1.25em;
}

ol {
  margin: 0 0 1.5em 1.5em;
  padding: 0;
}
ol > li {
  padding: 0 0 0 .4em;
}

table {
  width: 100%;
  margin: 1em 0;
}
table th {
  font-size: 1.25em;
  font-weight: 400; /* Normal */
  border-bottom: 2px solid #E8E6E5;
}
tr.even,
tr.odd {
  background-color: #f7f7f7;
}
table td {
  padding: 1em .5em;
}
@media (min-width: 34em) { /* 544px @ 16px font size -- SM */
  table td {
    padding: 1em;
  }
}

blockquote {
  padding: 25px 50px;
  margin: 0;
  background: transparent url(../images/quote-left.png) top left no-repeat;
  min-height: 50px;
}
blockquote p {
  margin: .5em 0;
}

figure {
  margin: 0 25px;
}
figcaption {
  margin-top: 5px;
  color: #444b53;
  font-size: .85em; /* relative size */
}

small {
  font-size: .95em; /* relative size */
}
pre {
  overflow: hidden;
  overflow-x: scroll;
  background-color: #F7F7F7;
  padding: 15px;
  margin: 10px 0;
}
code {
  font-family: Menlo, Consolas, "Andale Mono", "Lucida Console", "Nimbus Mono L", "DejaVu Sans Mono", monospace, "Courier New";
  font-size: 0.857em;
}

dt,
dd {
  padding: 0 0 5px 0;
}

/*******************************************************************************
 * Forms.
 ******************************************************************************/
label {
  margin: 0 0 0.5em;
  font-size: 1.125em; /* relative size */
}
input,
textarea {
  font-size: 1.125rem; /* 18px */
  color: #444b53;
  background-color: #fff;
  line-height: 40px;
  height: 40px;
  max-width: 100%;
  padding: 4px 8px;
  border: 2px solid #E8E6E5;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  box-sizing: border-box;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
textarea {
  height: auto;
  padding: 10px;
}
select {
  height: 40px;
  color: #444b53;
  padding: 4px 16px 4px 8px;
}
input[type="submit"] {
  border: 2px solid #007CBA;
  background-color: white;
  color: #007CBA;
  font-size: 1.125rem; /* 18px */
  border-radius: 20px;
  width: auto;
  margin: 10px 20px 10px 0;
  padding: 0 20px;
  white-space: nowrap;

  -webkit-transition: background-color .33s;
  -webkit-transition: color .33s;
  -moz-transition: background-color .33s;
  -moz-transition: color .33s;
  -ms-transition: background-color .33s;
  -ms-transition: olor .33s;
  -o-transition: background-color .33s;
  -o-transition: color .33s;
  transition: background-color .33s;
  transition: color .33s;
}
input[type="submit"]:hover {
  background-color: #007CBA;
  color: white;
}

.field-type-text-long,
.form-item {
  margin: 0 0 1em;
}
.form-item::last-child {
  margin-bottom: 0;
}

.form-item .description {
  padding: .25em 0 .25em 0;
  color: #7D7D7D;
}

.form-type-radios label,
.form-type-checkbox label {
  margin-left: 5px;
}
.form-type-radios .description,
.form-type-checkbox .description {
  margin-left: 1.6em;
}

.alignright {
	float:right;
}
