﻿/* HTML5 ? Boilerplate */

/***** Resets and Defaults *****/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  /*font-size: 100%;*/
  /*font: inherit;*/
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after { content: ""; content: none; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
.table-rules { margin-bottom:15px; }
.table-rules, .table-rules tr td { border:1px solid #999; }
.table-rules tr td { padding:3px; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }


/* Apply a natural box layout model to all elements */
*, 
*:before, 
*:after {
-moz-box-sizing: border-box; 
-webkit-box-sizing: border-box; 
box-sizing: border-box;
}


html { font-size: 62.5%; overflow-y: scroll; }

/*body { font:13px/1.231 sans-serif; *font-size:small; }*/

body { 
margin:0;
padding:0;
font-family: Helvetica, "Helvetica Neue", Arial, "Lucida Grande", Verdana, sans-serif;
font-size:16px;
font-size:1.6rem;
line-height:1.5em;
background-color:#0f113d;
-webkit-text-size-adjust: none;
}

select, input, textarea, button { font:99% sans-serif; }
pre, code, kbd, samp { font-family: monospace, sans-serif; }

/*html { overflow-y: scroll; }*/
a:hover, a:active, a:focus { outline: none; }
p { padding:0 0 15px 0; }
ul, ol { margin:0; padding:0 0 1.25em 2.5em; }
ol { list-style-type: decimal; }
nav ul, nav li { margin: 0; list-style:none; list-style-image: none; }
small { font-size:.85em; line-height:1.2em; }
strong, th { font-weight: bold; }
td { vertical-align: top; }
sub, sup { font-size: 75%; line-height: 0; position: relative; }
sup { top: -0.7em; }
sub { bottom: -0.25em; }

pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; padding: 15px; }
textarea { overflow: auto; resize: none; word-wrap: normal; } 
.ie6 legend, .ie7 legend { margin-left: -7px; } 
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
button, input, select, textarea { margin: 0; }
input:valid, textarea:valid   {  }
/*input:invalid, textarea:invalid { border-radius: 1px; -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red; box-shadow: 0px 0px 5px red; }*/
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid { background-color: #f0dddd; }
#month, #day { width:26px; }
#year { width:36px; }


::-moz-selection{ background: #7b9beb; color:#fff; text-shadow: none; }
::selection { background:#7b9beb; color:#fff; text-shadow: none; }
a:link { -webkit-tap-highlight-color: #7b9beb; }
button {  width: auto; overflow: visible; }
.ie7 img { -ms-interpolation-mode: bicubic; }

body, select, input, textarea { color: #636363; color: #4c4c4c; }
a, a:active, a:visited { color: #194088; }
a:hover { color: #111; }


/***** Common Formatting *****/

dl, dt, dd {
margin:0;
padding:0;
}

dl {
margin:0;
padding:0 0 15px 0;
}

dt {
margin:0;
padding:0;
font-weight:bold;
}

dd {
margin:0;
padding:0 0 0 0;
}
 
blockquote {
margin:1.25em;
padding:1.25em 1.25em 0 1.25em;
}

acronym, abbr {
cursor:help;
letter-spacing:1px;
border-bottom:1px dashed;
}

form {
}

form fieldset {
}

form fieldset legend {
padding-bottom:15px;
color:#444;
font-size:18px; 
font-size:1.8rem;
font-weight:bold;
line-height:1em;
}


/***** Global Classes *****/
 
.hide { display:none; }
.hidden { display:none; }
.offscreen { position:absolute; top:-9999em; left:-9999em; }

.clear { clear:both; }
.float-left { float:left; }
.float-right { float:right; }
.photo-left { float:left; margin:0 18px 18px 0; }
.photo-right { float:right; margin:0 0 18px 18px; }
.img-left, .image-left { float:left; margin:0 15px 15px 0; }
.img-right, .image-right { float:right; margin:0 0 15px 15px; }
 
.inline { display:inline; }
.inline-block { display:inline-block; }
.block { display:block; }

.text-left { text-align:left; }
.text-right { text-align:right; }
.text-center { text-align:center; }
.text-justify { text-align:justify; }
 
.bold { font-weight:bold; }
.italic { font-style:italic; }
.underline { border-bottom:1px solid; }
.highlight { background:#ffc; }
 
.nowrap { white-space:nowrap; }
.web-address { word-wrap:break-word; } 

.nopadding { padding:0; }
.lowpadding { padding:0 0 5px 0; }
.noindent { margin-left:0;padding-left:0; }
.nobullet { list-style:none;list-style-image:none; }

.black { color:#231F20; }
.gray, a.gray { color:#636363; color:#4c4c4c; } a.gray:hover { color:#111; }
.white { color:#ffffff; }
.red { color:#94222a; }
.green { color:#7dac00; }
.purple { color:#4a255e; }
.light-blue { color:#7b9beb; }
.medium-blue { color:#194088; }
.dark-blue { color:#0f113d; }
.orange { color: #cc3333; }

.vert-align { vertical-align:middle; }
.uppercase { text-transform:uppercase; }
.lowercase { text-transform:lowercase; }
.nocase { text-transform:none; }

.padding-0 { padding:0px; }
.padding-5 { padding:5px; }
.padding-10 { padding:10px; }
.padding-15 { padding:15px; }
.padding-20 { padding:20px; }
.padding-25 { padding:25px; }
.padding-30 { padding:30px; }
.padding-35 { padding:35px; }
.padding-40 { padding:40px; }
.padding-45 { padding:45px; }
.padding-50 { padding:50px; }
.padding-60 { padding:60px; }
.padding-70 { padding:70px; }
.padding-80 { padding:80px; }
.padding-90 { padding:90px; }
.padding-100 { padding:100px; }

.padding-t0 { padding-top:0px; }
.padding-t5 { padding-top:5px; }
.padding-t10 { padding-top:10px; }
.padding-t15 { padding-top:15px; }
.padding-t20 { padding-top:20px; }
.padding-t25 { padding-top:25px; }
.padding-t30 { padding-top:30px; }
.padding-t35 { padding-top:35px; }
.padding-t40 { padding-top:40px; }
.padding-t45 { padding-top:45px; }
.padding-t50 { padding-top:50px; }
.padding-t60 { padding-top:60px; }
.padding-t70 { padding-top:70px; }
.padding-t80 { padding-top:80px; }
.padding-t90 { padding-top:90px; }
.padding-t100 { padding-top:100px; }

.padding-r0 { padding-right:0px; }
.padding-r5 { padding-right:5px; }
.padding-r10 { padding-right:10px; }
.padding-r15 { padding-right:15px; }
.padding-r20 { padding-right:20px; }
.padding-r25 { padding-right:25px; }
.padding-r30 { padding-right:30px; }
.padding-r35 { padding-right:35px; }
.padding-r40 { padding-right:40px; }
.padding-r45 { padding-right:45px; }
.padding-r50 { padding-right:150px; }
.padding-r60 { padding-right:60px; }
.padding-r70 { padding-right:70px; }
.padding-r80 { padding-right:80px; }
.padding-r90 { padding-right:90px; }
.padding-r100 { padding-right:100px; }

.padding-b0 { padding-bottom:0px; }
.padding-b5 { padding-bottom:5px; }
.padding-b10 { padding-bottom:10px; }
.padding-b15 { padding-bottom:15px; }
.padding-b20 { padding-bottom:20px; }
.padding-b25 { padding-bottom:25px; }
.padding-b30 { padding-bottom:30px; }
.padding-b35 { padding-bottom:35px; }
.padding-b40 { padding-bottom:40px; }
.padding-b45 { padding-bottom:45px; }
.padding-b50 { padding-bottom:50px; }
.padding-b60 { padding-bottom:60px; }
.padding-b70 { padding-bottom:70px; }
.padding-b80 { padding-bottom:80px; }
.padding-b90 { padding-bottom:90px; }
.padding-b100 { padding-bottom:100px; }

.padding-l0 { padding-left:0px; }
.padding-l5 { padding-left:5px; }
.padding-l10 { padding-left:10px; }
.padding-l15 { padding-left:15px; }
.padding-l20 { padding-left:20px; }
.padding-l25 { padding-left:25px; }
.padding-l30 { padding-left:30px; }
.padding-l35 { padding-left:35px; }
.padding-l40 { padding-left:40px; }
.padding-l45 { padding-left:45px; }
.padding-l50 { padding-left:50px; }
.padding-l60 { padding-left:60px; }
.padding-l70 { padding-left:70px; }
.padding-l80 { padding-left:80px; }
.padding-l90 { padding-left:90px; }
.padding-l100 { padding-left:100px; }


.margin-0 { margin:0; }
.margin-5 { margin:5px; }
.margin-10 { margin:10px; }
.margin-15 { margin:15px; }
.margin-20 { margin:20px; }
.margin-25 { margin:25px; }
.margin-30 { margin:30px; }
.margin-35 { margin:35px; }
.margin-40 { margin:40px; }
.margin-45 { margin:45px; }
.margin-50 { margin:50px; }

.margin-t0 { margin-top:0px; }
.margin-t5 { margin-top:5px; }
.margin-t10 { margin-top:10px; }
.margin-t15 { margin-top:15px; }
.margin-t20 { margin-top:20px; }
.margin-t25 { margin-top:25px; }
.margin-t30 { margin-top:30px; }
.margin-t35 { margin-top:35px; }
.margin-t40 { margin-top:40px; }
.margin-t45 { margin-top:45px; }
.margin-t50 { margin-top:50px; }

.margin-r0 { margin-right:0px; }
.margin-r5 { margin-right:5px; }
.margin-r10 { margin-right:10px; }
.margin-r15 { margin-right:15px; }
.margin-r20 { margin-right:20px; }
.margin-r25 { margin-right:25px; }
.margin-r30 { margin-right:30px; }
.margin-r35 { margin-right:35px; }
.margin-r40 { margin-right:40px; }
.margin-r45 { margin-right:45px; }
.margin-r50 { margin-right:50px; }

.margin-b0 { margin-bottom:0px; }
.margin-b5 { margin-bottom:5px; }
.margin-b10 { margin-bottom:10px; }
.margin-b15 { margin-bottom:15px; }
.margin-b20 { margin-bottom:20px; }
.margin-b25 { margin-bottom:25px; }
.margin-b30 { margin-bottom:30px; }
.margin-b35 { margin-bottom:35px; }
.margin-b40 { margin-bottom:40px; }
.margin-b45 { margin-bottom:45px; }
.margin-b50 { margin-bottom:50px; }

.margin-l0 { margin-left:0px; }
.margin-l5 { margin-left:5px; }
.margin-l10 { margin-left:10px; }
.margin-l15 { margin-left:15px; }
.margin-l20 { margin-left:20px; }
.margin-l25 { margin-left:25px; }
.margin-l30 { margin-left:30px; }
.margin-l35 { margin-left:35px; }
.margin-l40 { margin-left:40px; }
.margin-l45 { margin-left:45px; }
.margin-l50 { margin-left:50px; }


/* Field Validation */
.error { background: #f8dbdb; border-color: #e77776; }
.error-inline { padding:0 5px 0 5px; color:#fff; background:#ff0000; }
.error-input { background:#ffffaa; }
.email-error { display:block; font-size:11px; line-height:11px; color:#E21937; width:140px; }
.needsfilled input { background:#ffffaa; }
.needsfilled select { background:#ffffaa; }


/* TABLES */

table {
margin: 0 0 25px 0;
}

.ui-table-reflow td .ui-table-cell-label, 
.ui-table-reflow th .ui-table-cell-label {
min-width:90% !important;
color:#ccc;
}

.prize-table { margin: 0 0 25px 0; border: 1px solid #999; }
.prize-table tr th { padding: 8px; border: 1px solid #999; background: #ddd; }
.prize-table tr td { padding: 8px; border: 1px solid #999; }

.winners-table { margin: 0 0 25px 0; width:100%; border: 1px solid #999; }
.winners-table tr th { padding: 4px; border: 1px solid #999; background: #ddd; }
.winners-table tr td { padding: 4px; border: 1px solid #999; }

.gridview-table {
display:inline-table;
margin:5px 0 25px 0;
border-bottom:solid 2px #999 !important;
}

.gridview-table,
.gridview-table tr td,
.gridview-table tr th {
border:solid 1px #999;
}

.gridview-table tr td,
.gridview-table tr th {
padding:6px;
}

.gridview-table tr th {
color:#fff;
background:#666;
}

table.step-table { margin-top:15px; }

table.step-table tr td {
padding:4px 0 14px 0;
color:#8ca8d3;
font-size:1.25em;
vertical-align:top;
}

table.step-table tr td.number {
padding:0 4px 10px 0;
color:#8ca8d3;
font-size:2em;
font-weight:bold;
}


/* We use this to get basic styling on all basic form elements */

input[type="text"], 
input[type="password"], 
input[type="date"], 
input[type="datetime"], 
input[type="datetime-local"], 
input[type="month"], 
input[type="week"], 
input[type="email"], 
input[type="number"], 
input[type="search"], 
input[type="tel"], 
input[type="time"], 
input[type="url"], 
select,
textarea { 
display: block; 
margin: 0; 
padding: 12px; 
/*width: 100%;*/
/*height: 2.25em;*/
color: #969696; 
font-family: inherit;
font-size: 16px;
text-transform: none;
border: 1px solid #cccccc; 
background-color: white; 
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); 
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); 
-webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out; 
-moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out; 
transition: box-shadow 0.45s, border-color 0.45s ease-in-out; 
}

body.jobs input[type="text"], 
body.jobs input[type="password"], 
body.jobs input[type="date"], 
body.jobs input[type="datetime"], 
body.jobs input[type="datetime-local"], 
body.jobs input[type="month"], 
body.jobs input[type="week"], 
body.jobs input[type="email"], 
body.jobs input[type="number"], 
body.jobs input[type="search"], 
body.jobs input[type="tel"], 
body.jobs input[type="time"], 
body.jobs input[type="url"], 
body.jobs select,
body.jobs textarea {
display: inline-block;
margin: 0 0 5px 0;
padding: 12px; 
/*width: auto;*/
height: auto;
font-size: 12px;
}

textarea {
margin: 0 0 15px 0;
height: auto;
}

select {
padding: 9px 8px 8px 8px;
height: auto;
color: #aaa;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, textarea:focus { 
-webkit-box-shadow: 0 0 5px #999999; 
-moz-box-shadow: 0 0 5px #999999; 
box-shadow: 0 0 5px #999999; 
border-color: #999999; 
}

input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, textarea:focus { 
background: #fafafa; 
border-color: #999999; 
outline: none; 
}

input[type="text"][disabled], input[type="password"][disabled], input[type="date"][disabled], input[type="datetime"][disabled], input[type="datetime-local"][disabled], input[type="month"][disabled], input[type="week"][disabled], input[type="email"][disabled], input[type="number"][disabled], input[type="search"][disabled], input[type="tel"][disabled], input[type="time"][disabled], input[type="url"][disabled], textarea[disabled] { 
background-color: #dddddd; 
}

input[type="text"].search,
input[type="text"].search:focus {
padding: 8px 58px 8px 8px; 
background-image: url(../images/form-search-icon.png);
background-position: right center;
background-repeat: no-repeat;
}


.checkbox-wrap {
margin:0 0 15px 0;
padding:0 0 0 0;
text-align:left;
}

.checkbox-wrap input,
.checkbox-wrap label {
display:inline-block;
vertical-align:text-top;
}

.checkbox-wrap label {
width:90%;
}

.date-input {
padding:0 0 25px 0;
}

.date-input #mm, .date-input #dd, .date-input #yyyy { 
margin:0 3px 0 3px; 
padding:4px 4px 4px 4px;
width:95%;
min-height:31px;
font-size:24px;
line-height:24px;
text-align:center;
background:#fff;
border:0;
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
}

.date-input #mm { width:50px; }
.date-input #dd { width:50px; }
.date-input #yyyy { width:85px; }


/* BUTTONS */

.btn-shadow {
position:relative;
display:inline-block;
margin:0 0 15px 0;
-webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); 
-moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); 
box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); 
z-index:1;
}

button,
.button {
position: relative;
display: inline-block;
margin: 0 0 15px 0;
padding: 10px 30px 10px 30px;
color: #fff !important;
font-size: 16px;
line-height: normal;
font-weight: bold;
text-transform: uppercase;
text-decoration: none;
border: 0;
background-color: #7870a6; 
-webkit-transition: background-color 300ms ease-out 0s;
-moz-transition: background-color 300ms ease-out 0s;
-o-transition: background-color 300ms ease-out 0s;
transition: background-color 300ms ease-out 0s;
-webkit-font-smoothing: antialiased;
-webkit-appearance: none;
border-radius: 20px;
}

button.orange,
.button.orange {
  background-color: #cc3333;	
}
 

button.small,
.button.small {
	padding: 8px 20px 8px 20px;
  font-size: 14px;
}

button:hover,
.button:hover { background-color: #423a76; }

button.wide { padding: 12px 50px 12px 50px; }
button.wider { padding: 12px 60px 12px 60px; }
button.widest { padding: 12px 70px 12px 70px; }

button.ui-button {
-webkit-box-shadow: none; 
-moz-box-shadow: none; 
box-shadow: none; 
}


input.file {
margin:0 10px 0 0;
height:22px;
border:1px solid #bcbcbc;
}


.no-font {
font-family: Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
-webkit-font-smoothing: antialiased;
}


/* OccupiGothic Bold */

nav#main {
font-family: 'Roboto Condensed', Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
letter-spacing:0.04rem;
}

button,
.button {
font-family: "Roboto", Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
letter-spacing:0.04rem;
-webkit-font-smoothing: antialiased;
}

.subnav {
font-family: 'Roboto Condensed', Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
letter-spacing:0.04rem;
}


h1, h2 {
font-family: 'Roboto', Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
font-weight:normal;
letter-spacing:0.04rem;
-webkit-font-smoothing: antialiased;
}

h3, h4 {
font-family: 'Roboto', Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
font-weight:normal;
letter-spacing:0.04rem;
-webkit-font-smoothing: antialiased;
}

h2.ribbon {
margin:0 0 15px -84px;
padding:9px 0 0 84px;
min-height:63px;
color:#fff;
background:url(../images/ribbon-purple.png) no-repeat 0 0;
}

h3.pull-quote {
color:#828da7;
font-family: Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
font-style:italic;
font-size:32px; 
font-size:3.2rem;
line-height:1.0em;
letter-spacing:0.04rem;
-webkit-font-smoothing: antialiased;
}

h4.pull-quote {
color:#828da7;
font-family: Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
font-style:italic;
font-size:24px; 
font-size:2.4rem;
line-height:1.0em;
letter-spacing:0.04rem;
-webkit-font-smoothing: antialiased;
}


h1, .h1 {
position:relative;
padding-bottom:15px;
color:#0f113d; /* Dark Blue */
font-size:38px; 
font-size:3.8rem;
line-height:1.0em;
}

h1.smallest { font-size:32px; font-size:3.2rem; }
h1.smaller { font-size:36px; font-size:3.6rem; }
h1.bigger { font-size:40px; font-size:4.0rem; }
h1.biggest { font-size:44px; font-size:4.4rem; }

h2, .h2 {
position:relative;
padding-bottom:15px;
color:#0f113d; /* Dark Blue */
font-size:32px; 
font-size:3.2rem;
line-height:1.0em;
}

h2.smallest { font-size:26px; font-size:2.6rem; }
h2.smaller { font-size:30px; font-size:3.0rem; }
h2.bigger { font-size:34px; font-size:3.4rem; }
h2.biggest { font-size:38px; font-size:3.8rem; }

h3, .h3 {
padding-bottom:15px;
color:#0f113d; /* Medium Blue */
font-size:28px; 
font-size:2.8rem;
line-height:normal;
}

h3.smallest { font-size:22px; font-size:2.2rem; }
h3.smaller { font-size:26px; font-size:2.6rem; }
h3.bigger { font-size:30px; font-size:3.0rem; }
h3.biggest { font-size:34px; font-size:3.4rem; }

h4, .h4 {
padding-bottom:15px;
color:#0f113d; /* Medium Blue */
font-size:22px; 
font-size:2.2rem;
line-height:normal;
}

h4.smallest { font-size:16px; font-size:1.6rem; }
h4.smaller { font-size:20px; font-size:2.0rem; }
h4.bigger { font-size:24px; font-size:2.4rem; }
h4.biggest { font-size:28px; font-size:2.8rem; }

h4.subhead {
margin:0 0 0 0;
padding:0 0 15px 0;
}


h1 sup,
h2 sup,
h3 sup,
h4 sup,
p sup { font-size:50%; padding-left:1px; }
h1 sup.sm,
h2 sup.sm,
h3 sup.sm,
h4 sup.sm { font-size:40%; padding-left:1px; top: -1em; }


h5, .h5 {
font-size:1.25em;
line-height:1.1em;
padding-bottom:15px;
color:#444;
}

h6, .h6 {
font-size:1.1em;
line-height:1.1em;
padding-bottom:15px;
color:#444;
}

body.rules h1, body.rules h2, body.rules h3, body.rules h4 {
color:#333;
font-weight:bold;
font-style:normal;
}

.small-text { font-size:11px; }

p.bigger, ol.bigger, ul.bigger, dd.bigger { font-size:115%; line-height:normal; }


/* #Base Grid
================================================== */

.row *,
.row *:before,
.row *:after                     { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

.row                             { }
.row.lefted                      { text-align: left; }
.row.centered                    { text-align: center; }
.row.righted                     { text-align: right; }
.row:after                       { content: "."; visibility: hidden; display: block; height: 0; clear: both; }

.row .columns                    { float: left; display: inline; margin: 0 0 15px 0; padding-right: 25px; width: 100%; }

.row .columns.twelve,
.row .columns.last,
.row .columns:last-child         { float: left; display: inline; margin: 0 0 15px 0; padding-right: 0; }

/* Base Grid */
.row .one.columns                { width: 8.33333%;  }
.row .two.columns                { width: 16.66667%; }
.row .three.columns              { width: 25%; }
.row .four.columns               { width: 33.33333%; }
.row .five.columns               { width: 41.66667%; }
.row .six.columns                { width: 50%; }
.row .seven.columns              { width: 58.33333%; }
.row .eight.columns              { width: 66.66667%; }
.row .nine.columns               { width: 75%; }
.row .ten.columns                { width: 83.33333%; }
.row .eleven.columns             { width: 91.66667%; }
.row .twelve.columns             { width: 100%; }

.row .one-third.columns          { width: 30%; }
.row .two-thirds.columns         { width: 70%; }

.row .columns.lefted             { float: left; display: inline; margin: 0 auto 15px auto; text-align: left; }
.row .columns.centered           { float: left; display: inline; margin: 0 auto 15px auto; text-align: center; }
.row .columns.righted            { float: left; display: inline; margin: 0 auto 15px auto; text-align: right; }
.row.centered .columns           { float: none; display: inline-block; margin: 0 auto 15px auto; }

.row .columns label              { display: block; margin-bottom:8px; color: #666; font-size: 16px; line-height: 1em;  }

.row .columns input[type=text],
.row .columns input[type=password],
.row .columns input[type=email],
.row .columns textarea,
.row .columns select                    { display: block; width: 100%; }

.row .columns.search input[type=text]   { display: block; float:left; margin-right:15px; width: 80%; }
.row .columns.search .btn-shadow        { display: block; float:left; }

.full                                   { display: block; width: 100%; }


/* Grid Extensions */

.soft-wrap-95 { width:95%; }
.soft-wrap-90 { width:90%; }
.soft-wrap-85 { width:85%; }
.soft-wrap-80 { width:80%; }
.soft-wrap-75 { width:75%; }
.soft-wrap-70 { width:70%; }
.soft-wrap-65 { width:65%; }
.soft-wrap-60 { width:60%; }
.soft-wrap-50 { width:55%; }
.soft-wrap-50 { width:50%; }
.soft-wrap-45 { width:45%; }
.soft-wrap-40 { width:40%; }
.soft-wrap-35 { width:35%; }
.soft-wrap-30 { width:30%; }
.soft-wrap-25 { width:25%; }
.soft-wrap-20 { width:20%; }
.soft-wrap-15 { width:15%; }
.soft-wrap-10 { width:10%; }
.soft-wrap-5 { width:5%; }

.soft-wrap-95.text-center { margin:0 auto; width:95%; }
.soft-wrap-90.text-center { margin:0 auto; width:90%; }
.soft-wrap-85.text-center { margin:0 auto; width:85%; }
.soft-wrap-80.text-center { margin:0 auto; width:80%; }
.soft-wrap-75.text-center { margin:0 auto; width:75%; }
.soft-wrap-70.text-center { margin:0 auto; width:70%; }
.soft-wrap-65.text-center { margin:0 auto; width:65%; }
.soft-wrap-60.text-center { margin:0 auto; width:60%; }
.soft-wrap-55.text-center { margin:0 auto; width:55%; }
.soft-wrap-50.text-center { margin:0 auto; width:50%; }
.soft-wrap-45.text-center { margin:0 auto; width:45%; }
.soft-wrap-40.text-center { margin:0 auto; width:40%; }
.soft-wrap-35.text-center { margin:0 auto; width:35%; }
.soft-wrap-30.text-center { margin:0 auto; width:30%; }
.soft-wrap-25.text-center { margin:0 auto; width:25%; }
.soft-wrap-20.text-center { margin:0 auto; width:20%; }
.soft-wrap-15.text-center { margin:0 auto; width:15%; }
.soft-wrap-10.text-center { margin:0 auto; width:10%; }
.soft-wrap-5.text-center { margin:0 auto; width:5%; }

.soft-pad-l5 { padding-left:5px; }
.soft-pad-l10 { padding-left:10px; }
.soft-pad-l15 { padding-left:15px; }
.soft-pad-l20 { padding-left:20px; }
.soft-pad-l25 { padding-left:25px; }
.soft-pad-l30 { padding-left:30px; }
.soft-pad-l35 { padding-left:35px; }
.soft-pad-l40 { padding-left:40px; }
.soft-pad-l45 { padding-left:45px; }
.soft-pad-l50 { padding-left:50px; }

.soft-pad-r5 { padding-right:5px; }
.soft-pad-r10 { padding-right:10px; }
.soft-pad-r15 { padding-right:15px; }
.soft-pad-r20 { padding-right:20px; }
.soft-pad-r25 { padding-right:25px; }
.soft-pad-r30 { padding-right:30px; }
.soft-pad-r35 { padding-right:35px; }
.soft-pad-r40 { padding-right:40px; }
.soft-pad-r45 { padding-right:45px; }
.soft-pad-r50 { padding-right:50px; }

.soft-divider { padding:0 5px 0 5px; }


/* #STRUCTURE
================================================== */

#wrap {
position:relative;
margin:0 auto 0 auto;
padding:25px 25px 25px 25px;
width:960px;
text-align:left;
background:#fff;
}

body.sidebar #wrap {
background:#fff url(../images/bg-sidebar.png) no-repeat right 50px;
}


#wrap section {
padding:20px 25px 5px 25px;
}

header#pageHeader {
position:relative;
margin:0 auto 0 auto;
padding:0 0 0 0;
width:100%;
background:#fff;
}

header#pageHeader hgroup {
margin:0 auto 0 auto;
padding:15px;
width:960px;
}

header#pageHeader h1#logo {
position:relative;
margin:5px auto 0 auto;
margin:5px 0 0 0;
width:200px;
height:70px;
color:#fff;
text-indent:-9999px;
background:url(../images/logo.png) no-repeat 0 0;
background-size: 100%;
}

header#pageHeader h1#logo a {
display:block;
width:100%;
height:100%;
text-decoration:none;
}

header#pageHeader hgroup {
position:relative;
margin:0 auto 0 auto;
max-width:960px;
height:110px;
}

header#pageHeader h4.phone {
position:absolute;
bottom:0;
right:35px;
color:#7a868c;
}

nav#login {
margin:0 0 25px 0;
}

#nav-wrap {
position:relative;
background:#423a76;
z-index:100;
}

nav#main {
display:table;
margin:0 auto 0 auto;
padding:0 0 0 0;
width:960px;
font-size:18px;
line-height:normal;
font-weight:normal;
text-align:left;
text-transform:uppercase;
}

nav#main ul {
display:table-row;
margin:0 auto 0 auto;
padding:0;
width:960px;
}

nav#main ul li {
display:table-cell;
text-align:center;
}

nav#main ul li a {
display:block;
margin:0;
padding:20px 1.70em 20px 1.70em;
padding:15px 25px 15px 25px;
text-decoration:none;
color:#bbc9eb;
border-left:1px solid #1e315f;
border-left:1px solid rgba(255,255,255,0.1);
-webkit-transition: all 300ms ease-in-out 0s;
-moz-transition: all 300ms ease-in-out 0s;
-o-transition: all 300ms ease-in-out 0s;
transition: all 300ms ease-in-out 0s;
}

nav#main ul li:first-child a { border-left:0px solid #1e315f; }


/* Hover States */

nav#main ul li a:hover {
color:#fff;
background:#0f113d;
}


/* Current Page States */

body.home nav#main ul li#nav-home a { color:#fff; background:#0f113d; }
body.documents nav#main ul li#nav-documents a { color:#fff; background:#0f113d; }
body.faqs nav#main ul li#nav-faqs a { color:#fff; background:#0f113d; }
body.contact nav#main ul li#nav-contact a { color:#fff; background:#0f113d; }
body.jobs nav#main ul li#nav-jobs a { color:#fff; background:#0f113d; }


nav#class { margin:25px 0 0 0; }
nav#class button { margin-right:15px; }


#hero-wrap {
background:none;
}

#hero-wrap .slider-wrap {
margin:0 auto 0 auto;
width:960px;
}

.login-box {
padding:15px;
-webkit-border-radius: 8px;    
border-radius: 8px;
-webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .4);
box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .4);
background:#eee;
}


/* CONTENT */

#content-wrap { }

#content-wrap.padding-t5 { padding:5px 0 0 0; }
#content-wrap.padding-t10 { padding:10px 0 0 0; }
#content-wrap.padding-t15 { padding:15px 0 0 0; }
#content-wrap.padding-t20 { padding:20px 0 0 0; }
#content-wrap.padding-t25 { padding:25px 0 0 0; }
#content-wrap.padding-t30 { padding:30px 0 0 0; }
#content-wrap.padding-t35 { padding:35px 0 0 0; }
#content-wrap.padding-t40 { padding:40px 0 0 0; }
#content-wrap.padding-t45 { padding:45px 0 0 0; }
#content-wrap.padding-t50 { padding:50px 0 0 0; }
#content-wrap.padding-t55 { padding:50px 0 0 0; }
#content-wrap.padding-t60 { padding:60px 0 0 0; }
#content-wrap.padding-t65 { padding:50px 0 0 0; }
#content-wrap.padding-t70 { padding:70px 0 0 0; }
#content-wrap.padding-t75 { padding:75px 0 0 0; }
#content-wrap.padding-t80 { padding:80px 0 0 0; }
#content-wrap.padding-t85 { padding:50px 0 0 0; }
#content-wrap.padding-t90 { padding:90px 0 0 0; }
#content-wrap.padding-t95 { padding:50px 0 0 0; }
#content-wrap.padding-t100 { padding:100px 0 0 0; }


#content {
float:left;
padding:25px;
width: 100%;
}

body.sidebar #content {
width:620px;
}

#sidebar {
display:none;
float:right;
position:relative;
margin:0 0 0 0;
right:-25px;
bottom:0;
padding:40px 10px 25px 60px;
width:290px;
}

body.sidebar #sidebar {
display:block;
}

#sidebar ul.subnav {
margin:0 0 25px 0;
padding:65px 0 0 0;
font-size:17px;
text-transform:uppercase;
list-style:none;
background:url(../images/clipboard-icon.png) no-repeat 0 0;
}

#sidebar ul.subnav li {
margin:0 0 10px 0;
padding:0;
color:#7a868c;
}

#sidebar ul.subnav li a {
text-decoration:none;
-webkit-transition: color 200ms ease-out 0s;
-moz-transition: color 200ms ease-out 0s;
-o-transition: color 200ms ease-out 0s;
transition: color 200ms ease-out 0s;
}

