/*
---------------------------------------------------------------------------------------
MASTER SCSS FILE

--------------
NOTES
--------------
This file contains @import includes for all of the files that are compiled into the
master styles.css file

--------------
CONTENTS
--------------
## FRAMEWORK
## MODULES

---------------------------------------------------------------------------------------
*/
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
/* ========================================================================== HTML5 display definitions ========================================================================== */
/** Correct `block` display not defined in IE 8/9. */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }

/** Correct `inline-block` display not defined in IE 8/9. */
audio, canvas, video { display: inline-block; }

/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */
audio:not([controls]) { display: none; height: 0; }

/** Address `[hidden]` styling not present in IE 8/9. Hide the `template` element in IE, Safari, and Firefox < 22. */
[hidden], template { display: none; }

/* ========================================================================== Base ========================================================================== */
/** 1. Set default font family to sans-serif. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove default margin. */
body { margin: 0; }

/* ========================================================================== Links ========================================================================== */
/** Remove the gray background color from active links in IE 10. */
a { background: transparent; }

/** Address `outline` inconsistency between Chrome and other browsers. */
a:focus { outline: thin dotted; }

/** Improve readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }

/* ========================================================================== Typography ========================================================================== */
/** Address variable `h1` font-size and margin within `section` and `article` contexts in Firefox 4+, Safari 5, and Chrome. */
h1 { font-size: 2em; margin: 0.67em 0; }

/** Address styling not present in IE 8/9, Safari 5, and Chrome. */
abbr[title] { border-bottom: 1px dotted; }

/** Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. */
b, strong { font-weight: bold; }

/** Address styling not present in Safari 5 and Chrome. */
dfn { font-style: italic; }

/** Address differences between Firefox and other browsers. */
hr { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; }

/** Address styling not present in IE 8/9. */
mark { background: #ff0; color: #000; }

/** Correct font family set oddly in Safari 5 and Chrome. */
code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }

/** Improve readability of pre-formatted text in all browsers. */
pre { white-space: pre-wrap; }

/** Set consistent quote types. */
q { quotes: "\201C" "\201D" "\2018" "\2019"; }

/** Address inconsistent and variable font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

/* ========================================================================== Embedded content ========================================================================== */
/** Remove border when inside `a` element in IE 8/9. */
img { border: 0; }

/** Correct overflow displayed oddly in IE 9. */
svg:not(:root) { overflow: hidden; }

/* ========================================================================== Figures ========================================================================== */
/** Address margin not present in IE 8/9 and Safari 5. */
figure { margin: 0; }

/* ========================================================================== Forms ========================================================================== */
/** Define consistent border, margin, and padding. */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 1. Correct `color` not being inherited in IE 8/9. 2. Remove padding so people aren't caught out if they zero out fieldsets. */
legend { border: 0; /* 1 */ padding: 0; /* 2 */ }

/** 1. Correct font family not being inherited in all browsers. 2. Correct font size not being inherited in all browsers. 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome. */
button, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ }

/** Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
button, input { line-height: normal; }

/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+. Correct `select` style inheritance in Firefox 4+ and Opera. */
button, select { text-transform: none; }

/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. */
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ }

/** Re-set default cursor for disabled elements. */
button[disabled], html input[disabled] { cursor: default; }

/** 1. Address box sizing set to `content-box` in IE 8/9/10. 2. Remove excess padding in IE 8/9/10. */
input[type="checkbox"], input[type="radio"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome (include `-moz` to future-proof). */
input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }

/** Remove inner padding and search cancel button in Safari 5 and Chrome on OS X. */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Remove inner padding and border in Firefox 4+. */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/** 1. Remove default vertical scrollbar in IE 8/9. 2. Improve readability and alignment in all browsers. */
textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ }

/* ========================================================================== Tables ========================================================================== */
/** Remove most spacing between table cells. */
table { border-collapse: collapse; border-spacing: 0; }

