/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Reset

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
 html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, size-5, strike, strong, sub, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
     margin: 0;
     padding: 0;
     border: 0;
     font-size: 100%;
     vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
 article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
     display: block;
}
 body {
     line-height: 1;
}
 ol, ul {
     list-style: none;
}
 blockquote, q {
     quotes: none;
}
 blockquote:before, blockquote:after {
     content: '';
     content: none;
}
 q:before, q:after {
     content: '';
     content: none;
}
 table {
     border-collapse: collapse;
     border-spacing: 0;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Bootstrap Grid

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*! * bootstrap-grid v1.1.0 * Copyright 2015 Santeri Hiltunen * Licensed under MIT (https://github.com/Hilzu/bootstrap-grid/blob/master/LICENSE) */
 @-ms-viewport {
     width: device-width;
}
 .visible-xs, .visible-sm, .visible-md, .visible-lg {
     display: none !important;
}
 .visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block {
     display: none !important;
}
 @media (max-width: 767px) {
     .visible-xs {
         display: block !important;
    }
     table.visible-xs {
         display: table !important;
    }
     tr.visible-xs {
         display: table-row !important;
    }
     th.visible-xs, td.visible-xs {
         display: table-cell !important;
    }
}
 @media (max-width: 767px) {
     .visible-xs-block {
         display: block !important;
    }
}
 @media (max-width: 767px) {
     .visible-xs-inline {
         display: inline !important;
    }
}
 @media (max-width: 767px) {
     .visible-xs-inline-block {
         display: inline-block !important;
    }
}
 @media (min-width: 768px) and (max-width: 991px) {
     .visible-sm {
         display: block !important;
    }
     table.visible-sm {
         display: table !important;
    }
     tr.visible-sm {
         display: table-row !important;
    }
     th.visible-sm, td.visible-sm {
         display: table-cell !important;
    }
}
 @media (min-width: 768px) and (max-width: 991px) {
     .visible-sm-block {
         display: block !important;
    }
}
 @media (min-width: 768px) and (max-width: 991px) {
     .visible-sm-inline {
         display: inline !important;
    }
}
 @media (min-width: 768px) and (max-width: 991px) {
     .visible-sm-inline-block {
         display: inline-block !important;
    }
}
 @media (min-width: 992px) and (max-width: 1199px) {
     .visible-md {
         display: block !important;
    }
     table.visible-md {
         display: table !important;
    }
     tr.visible-md {
         display: table-row !important;
    }
     th.visible-md, td.visible-md {
         display: table-cell !important;
    }
}
 @media (min-width: 992px) and (max-width: 1199px) {
     .visible-md-block {
         display: block !important;
    }
}
 @media (min-width: 992px) and (max-width: 1199px) {
     .visible-md-inline {
         display: inline !important;
    }
}
 @media (min-width: 992px) and (max-width: 1199px) {
     .visible-md-inline-block {
         display: inline-block !important;
    }
}
 @media (min-width: 1200px) {
     .visible-lg {
         display: block !important;
    }
     table.visible-lg {
         display: table !important;
    }
     tr.visible-lg {
         display: table-row !important;
    }
     th.visible-lg, td.visible-lg {
         display: table-cell !important;
    }
}
 @media (min-width: 1200px) {
     .visible-lg-block {
         display: block !important;
    }
}
 @media (min-width: 1200px) {
     .visible-lg-inline {
         display: inline !important;
    }
}
 @media (min-width: 1200px) {
     .visible-lg-inline-block {
         display: inline-block !important;
    }
}
 @media (max-width: 767px) {
     .hidden-xs {
         display: none !important;
    }
}
 @media (min-width: 768px) and (max-width: 991px) {
     .hidden-sm {
         display: none !important;
    }
}
 @media (min-width: 992px) and (max-width: 1199px) {
     .hidden-md {
         display: none !important;
    }
}
 @media (min-width: 1200px) {
     .hidden-lg {
         display: none !important;
    }
}
 .visible-print {
     display: none !important;
}
 @media print {
     .visible-print {
         display: block !important;
    }
     table.visible-print {
         display: table !important;
    }
     tr.visible-print {
         display: table-row !important;
    }
     th.visible-print, td.visible-print {
         display: table-cell !important;
    }
}
 .visible-print-block {
     display: none !important;
}
 @media print {
     .visible-print-block {
         display: block !important;
    }
}
 .visible-print-inline {
     display: none !important;
}
 @media print {
     .visible-print-inline {
         display: inline !important;
    }
}
 .visible-print-inline-block {
     display: none !important;
}
 @media print {
     .visible-print-inline-block {
         display: inline-block !important;
    }
}
 @media print {
     .hidden-print {
         display: none !important;
    }
}
 .clearfix:before, .clearfix:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after {
     content: " ";
     display: table;
}
 .clearfix:after, .container:after, .container-fluid:after, .row:after {
     clear: both;
}
 .container {
     margin-right: auto;
     margin-left: auto;
     padding-left: 15px;
     padding-right: 15px;
}
 @media (min-width: 768px) {
     .container {
         width: 750px;
    }
}
 @media (min-width: 992px) {
     .container {
         width: 970px;
    }
}
 @media (min-width: 1200px) {
     .container {
         width: 1170px;
    }
}
 .container-fluid {
     margin-right: auto;
     margin-left: auto;
     padding-left: 15px;
     padding-right: 15px;
}
 .row {
     margin-left: -15px;
     margin-right: -15px;
}
 .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
     position: relative;
     min-height: 1px;
     padding-left: 15px;
     padding-right: 15px;
}
 .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
     float: left;
}
 .col-xs-12 {
     width: 100%;
}
 .col-xs-11 {
     width: 91.66666667%;
}
 .col-xs-10 {
     width: 83.33333333%;
}
 .col-xs-9 {
     width: 75%;
}
 .col-xs-8 {
     width: 66.66666667%;
}
 .col-xs-7 {
     width: 58.33333333%;
}
 .col-xs-6 {
     width: 50%;
}
 .col-xs-5 {
     width: 41.66666667%;
}
 .col-xs-4 {
     width: 33.33333333%;
}
 .col-xs-3 {
     width: 25%;
}
 .col-xs-2 {
     width: 16.66666667%;
}
 .col-xs-1 {
     width: 8.33333333%;
}
 .col-xs-pull-12 {
     right: 100%;
}
 .col-xs-pull-11 {
     right: 91.66666667%;
}
 .col-xs-pull-10 {
     right: 83.33333333%;
}
 .col-xs-pull-9 {
     right: 75%;
}
 .col-xs-pull-8 {
     right: 66.66666667%;
}
 .col-xs-pull-7 {
     right: 58.33333333%;
}
 .col-xs-pull-6 {
     right: 50%;
}
 .col-xs-pull-5 {
     right: 41.66666667%;
}
 .col-xs-pull-4 {
     right: 33.33333333%;
}
 .col-xs-pull-3 {
     right: 25%;
}
 .col-xs-pull-2 {
     right: 16.66666667%;
}
 .col-xs-pull-1 {
     right: 8.33333333%;
}
 .col-xs-pull-0 {
     right: auto;
}
 .col-xs-push-12 {
     left: 100%;
}
 .col-xs-push-11 {
     left: 91.66666667%;
}
 .col-xs-push-10 {
     left: 83.33333333%;
}
 .col-xs-push-9 {
     left: 75%;
}
 .col-xs-push-8 {
     left: 66.66666667%;
}
 .col-xs-push-7 {
     left: 58.33333333%;
}
 .col-xs-push-6 {
     left: 50%;
}
 .col-xs-push-5 {
     left: 41.66666667%;
}
 .col-xs-push-4 {
     left: 33.33333333%;
}
 .col-xs-push-3 {
     left: 25%;
}
 .col-xs-push-2 {
     left: 16.66666667%;
}
 .col-xs-push-1 {
     left: 8.33333333%;
}
 .col-xs-push-0 {
     left: auto;
}
 .col-xs-offset-12 {
     margin-left: 100%;
}
 .col-xs-offset-11 {
     margin-left: 91.66666667%;
}
 .col-xs-offset-10 {
     margin-left: 83.33333333%;
}
 .col-xs-offset-9 {
     margin-left: 75%;
}
 .col-xs-offset-8 {
     margin-left: 66.66666667%;
}
 .col-xs-offset-7 {
     margin-left: 58.33333333%;
}
 .col-xs-offset-6 {
     margin-left: 50%;
}
 .col-xs-offset-5 {
     margin-left: 41.66666667%;
}
 .col-xs-offset-4 {
     margin-left: 33.33333333%;
}
 .col-xs-offset-3 {
     margin-left: 25%;
}
 .col-xs-offset-2 {
     margin-left: 16.66666667%;
}
 .col-xs-offset-1 {
     margin-left: 8.33333333%;
}
 .col-xs-offset-0 {
     margin-left: 0%;
}
 @media (min-width: 768px) {
     .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
         float: left;
    }
     .col-sm-12 {
         width: 100%;
    }
     .col-sm-11 {
         width: 91.66666667%;
    }
     .col-sm-10 {
         width: 83.33333333%;
    }
     .col-sm-9 {
         width: 75%;
    }
     .col-sm-8 {
         width: 66.66666667%;
    }
     .col-sm-7 {
         width: 58.33333333%;
    }
     .col-sm-6 {
         width: 50%;
    }
     .col-sm-5 {
         width: 41.66666667%;
    }
     .col-sm-4 {
         width: 33.33333333%;
    }
     .col-sm-3 {
         width: 25%;
    }
     .col-sm-2 {
         width: 16.66666667%;
    }
     .col-sm-1 {
         width: 8.33333333%;
    }
     .col-sm-pull-12 {
         right: 100%;
    }
     .col-sm-pull-11 {
         right: 91.66666667%;
    }
     .col-sm-pull-10 {
         right: 83.33333333%;
    }
     .col-sm-pull-9 {
         right: 75%;
    }
     .col-sm-pull-8 {
         right: 66.66666667%;
    }
     .col-sm-pull-7 {
         right: 58.33333333%;
    }
     .col-sm-pull-6 {
         right: 50%;
    }
     .col-sm-pull-5 {
         right: 41.66666667%;
    }
     .col-sm-pull-4 {
         right: 33.33333333%;
    }
     .col-sm-pull-3 {
         right: 25%;
    }
     .col-sm-pull-2 {
         right: 16.66666667%;
    }
     .col-sm-pull-1 {
         right: 8.33333333%;
    }
     .col-sm-pull-0 {
         right: auto;
    }
     .col-sm-push-12 {
         left: 100%;
    }
     .col-sm-push-11 {
         left: 91.66666667%;
    }
     .col-sm-push-10 {
         left: 83.33333333%;
    }
     .col-sm-push-9 {
         left: 75%;
    }
     .col-sm-push-8 {
         left: 66.66666667%;
    }
     .col-sm-push-7 {
         left: 58.33333333%;
    }
     .col-sm-push-6 {
         left: 50%;
    }
     .col-sm-push-5 {
         left: 41.66666667%;
    }
     .col-sm-push-4 {
         left: 33.33333333%;
    }
     .col-sm-push-3 {
         left: 25%;
    }
     .col-sm-push-2 {
         left: 16.66666667%;
    }
     .col-sm-push-1 {
         left: 8.33333333%;
    }
     .col-sm-push-0 {
         left: auto;
    }
     .col-sm-offset-12 {
         margin-left: 100%;
    }
     .col-sm-offset-11 {
         margin-left: 91.66666667%;
    }
     .col-sm-offset-10 {
         margin-left: 83.33333333%;
    }
     .col-sm-offset-9 {
         margin-left: 75%;
    }
     .col-sm-offset-8 {
         margin-left: 66.66666667%;
    }
     .col-sm-offset-7 {
         margin-left: 58.33333333%;
    }
     .col-sm-offset-6 {
         margin-left: 50%;
    }
     .col-sm-offset-5 {
         margin-left: 41.66666667%;
    }
     .col-sm-offset-4 {
         margin-left: 33.33333333%;
    }
     .col-sm-offset-3 {
         margin-left: 25%;
    }
     .col-sm-offset-2 {
         margin-left: 16.66666667%;
    }
     .col-sm-offset-1 {
         margin-left: 8.33333333%;
    }
     .col-sm-offset-0 {
         margin-left: 0%;
    }
}
 @media (min-width: 992px) {
     .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
         float: left;
    }
     .col-md-12 {
         width: 100%;
    }
     .col-md-11 {
         width: 91.66666667%;
    }
     .col-md-10 {
         width: 83.33333333%;
    }
     .col-md-9 {
         width: 75%;
    }
     .col-md-8 {
         width: 66.66666667%;
    }
     .col-md-7 {
         width: 58.33333333%;
    }
     .col-md-6 {
         width: 50%;
    }
     .col-md-5 {
         width: 41.66666667%;
    }
     .col-md-4 {
         width: 33.33333333%;
    }
     .col-md-3 {
         width: 25%;
    }
     .col-md-2 {
         width: 16.66666667%;
    }
     .col-md-1 {
         width: 8.33333333%;
    }
     .col-md-pull-12 {
         right: 100%;
    }
     .col-md-pull-11 {
         right: 91.66666667%;
    }
     .col-md-pull-10 {
         right: 83.33333333%;
    }
     .col-md-pull-9 {
         right: 75%;
    }
     .col-md-pull-8 {
         right: 66.66666667%;
    }
     .col-md-pull-7 {
         right: 58.33333333%;
    }
     .col-md-pull-6 {
         right: 50%;
    }
     .col-md-pull-5 {
         right: 41.66666667%;
    }
     .col-md-pull-4 {
         right: 33.33333333%;
    }
     .col-md-pull-3 {
         right: 25%;
    }
     .col-md-pull-2 {
         right: 16.66666667%;
    }
     .col-md-pull-1 {
         right: 8.33333333%;
    }
     .col-md-pull-0 {
         right: auto;
    }
     .col-md-push-12 {
         left: 100%;
    }
     .col-md-push-11 {
         left: 91.66666667%;
    }
     .col-md-push-10 {
         left: 83.33333333%;
    }
     .col-md-push-9 {
         left: 75%;
    }
     .col-md-push-8 {
         left: 66.66666667%;
    }
     .col-md-push-7 {
         left: 58.33333333%;
    }
     .col-md-push-6 {
         left: 50%;
    }
     .col-md-push-5 {
         left: 41.66666667%;
    }
     .col-md-push-4 {
         left: 33.33333333%;
    }
     .col-md-push-3 {
         left: 25%;
    }
     .col-md-push-2 {
         left: 16.66666667%;
    }
     .col-md-push-1 {
         left: 8.33333333%;
    }
     .col-md-push-0 {
         left: auto;
    }
     .col-md-offset-12 {
         margin-left: 100%;
    }
     .col-md-offset-11 {
         margin-left: 91.66666667%;
    }
     .col-md-offset-10 {
         margin-left: 83.33333333%;
    }
     .col-md-offset-9 {
         margin-left: 75%;
    }
     .col-md-offset-8 {
         margin-left: 66.66666667%;
    }
     .col-md-offset-7 {
         margin-left: 58.33333333%;
    }
     .col-md-offset-6 {
         margin-left: 50%;
    }
     .col-md-offset-5 {
         margin-left: 41.66666667%;
    }
     .col-md-offset-4 {
         margin-left: 33.33333333%;
    }
     .col-md-offset-3 {
         margin-left: 25%;
    }
     .col-md-offset-2 {
         margin-left: 16.66666667%;
    }
     .col-md-offset-1 {
         margin-left: 8.33333333%;
    }
     .col-md-offset-0 {
         margin-left: 0%;
    }
}
 @media (min-width: 1200px) {
     .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
         float: left;
    }
     .col-lg-12 {
         width: 100%;
    }
     .col-lg-11 {
         width: 91.66666667%;
    }
     .col-lg-10 {
         width: 83.33333333%;
    }
     .col-lg-9 {
         width: 75%;
    }
     .col-lg-8 {
         width: 66.66666667%;
    }
     .col-lg-7 {
         width: 58.33333333%;
    }
     .col-lg-6 {
         width: 50%;
    }
     .col-lg-5 {
         width: 41.66666667%;
    }
     .col-lg-4 {
         width: 33.33333333%;
    }
     .col-lg-3 {
         width: 25%;
    }
     .col-lg-2 {
         width: 16.66666667%;
    }
     .col-lg-1 {
         width: 8.33333333%;
    }
     .col-lg-pull-12 {
         right: 100%;
    }
     .col-lg-pull-11 {
         right: 91.66666667%;
    }
     .col-lg-pull-10 {
         right: 83.33333333%;
    }
     .col-lg-pull-9 {
         right: 75%;
    }
     .col-lg-pull-8 {
         right: 66.66666667%;
    }
     .col-lg-pull-7 {
         right: 58.33333333%;
    }
     .col-lg-pull-6 {
         right: 50%;
    }
     .col-lg-pull-5 {
         right: 41.66666667%;
    }
     .col-lg-pull-4 {
         right: 33.33333333%;
    }
     .col-lg-pull-3 {
         right: 25%;
    }
     .col-lg-pull-2 {
         right: 16.66666667%;
    }
     .col-lg-pull-1 {
         right: 8.33333333%;
    }
     .col-lg-pull-0 {
         right: auto;
    }
     .col-lg-push-12 {
         left: 100%;
    }
     .col-lg-push-11 {
         left: 91.66666667%;
    }
     .col-lg-push-10 {
         left: 83.33333333%;
    }
     .col-lg-push-9 {
         left: 75%;
    }
     .col-lg-push-8 {
         left: 66.66666667%;
    }
     .col-lg-push-7 {
         left: 58.33333333%;
    }
     .col-lg-push-6 {
         left: 50%;
    }
     .col-lg-push-5 {
         left: 41.66666667%;
    }
     .col-lg-push-4 {
         left: 33.33333333%;
    }
     .col-lg-push-3 {
         left: 25%;
    }
     .col-lg-push-2 {
         left: 16.66666667%;
    }
     .col-lg-push-1 {
         left: 8.33333333%;
    }
     .col-lg-push-0 {
         left: auto;
    }
     .col-lg-offset-12 {
         margin-left: 100%;
    }
     .col-lg-offset-11 {
         margin-left: 91.66666667%;
    }
     .col-lg-offset-10 {
         margin-left: 83.33333333%;
    }
     .col-lg-offset-9 {
         margin-left: 75%;
    }
     .col-lg-offset-8 {
         margin-left: 66.66666667%;
    }
     .col-lg-offset-7 {
         margin-left: 58.33333333%;
    }
     .col-lg-offset-6 {
         margin-left: 50%;
    }
     .col-lg-offset-5 {
         margin-left: 41.66666667%;
    }
     .col-lg-offset-4 {
         margin-left: 33.33333333%;
    }
     .col-lg-offset-3 {
         margin-left: 25%;
    }
     .col-lg-offset-2 {
         margin-left: 16.66666667%;
    }
     .col-lg-offset-1 {
         margin-left: 8.33333333%;
    }
     .col-lg-offset-0 {
         margin-left: 0%;
    }
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Forms

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

 form {
     position: relative;
}
 label {
     font-family: "Montserrat", sans-serif;
}
 input:not([type="submit"]), textarea {
     font-family: "Montserrat", sans-serif;
     font-size: 13pt;
     width: 100%;
     border: 1px solid #ccc;
     padding: 3pt;
     margin-top: 3pt;
     margin-bottom: 6pt;
     border-radius: 1px;
     -o-transition: all 250ms ease-in-out;
     -ms-transition: all 250ms ease-in-out;
     -webkit-transition: all 250ms ease-in-out;
     transition: all 250ms ease-in-out;
}
 input:not([type="submit"]).error, textarea.error {
     -webkit-box-shadow: 0px 0px 3px 1px #f00;
     -moz-box-shadow: 0px 0px 3px 1px #f00;
     box-shadow: 0px 0px 3px 1px #f00;
     -webkit-appearance: none;
}
 input:not([type="submit"]):focus, textarea:focus {
     -webkit-box-shadow: 0px 0px 3pt 0px #7bb8e1;
     -moz-box-shadow: 0px 0px 3pt 0px #7bb8e1;
     box-shadow: 0px 0px 3pt 0px #7bb8e1;
}
 input[type="submit"] {
     margin-bottom: 8pt;
}
 #error_text {
     padding: 6pt;
     background: #f00;
     color: #fdfdfd;
     display: none;
     margin: 6pt 0;
     font-family: "Montserrat", sans-serif;
}
 #success {
     display: none;
     position: absolute;
     top: 21pt;
}
 .button, input[type=submit] {
     -webkit-appearance: none;
     font-size: 13pt;
     background: #1E6C97;
     color: #fdfdfd;
     padding: 6pt;
     -o-border-radius: 6pt;
     -ms-border-radius: 6pt;
     -webkit-border-radius: 6pt;
     border-radius: 6pt;
     padding: 13pt 16pt;
     margin-top: 13pt;
     margin-right: 6pt;
     border: 0px;
     cursor: pointer;
     display: inline-block;
     font-family: "Montserrat", sans-serif;
     -o-transition: background 250ms ease-in-out;
     -ms-transition: background 250ms ease-in-out;
     -webkit-transition: background 250ms ease-in-out;
     transition: background 250ms ease-in-out;
}
 .button:hover, input[type=submit]:hover {
     background: #3089B2;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Typography

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

 * {
     font-family: "Libre Baskerville", serif, sans-serif;
     color: #222;
     line-height: 150%;
}
 h1, h2, h3, h4, h5, h6 {
     font-family: "Montserrat", sans-serif;
     color: #444;
}
 h1 {
     font-size: 26pt;
     margin-bottom: 21pt;
}
 h2 {
     font-size: 21pt;
     margin-bottom: 16pt;
}
 p, blockquote, figcaption, figure {
     font-size: 13pt;
     padding-bottom: 13pt;
}
 a {
     font-family: inherit;
     color: #1E6C97;
     -o-transition: color 250ms ease-in-out;
     -ms-transition: color 250ms ease-in-out;
     -webkit-transition: color 250ms ease-in-out;
     transition: color 250ms ease-in-out;
}
 a:hover {
     color: #3089B2;
}
 blockquote {
     position: relative;
     font-style: italic;
}
 blockquote footer {
     font-style: normal;
     margin-left: 42pt;
}
 ul, li {
     list-style: disc;
     padding-left: 10pt;
}
 .accent {
     font-style: italic;
     font-size: 16pt;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Layout

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

 * {
     box-sizing: border-box;
}
 body.container-fluid {
     background: #fdfdfd;
     padding-left: 0px;
     padding-right: 0px;
     overflow-x: hidden;
     max-width: 100vw;
}
 #header, #footer {
     background: #ededed;
     background: url("../imgs/textures/header-bg.png");
}
 #header h1, #footer h1 {
     margin-bottom: 0px;
}
 #header h1 .branding, #footer h1 .branding {
     font-size: 21pt;
     display: inline-block;
     border: 10pt solid #1E6C97;
     color: #1E6C97;
     padding: 8pt 13pt;
     -o-transition: all 250ms ease-in-out;
     -ms-transition: all 250ms ease-in-out;
     -webkit-transition: all 250ms ease-in-out;
     transition: all 250ms ease-in-out;
}
 #header h1 .branding:hover, #footer h1 .branding:hover {
     border-color: #3089B2;
     color: #3089B2;
}
 #header a, #footer a {
     text-decoration: none;
     font-family: "Montserrat", sans-serif;
     position: relative;
}
 #header {
     padding: 13pt 21pt;
}
 #header nav {
     padding: 21pt;
}
 main.row {
     background: #fdfdfd;
}
 main.row aside {
     background: url("../imgs/textures/header-bg.png");
     padding-left: 0px;
     padding-right: 0px;
     position: relative;
}
 main.row aside header, main.row aside section {
     padding: 10pt 16pt;
}
 main.row aside header {
     background: #1E6C97;
     color: #fdfdfd;
     position: relative;
     font-family: "Montserrat", sans-serif;
}
 main.row section:not(:last-of-type) {
     margin-bottom: 42pt;
}
 img {
     max-width: 100%;
}
 #footerPhone {
     font-size: 16pt;
     font-style: italic;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Page-specific

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

 #homeContact {
     background: url("../imgs/textures/texture-2.png");
}
 #homeContent {
     padding-bottom: 0px;
}
 .home#map {
     height: 250px;
     width: 100%;
     border-bottom: 1px dashed #ccc;
}
 .contact#map {
     height: 100%;
     min-height: 500px;
}
 .product {
     margin-bottom: 42pt;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Extra Small Screens

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

@media (max-width: 500px) {
     #header h1 .branding, #footer h1 .branding {
         font-size: 13pt;
         border: 6pt solid #1E6C97;
         padding: 3pt 8pt;
    }
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Small Screens

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

@media (max-width: 767px) {
     .desktop {
         display: none;
    }
     main.row, #footer {
         padding: 8pt 13pt;
         padding-bottom: 0;
    }
     h1 {
         font-size: 21pt;
         margin-bottom: 16pt;
    }
     h2 {
         font-size: 16pt;
         margin-bottom: 13pt;
    }
     nav {
         position: absolute;
         z-index: 20;
         left: 100%;
         top: 0px;
         bottom: 0px;
         background: #fdfdfd;
         width: 0%;
         overflow: hidden;
         padding: 0;
         -o-transition: all 250ms;
         -ms-transition: all 250ms;
         -webkit-transition: all 250ms;
         transition: all 250ms;
         -webkit-box-shadow: 3px 0 3px 2px #ccc;
         -moz-box-shadow: 3px 0 3px 2px #ccc;
         box-shadow: 3px 0 3px 2px #ccc;
    }
     nav.open {
         left: 0%;
         width: 100%;
         display: block;
    }
     nav a {
         display: block;
         padding: 8pt;
    }
     #productList {
         display: none;
    }
     #footer {
         text-align: center;
         padding: 13pt 0;
    }
     #footer .branding {
         margin-bottom: 13pt;
    }
     #menu-toggle {
         position: absolute;
         top: 21pt;
         right: 13pt;
         color: #222;
         cursor: pointer;
         z-index: 25;
    }
     #menu-toggle svg {
         width: 30px;
         fill: none;
         stroke: #1E6C97;
         stroke-width: 5;
    }
     #menu-toggle svg .middle-line {
         -o-transition: opacity 300ms;
         -ms-transition: opacity 300ms;
         -webkit-transition: opacity 300ms;
         transition: opacity 300ms;
    }
     #menu-toggle svg.open .middle-line {
         opacity: 0;
    }
     blockquote {
         margin-bottom: 8pt;
    }
     input[type="submit"] {
         width: 100%;
         text-align: center;
    }
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Medium to Large Screens

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