#sidebar ul.subnav ul {
margin:5px 5px 15px 10px;
padding:0 0 0 0;
font-size:14px;
list-style:square;
}

#sidebar ul.subnav ul li {
margin:0 0 0 0;
padding:0;
}

#sidebar ul.subnav li a { color:#6ba2b8; }
#sidebar ul.subnav li a:hover { color:#0f113d;}
#sidebar ul.subnav li.active a { color:#0f113d;}



#sidebar form.quick-contact {
margin:0 0 25px 0;
padding:65px 0 0 0;
font-family: 'Roboto Condensed', Helvetica, "Helvetica Neue", Arial, Verdana, sans-serif;
letter-spacing:0.04rem;
font-size:14px;
text-transform:uppercase;
list-style:none;
background:url(../images/clipboard-icon.png) no-repeat 0 0;
}

#sidebar form.quick-contact h4 {
	padding-bottom:15px;
	color:#0f113d; /* Medium Blue */
	font-size:16px; 
	font-size:1.6rem;
	font-weight: bold;
	line-height:normal;
}

#sidebar form.quick-contact p {
margin:0 0 10px 0;
padding:0;
color:#7a868c;
}

#sidebar form.quick-contact p a {
text-decoration:none;
-webkit-transition: color 200ms ease-out 0s;
-moz-transition: color 200ms ease-out 0s;
-o-transition: color 200ms ease-out 0s;
transition: color 200ms ease-out 0s;
}