html { font-size: 14px; color: #000; font-family: Roboto, Arial, sans-serif; font-weight: 300; line-height: 1.875; }

h1 { font-family: "Open Sans", Arial, sans-serif; font-size: 2.5rem; font-weight: 800; line-height: 1.09090909090909; margin: 3.125rem 0; text-transform: uppercase; }

h2 { font-size: 2rem; font-weight: 900; line-height: 1.25; margin: 2.5rem 0; }

h1 + h2.subheading { margin: -1.25rem 0 1.875rem; }

h3 { display: inline-block; font-size: 1.5rem; font-weight: 200; line-height: 1.25; padding: 20px 80px 10px 0; margin: 2.1875rem 0; border-bottom: 2px solid #800; }

h4 { font-size: 1.25rem; font-weight: 300; line-height: 1.5; margin: 1.5625rem 0; }

h5 { font-size: 1rem; font-weight: 700; letter-spacing: 0.15em; line-height: 1.5625; margin: 1.5625rem 0 1.25rem; text-transform: uppercase; }

h6 { font-size: 1.125rem; font-weight: 700; line-height: 1.38888888888889; margin: 1.5625rem 0 0.9375rem; }

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child, p:first-child { margin-top: 0; }

p { margin: 0 0 1.5rem; }

ul, ol { line-height: 1.875rem; margin: 0 0 2.5rem; padding: 0 0 0 1.5rem; }

li { list-style-position: outside; margin: 0 0 0.625rem; padding: 0; }

blockquote { margin: 2.5rem 0; padding: 0.3125rem 0.625rem 0.3125rem 1.25rem; }

blockquote p { font-style: italic; line-height: 1.45833333333333; margin: 0 0 0.9375rem; }

blockquote p:last-child { margin: 0; }

legend { font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; }

label { line-height: 1.875; }

input[type=text], input[type=number], input[type=email], input[type=date], input[type=password], textarea { font-weight: 300; }

a { color: #800; text-decoration: none; -webkit-transition: color 0.3s; transition: color 0.3s; }

a:hover, a:focus, a:active { color: #3c0000; }

@media screen and (min-width: 700px) { html { font-size: 16px; } }
* { -webkit-tap-highlight-color: transparent; }

a, :focus { outline: none !important; }

html { height: 100%; }

body { background-color: #F2F2F2; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; margin: 0; min-height: 100%; }

.container { background-color: #F2F2F2; -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; padding: 0; }

.main { background-color: #FFF; padding: 0; position: relative; }

section { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin: 0 auto; max-width: 700px; padding: 20px 20px 0; }

section :last-child { margin-bottom: 0; }

.js .container { opacity: 0; -webkit-transition: background-color 0.6s, opacity 0.6s; transition: background-color 0.6s, opacity 0.6s; }

.js.loaded .container { opacity: 1; }

@media screen and (min-width: 420px) { .container { padding: 0 20px; }
  section { padding: 30px 20px 0; } }
@media screen and (min-width: 700px) { .container { padding: 0 7% 0; }
  section { padding: 40px 20px 0; } }
figure { margin: 0 0 20px; overflow: hidden; }

figure img { width: 100%; }

figure p { clear: left; padding: 15px 15px 0; }

@media screen and (min-width: 420px) { figure { margin: 0 0 40px; }
  figure p { padding: 15px 0 0; } }
figure img { display: block; margin: 0 auto; max-width: 500px; }

.intro { margin: 0 auto 40px; }

.docs { padding-top: 60px; margin: 0 auto 30px; }

.docs h2:first-child { border-top: 2px solid white; letter-spacing: 0.15em; text-transform: uppercase; font-size: 1rem; line-height: 1.875; margin: 0 0 60px; }

.masthead { background: #A28F89 url(../images/header-2.jpg) no-repeat 55% 50%; -webkit-background-size: cover cover; background-size: cover; border-top: 10px solid #000; max-width: 100%; padding: 50px 0; text-align: center; width: 100%; }

.masthead h1 { text-shadow: 0 0 16px rgba(0, 0, 0, 0.8); color: #FFF; display: inline-block; font-size: 30px; margin: 0; position: relative; }

.masthead h1:after, .masthead h1:before { background-color: #FFF; content: ""; display: block; height: 2px; left: -25px; position: absolute; top: 18px; width: 20px; }

.masthead h1:after { left: auto; right: -25px; }

.masthead h1 + h2 { color: #FFF; font-size: 18px; font-weight: 200; margin: 0; }

@media screen and (min-width: 420px) { .masthead { padding: 70px 0; }
  .masthead h1 { font-size: 36px; }
  .masthead h1:after, .masthead h1:before { left: -30px; top: 23px; width: 25px; }
  .masthead h1:after { left: auto; right: -30px; }
  .masthead h1 + h2 { font-size: 20px; } }
@media screen and (min-width: 700px) { .masthead { padding: 80px 0; }
  .masthead h1 { font-size: 55px; }
  .masthead h1:after, .masthead h1:before { left: -45px; top: 34px; width: 40px; }
  .masthead h1:after { left: auto; right: -45px; }
  .masthead h1 + h2 { font-size: 26px; margin: 5px 0 0; } }
.strapline { background: #000; max-width: 100%; padding: 24px 0; text-align: center; width: 100%; }

.strapline h1 { color: #FFF; margin: 0; font-family: 'times new roman', 'times', serif; font-size: 20px; font-style: italic; font-weight: normal; letter-spacing: 0.025em; text-transform: none; }

@media screen and (min-width: 420px) { .strapline { padding: 30px 0; }
  .strapline h1 { font-size: 26px; } }
@media screen and (min-width: 700px) { .strapline { padding: 40px 0; }
  .strapline h1 { font-size: 40px; } }
.testimonial { border-bottom: 2px solid #d6d4d1; margin-bottom: 20px; padding-bottom: 18px; }

.testimonial:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }

.testimonial blockquote { font-style: normal; margin: 0; padding: 0; }

.testimonial blockquote p { font-style: normal; }

.testimonial blockquote p:last-of-type { margin: 0 0 0.75rem; }

.testimonial blockquote p:last-child { margin: 0; }

.testimonial blockquote cite { font-weight: 700; }

.testimonial blockquote cite em { font-weight: 200; }

@media screen and (min-width: 420px) { .masthead { padding: 70px 0; }
  .masthead h1 { font-size: 36px; }
  .masthead h1:after, .masthead h1:before { left: -30px; top: 23px; width: 25px; }
  .masthead h1:after { left: auto; right: -30px; }
  .masthead h1 + h2 { font-size: 20px; } }
@media screen and (min-width: 700px) { .masthead { padding: 80px 0; }
  .masthead h1 { font-size: 55px; }
  .masthead h1:after, .masthead h1:before { left: -45px; top: 34px; width: 40px; }
  .masthead h1:after { left: auto; right: -45px; }
  .masthead h1 + h2 { font-size: 26px; margin: 5px 0 0; } }
.contacts { background: #d6d4d1; border-bottom: 10px solid #000000; margin-top: 30px; max-width: 100%; padding: 30px 0; text-align: center; width: 100%; }

.contacts h3 { padding: 0 20px 10px; font-size: 28px; }

.contacts p { margin: 0; }

.contacts h4 { margin: 2rem 0 0.5rem; }

.contacts h5 { margin: 0; }

.contacts .contact-email { margin: 10px 0; }

.contacts .contact a { font-weight: 700; }

@media screen and (min-width: 420px) { .contacts { margin-top: 40px; }
  .contacts .contact { font-size: 16px; } }
@media screen and (min-width: 700px) { .contacts { margin-top: 60px; padding: 60px 0; }
  .contacts .contact { font-size: 20px; } }