@media (min-width: 768px) {
     .mobile {
         display: none;
    }
     main.row, #footer {
         padding: 26pt 42pt;
    }
     main.row aside {
         margin-bottom: 42pt;
    }
     section.col-md-9, section.col-md-8 {
         padding-right: 42pt;
    }
     nav {
         float: right;
    }
     nav a {
         margin-left: 42pt;
    }
     #footer {
         border-bottom: 13pt #ccc solid;
         overflow: hidden;
         padding: 0px;
         padding: 21pt;
    }
     #footer nav {
         text-align: right;
         float: none;
         margin-right: 8pt;
         position: relative;
         z-index: 0;
    }
     #copyright, #productList {
         position: relative;
         z-index: 5;
    }
     #copyright {
         float: left;
    }
     #footer a {
         display: block;
         padding: 3pt;
    }
     #productList {
         float: right;
         list-style: none;
         margin-left: 21pt;
         padding-bottom: 8pt;
         border-left: 1px dashed #ccc;
    }
     #productList li {
         list-style: none;
    }
     blockquote {
         margin-left: 100px;
    }
     blockquote:before {
         content: "\201C";
         font-size: 130pt;
         color: #1E6C97;
         width: 200px;
         position: absolute;
         top: 80px;
         left: -100px;
         font-family: "Libre Baskerville", serif;
         font-style: normal;
    }
     aside header {
         left: -5%;
         width: 105%;
    }
     #header nav a:after {
         content: '';
         position: absolute;
         left: 51%;
         right: 51%;
         height: 3pt;
         background: #1E6C97;
         -o-transition: all 250ms ease-in-out;
         -ms-transition: all 250ms ease-in-out;
         -webkit-transition: all 250ms ease-in-out;
         transition: all 250ms ease-in-out;
         bottom: -6pt;
    }
     #header nav a:hover:after {
         background: #3089B2;
         left: 0%;
         right: 0%;
    }
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Medium Screens

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

@media (min-width: 768px) and (max-width: 1100px) {
     #header nav a {
         margin-left: 26pt;
    }
}

#navDivider {
     display: none;
}

@media (min-width: 768px) and (max-width: 991px) {
     #navDivider {
         display: block;
    }
     #header nav {
         padding-top: 10pt;
         text-align: right;
    }
}
 