.section {
clear:both;
position:relative;
margin-bottom:25px;
padding:15px 15px 0 15px;
background:#eee;
-webkit-border-radius: 8px;    
border-radius: 8px;
}

.section.blue {
background:#e5ebf9;
}

.section .header.centered {
margin:10px 0 10px 0;
text-align:center;
}

.section.expandable .header.centered {
width:94%
}

.section.expandable .header { padding-right:50px; }

.section .header.centered h1,
.section .header.centered h2,
.section .header.centered h3,
.section .header.centered h4,
.section .header.centered .row {
display:inline-block;
margin:0 10px 0 10px;
vertical-align:top;
}

.collapse-button {
display:block;
position:absolute;
top:12px;
right:18px;
width:28px;
height:29px;
text-indent:-9999px;
background:url(../images/icon-plus.png) no-repeat 0 0;
cursor:pointer;
z-index:10;
}

.collapse-button.opened {
background:url(../images/icon-minus.png) no-repeat 0 0;
}

.answer {
  margin-bottom: 25px;
	padding: 10px 10px 0 10px;
	background-color: #eee;
}


/* Modals */

.ui-widget-overlay {
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#000;
opacity:0.8;
filter:Alpha(Opacity=80);
z-index:500;
}

.ui-dialog {
position:absolute;
margin:50px 0 0 0;
padding:25px;
width:80% !important;
max-width:600px;
border:10px solid #3a5373;
outline:0;
background:url(../images/white-90.png);
background:rgba(255,255,255,0.9);
-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.15);
-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.15);
box-shadow:0px 0px 6px 2px rgba(0,0,0,0.15);
z-index:501;
}

.ui-dialog .centered { text-align:center; }

.ui-dialog-content { margin-bottom:25px; text-align:left; }
.ui-dialog-content .content { padding:15px 25px 25px 25px; }
.ui-dialog-content .content.rules { text-align:left; }
.ui-dialog-content ul { text-align:left; }
.ui-dialog-content ul.spaced-list li { padding:0 0 10px 0; }
.ui-dialog-content p.action-link { padding:0 0 5px 0; }
.ui-dialog-content h2 { padding:0 0 15px 0; }

.ui-dialog-content .bottom {
margin:0 0 0 0;
padding:0;
font-size:11px;
line-height:1.1em;
border-top:1px solid #bcbcbc;
overflow:hidden;
}

.ui-dialog-content .bottom h3 {
font-size:16px;
line-height:1.1em;
}

.ui-dialog-content .bottom h3 sup {
font-size:11px;
}

.ui-dialog-content .bottom .grand,
.ui-dialog-content .bottom .first,
.ui-dialog-content .bottom .second {
float:left;
padding:8px 8px 0 8px;
width:27%;
min-height:90px;
border-right:1px solid #bcbcbc;
}

.ui-dialog-content .bottom .second {
border-right:none;
}


button.ui-dialog-titlebar-close {
position:absolute;
top:10px;
right:10px;
margin:0;
padding:0;
width:20px;
height:20px;
border:none;
border:0;
outline:0;
background:transparent url(../images/btn-close.png) no-repeat center center;
text-indent:-9999px;
z-index:100;
}


/* #Class Specific
================================================== */

.column-left {
float:left;
margin:0 40px 0 0;
width:42%;
}

.column-right {
float:left;
width:42%;
}

.columns-2 {
-moz-column-count: 2;
-moz-column-gap: 25px;
-webkit-column-count: 2;
-webkit-column-gap: 25px;
column-count: 2;
column-gap: 25px;
}

.columns-3 {
-moz-column-count: 3;
-moz-column-gap: 25px;
-webkit-column-count: 3;
-webkit-column-gap: 25px;
column-count: 3;
column-gap: 25px;
}

.callout-box-wrap {
display:inline-block;
margin:20px 0 25px 50px;
}

.callout-box {
padding:20px 10px 15px 20px;
background:url(../images/callout-box-bg.png) repeat-x 0 0;
-webkit-border-top-left-radius: 4px;
-webkit-border-top-right-radius: 12px;
-moz-border-radius-topleft: 4px;
-moz-border-radius-topright: 12px;
border-top-left-radius: 4px;
border-top-right-radius: 12px;
border:1px solid #ddd;
background:url(../images/callout-box-bg.png) repeat-x right 0;
overflow:hidden;
}

.project-photos {
overflow:hidden;
}

.project-photos img {
float:left;
margin:0 25px 25px 0;
max-width:43%;
height:auto;
}


/* FOOTER */

footer#pageFooter {  }

footer#pageFooter .inside {
width:960px;
margin:0 auto 0 auto;
padding:25px;
color:#fff;
}


/*
.clearfix:after {
visibility:hidden;
display:block;
font-size:0;
content:" ";
clear:both;
height:0;
}
*/


/* #StackTable
================================================== */
.stacktable { width: 100%; }
.stacktable th { padding:5px; text-align:center; border:1px solid #999; background:#eee; }
.stacktable th.st-head-row-main { padding:5px; border:0px solid #999; background:none; }
.stacktable td { padding:5px; border:1px solid #999; }
.st-head-row { padding-top: 1em; }
.st-head-row.st-head-row-main { font-size: 1.5em; padding-top: 0; }
.st-key { width: 49%; text-align: right; padding-right: 1%; }
.st-val { width: 49%; padding-left: 1%; }

.stacktable.large-only { display: table; }
.stacktable.small-only { display: none; }

@media (max-width: 600px) {
  .large-only { display: none !important; }
  .stacktable.small-only { display: table; }
}

@media (max-width: 400px) {
  .stacktable.small-only { font-size:12px; }
}


/* #Royal Slider Overwrites
================================================== */

.royalSlider * {
-moz-box-sizing: content-box; 
-webkit-box-sizing: content-box; 
box-sizing: content-box;
}

.royalSlider { 
position: relative; 
width: 100%; 
height: 350px; 
direction: ltr; 
overflow: hidden; 
}

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

.gallery {
max-width: 726px;
}

.rsUni .rsThumbsHor { width: 100%; height: 83px; }
.rsUni .rsThumbsVer { width: 17%; height: 100%; position: absolute; top: 0; right: 0; border-left: 1px solid #EDEDED; }
.rsUni.rsWithThumbsHor .rsThumbsContainer { position: relative; height: 100%; }
.rsUni.rsWithThumbsVer .rsThumbsContainer { position: relative; width: 100%; }
.rsUni .rsThumb { float: left; overflow: hidden; width: 100%; min-height: 12px; max-height: 83px; border-bottom: 1px solid #EDEDED; }
.rsMinW .rsBullets { bottom: 10px; }
.rsMinW .rsBullet.rsNavSelected span { background: #7b9beb; }


.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.hidden { display: none; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


.validation-summary-valid: { display:none; }
.validation-summary-errors { margin:0 0 10px 0; color:#fd1c3d; }
.validation-summary-errors ul { margin:0px; padding:0px; }
.input-validation-error, .check-invalid { background-color:rgb(255,192,192); }
.field-validation-error, #fbexists { color:#fd1c3d; font-size:12px; }
.validation-summary-errors li { list-style:none; }

.placeholder { color:#666; }
::-webkit-input-placeholder { color:#999; white-space:pre-wrap; }
:-moz-placeholder { color:#666; }
::-moz-placeholder { color:#666; }
:-ms-input-placeholder { color:#666; white-space:pre-wrap; }