/*
| TOC regex: (=|-)[A-Z][\w /-_\.]+
|------------------------------------------------------------------------
| Table of Contents
|------------------------------------------------------------------------
|
| =Colors
| =Reset and base
|    -Forms
|    -Text Element Spacing
|    -Text
| =Global components
|    -Buttons
|    -Form elements
|    -Consistent CSS3 enhancements
| =Grid
| =Global sections
|    -Header
|    -Menu
| =Posts/pages
|    -Blog/archive
|    -Search
|    -Contact form
|    -Post nav
| =Comments
| =Sidebars/widgets
|    -Latest tweet
|    -Calendar
|    -Search
| =Footer
| =WordPress Core stuff
|    -Gallery shortcode
|    -Image alignments and captions
|    -Non-semantic helpers
| =Diagnostics
| =Media Queries
*/

/* =Colors
---------------------------------------
Body background.................#fafafa
Dark blue.......................#24438e
Light blue......................#3298ff
Matte light blue................#84c1ff
Darkest gray....................#202020
Dark gray.......................#404040
Light gray......................#c7c7c7
Lightest gray...................#e8e8e8
*/

/*===========================================================================*\
      =Reset and base
\*===========================================================================*/
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, figure, footer, header, hgroup, menu, nav, section, menu, time, mark, audio, video {
	margin: 0; padding: 0; border: 0; font-size: 100%;
}
article, aside, figure, footer, header, hgroup, nav, section {display: block;}
audio, canvas, video {display: inline-block;}
.ie7 audio, .ie7 canvas, .ie7 video {display: inline; zoom: 1;}
audio:not([controls]) {display: none;}
html {overflow-y: scroll; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;}
hr {display: block; height: 1px; border: 0; border-top: 1px solid #c7c7c7; margin: 1.375em 0; padding: 0;}

img, object, embed, iframe, video {max-width: 100%; width: auto; height: auto;}
img {vertical-align: middle; -ms-interpolation-mode: bicubic;}
svg:not(:root) {overflow: hidden;}

table {border-spacing: 0; border-collapse: collapse; font-size: inherit;}
th {font-weight: bold; vertical-align: bottom;}
td, td img {font-weight: normal; vertical-align: top;}
tr, th, td {padding-right: 1.375em;}

/* -Forms
-----------------------------------------------------------------------------*/
label, button, input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer;}
button[disabled], input[disabled] {cursor: default;}
button, input, select, textarea {font-size: 99%; margin: 0; vertical-align: baseline; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
button, input {line-height: normal;}

input[type="checkbox"], input[type="radio"] {padding: 0;}
input[type="search"], input[type="search"]::-webkit-search-decoration, input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance: none;}
button::-moz-focus-inner, input::-moz-focus-inner {border: 0; padding: 0;}
textarea {vertical-align: top; overflow: auto; resize: vertical;}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {color: #777;}
input:-moz-placeholder, textarea:-moz-placeholder {color: #777;}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {color: #bbb;}
input:focus:-moz-placeholder, textarea:focus:-moz-placeholder {color: #bbb;}

.ie7 button, .ie7 input, .ie7 select {vertical-align: middle;}
.ie7 button, .ie7 input[type="button"], .ie7 input[type="reset"], .ie7 input[type="submit"] {width: auto; overflow: visible;}
.ie7 label {vertical-align: 2%;}
.ie7 input[type="checkbox"], .ie7 input[type="radio"] {width: 13px; height: 13px;}

/* -Text Element Spacing
-----------------------------------------------------------------------------*/
p, blockquote, dl, ol, ul, pre, table {margin-bottom: 1.375em;}
blockquote {margin-left: 1.375em; margin-right: 1.375em;}
ol, ul {margin-left: 0.25em;}
ul {list-style: disc inside;}
ul ul {margin: 0 0 0 1.375em; list-style-type: square;}
ul ul ul {margin: 0 0 0 1.375em; list-style-type: circle;}
ol {list-style: decimal inside;}
ol ol {margin: 0 0 0 1.375em; list-style-type: upper-roman;}
ol ol ol {margin: 0 0 0 1.375em; list-style-type: upper-alpha;}
nav ul, nav ol {margin: 0; list-style: none; list-style-image: none;}
dl dd, dl dl {margin: 0 0 0 1.375em;}

/* -Text
-----------------------------------------------------------------------------*/
body, button, input, select, textarea {font-family: Cabin, Arial, Helvetica, sans-serif; color: #333;}
body {background: #fff; line-height: 1.375;}

h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	line-height: 1.125;
}
h1 {font-size: 2.25em;}
h2 {font-size: 1.5em;}
h3 {font-size: 1.3125em;}
h4 {font-size: 1.125em;}
h5, h6 {font-size: 1em;}

.entry-content h1 {margin-top: 0.6111em;}
.entry-content h2 {margin-top: 0.9166em;}
.entry-content h3 {margin-top: 1.0476em; color: #3298ff; text-transform: uppercase;}
.entry-content h4 {margin-top: 1.2222em;}
.entry-content h5, .entry-content h6 {margin-top: 1.375em;}

.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child {margin-top: 0;}

a:link, a:visited {color: #3298ff; text-decoration: none; -webkit-tap-highlight-color: rgba(255,255,255,0.5);}
a:hover, a:focus {text-decoration: underline; outline: thin dotted;}
a:hover, a:active {outline: 0;}

::-moz-selection {background: #3298ff; color: #fff; text-shadow: none;}
     ::selection {background: #3298ff; color: #fff; text-shadow: none;}

blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}

abbr[title], dfn[title] {border-bottom: 1px dotted; cursor: help;}
blockquote, cite, dfn, q {font-style: italic;}
b, strong, dt, th {font-weight: bold;}
del {color: #666; text-decoration: line-through;}
ins, mark {background: #ffa; color: #333; text-decoration: none;}
mark {font-style: italic; font-weight: bold;}
pre, code, kbd, samp {font-family: Consolas, monospace;}
pre {white-space: pre; white-space: pre-wrap; word-wrap: break-word;}
kbd {padding: 1px 4px; white-space: nowrap; background: #f6f6f6; border-width: 1px 3px 3px 1px; border-style: solid; border-color: #ccc #ccc #aaa #bbb; border-radius: 3px;}
small {font-size: 75%;}
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/*===========================================================================*\
      =Global components
\*===========================================================================*/

/* -Buttons
-----------------------------------------------------------------------------*/
button, input[type="submit"], input[type="button"], input[type="reset"] {border: 0;}
.button,
a.button,
.form-error,
.form-success,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.post-nav .prev,
.post-nav .next,
.widget_calendar a {
	display: inline-block;
	padding: 4px 15px;
	border: 0;
	border-radius: 3px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-size: 100%;
	font-weight: normal;
	line-height: 1.25;
	vertical-align: baseline;
	background-color: #202020;
	-webkit-transition: background-color 0.1s linear;
	   -moz-transition: background-color 0.1s linear;
	     -o-transition: background-color 0.1s linear;
	        transition: background-color 0.1s linear;
}
.button {cursor: pointer;}
.ie7 button,
.ie7 input[type="submit"],
.ie7 input[type="button"],
.ie7 input[type="reset"] {
	padding-top: 2px;
	padding-bottom: 2px;
	line-height: 1.1875;
	vertical-align: top;
}
.button:hover, .button:focus,
button:hover, button:focus,
input[type="submit"]:hover, input[type="submit"]:focus,
input[type="button"]:hover, input[type="button"]:focus,
input[type="reset"]:hover, input[type="reset"]:focus,
.widget_calendar a:hover, .widget_calendar a:focus {
	background-color: #444;
}

/*---------- Variants ----------*/
.button.more {
	padding: 2px 6px;
	border: 1px solid #494949;
	background-color: #202020;
	color: #aaa;
	font-size: 16px;
	text-transform: none;
}
.button.more:hover, .button.more:focus {background-color: #000;}

/* -Form elements
-----------------------------------------------------------------------------*/
input.error, .form-error {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAIhSURBVDjLlZPrThNRFIWJicmJz6BWiYbIkYDEG0JbBiitDQgm0PuFXqSAtKXtpE2hNuoPTXwSnwtExd6w0pl2OtPlrphKLSXhx07OZM769qy19wwAGLhM1ddC184+d18QMzoq3lfsD3LZ7Y3XbE5DL6Atzuyilc5Ciyd7IHVfgNcDYTQ2tvDr5crn6uLSvX+Av2Lk36FFpSVENDe3OxDZu8apO5rROJDLo30+Nlvj5RnTlVNAKs1aCVFr7b4BPn6Cls21AWgEQlz2+Dl1h7IdA+i97A/geP65WhbmrnZZ0GIJpr6OqZqYAd5/gJpKox4Mg7pD2YoC2b0/54rJQuJZdm6Izcgma4TW1WZ0h+y8BfbyJMwBmSxkjw+VObNanp5h/adwGhaTXF4NWbLj9gEONyCmUZmd10pGgf1/vwcgOT3tUQE0DdicwIod2EmSbwsKE1P8QoDkcHPJ5YESjgBJkYQpIEZ2KEB51Y6y3ojvY+P8XEDN7uKS0w0ltA7QGCWHCxSWWpwyaCeLy0BkA7UXyyg8fIzDoWHeBaDN4tQdSvAVdU1Aok+nsNTipIEVnkywo/FHatVkBoIhnFisOBoZxcGtQd4B0GYJNZsDSiAEadUBCkstPtN3Avs2Msa+Dt9XfxoFSNYF/Bh9gP0bOqHLAm2WUF1YQskwrVFYPWkf3h1iXwbvqGfFPSGW9Eah8HSS9fuZDnS32f71m8KFY7xs/QZyu6TH2+2+FAAAAABJRU5ErkJggg==); background-repeat: no-repeat;}
input.success, .form-success {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGrSURBVDjLvZPZLkNhFIV75zjvYm7VGFNCqoZUJ+roKUUpjRuqp61Wq0NKDMelGGqOxBSUIBKXWtWGZxAvobr8lWjChRgSF//dv9be+9trCwAI/vIE/26gXmviW5bqnb8yUK028qZjPfoPWEj4Ku5HBspgAz941IXZeze8N1bottSo8BTZviVWrEh546EO03EXpuJOdG63otJbjBKHkEp/Ml6yNYYzpuezWL4s5VMtT8acCMQcb5XL3eJE8VgBlR7BeMGW9Z4yT9y1CeyucuhdTGDxfftaBO7G4L+zg91UocxVmCiy51NpiP3n2treUPujL8xhOjYOzZYsQWANyRYlU4Y9Br6oHd5bDh0bCpSOixJiWx71YY09J5pM/WEbzFcDmHvwwBu2wnikg+lEj4mwBe5bC5h1OUqcwpdC60dxegRmR06TyjCF9G9z+qM2uCJmuMJmaNZaUrCSIi6X+jJIBBYtW5Cge7cd7sgoHDfDaAvKQGAlRZYc6ltJlMxX03UzlaRlBdQrzSCwksLRbOpHUSb7pcsnxCCwngvM2Rm/ugUCi84fycr4l2t8Bb6iqTxSCgNIAAAAAElFTkSuQmCC); background-repeat: no-repeat;}

input[type="tel"],
input[type="url"],
input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
textarea {
	padding: 5px 25px 5px 5px;
	border: 1px solid #c7c7c7;
	-webkit-transition: border 0.15s linear;
	   -moz-transition: border 0.15s linear;
	     -o-transition: border 0.15s linear;
	        transition: border 0.15s linear;
}
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus {
	border-color: #75b9f0;
	outline: 0;
}

form input, form textarea {display: block;}
form input[type="submit"],
form input[type="button"],
form input[type="reset"],
form input[type="radio"],
form input[type="checkbox"] {
	display: inline-block;
}
textarea {padding: 5px;}

input.error, textarea.error {border-color: #ee5f5b; background-color: #fae8e6; color: #bb4444;}
input.success, textarea.success {border-color: #57a957; background-color: #e7fae6; color: #336633;}
input.error, input.success {background-position: 97% 50%;}
input.error:focus,
textarea.error:focus,
input.success:focus,
textarea.success:focus {
	background: #fff; color: #333;
}
input.error:focus, textarea.error:focus {border-color: #e9322d;}
input.success:focus, textarea.success:focus {border-color: #458845;}

.form-error, .form-success {
	display: block;
	padding: 5px 35px;
	border: 1px solid;
	background-position: 10px 50%;
	text-shadow: none;
}
.form-error {border-color: #eeaaaa; background-color: #f6e6e6; color: #bb4444;}
.form-success {border-color: #9fd684; background-color: #dff0d8; color: #336633;}
span.error {color: #e02421; font-size: 0.75em;}

/* -Consistent CSS3 enhancements
-----------------------------------------------------------------------------*/


/*===========================================================================*\
      =Grid
\*===========================================================================*/
/*
.col-1  {width: 6%;}
.col-2  {width: 14%;}
.col-3  {width: 22%;}
.col-4  {width: 30%;}
.col-5  {width: 38%;}
.col-6  {width: 46%;}
.col-7  {width: 54%;}
.col-8  {width: 62%;}
.col-9  {width: 70%;}
.col-10 {width: 78%;}
.col-11 {width: 86%;}
.col-12 {width: 94%;}

---------- Offsets ----------
.o-col-1  {margin-left: 9%;}
.o-col-2  {margin-left: 17%;}
.o-col-3  {margin-left: 25%;}
.o-col-4  {margin-left: 33%;}
.o-col-5  {margin-left: 41%;}
.o-col-6  {margin-left: 49%;}
.o-col-7  {margin-left: 57%;}
.o-col-8  {margin-left: 65%;}
.o-col-9  {margin-left: 73%;}
.o-col-10 {margin-left: 81%;}
.o-col-11 {margin-left: 89%;}

---------- Afters ------------
.a-col-1  {margin-right: 9%;}
.a-col-2  {margin-right: 17%;}
.a-col-3  {margin-right: 25%;}
.a-col-4  {margin-right: 33%;}
.a-col-5  {margin-right: 41%;}
.a-col-6  {margin-right: 49%;}
.a-col-7  {margin-right: 57%;}
.a-col-8  {margin-right: 65%;}
.a-col-9  {margin-right: 73%;}
.a-col-10 {margin-right: 81%;}
.a-col-11 {margin-right: 89%;}
============================*/

.header-inner,
.sub-nav,
.page-regular .main,
.listing .main,
.start-intro,
.tpl-start .listing,
.main-entry,
.reference-list,
.reference-types,
.sidebar,
.error404 .main,
.site-footer {
	float: left;
	position: relative;
	left: 2%;
	margin-left: 1%;
	margin-right: 1%;
}

/* 4 */
.tpl-start .listing,
.sidebar {width: 30%;}

/* 8 with extra spacing */
.page-regular .main,
.listing .main,
.main-entry {width: 60%; padding-right: 2%;}

/* 12 */
.header-inner,
.sub-nav,
.start-intro,
.reference-list,
.reference-types,
.error404 .main,
.site-footer {width: 94%;}

/*===========================================================================*\
      =Global sections
\*===========================================================================*/
.wrapper {max-width: 1060px; margin: 0 auto;}

.main, .sidebar {
	float: left;
	margin-top: 2.5em;
	margin-bottom: 1.375em;
}

/* -Header
-----------------------------------------------------------------------------*/
.site-header {
	min-height: 9em;
	overflow: hidden;
	background: #57aaff;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #84c1ff), color-stop(100%, #3298ff));
	background: -webkit-linear-gradient(top, #84c1ff 0%, #3298ff 100%);
	background:    -moz-linear-gradient(top, #84c1ff 0%, #3298ff 100%);
	background:      -o-linear-gradient(top, #84c1ff 0%, #3298ff 100%);
	background:   linear-gradient(to bottom, #84c1ff 0%, #3298ff 100%);
}

#logo {
	max-width: 185px;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 2.5em 0 20px 0;
	font-size: 1em;
}
#logo a, #logo img {display: block;}
#logo a:hover, #logo a:focus {
	background: transparent;
	text-decoration: none;
}

.navigation {position: relative; padding-left: 200px;}

/* -Menu
-----------------------------------------------------------------------------*/
.nav {float: right; overflow: hidden;}
.nav ul {margin: 0; list-style: none outside;}
.nav li {display: inline-block; margin-left: 1.375em;}
.ie7 .nav li {display: inline; zoom: 1;}
.nav li:first-child {margin-left: 0;}
.nav a {display: block;}
.nav a:hover, .nav a:focus {text-decoration: none;}

.main-nav {margin-top: 4.5em; clear: both;}
.main-nav a {
	color: #fff;
	font-size: 1.125em;
	text-transform: uppercase;
}

.extra-nav {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	padding: 3px 0;
	background: #97cbff;
	background: rgba(255,255,255,0.2);
	font-size: 0.875em;
	text-align: right;
	text-transform: uppercase;
	overflow: visible;
}
.ie7 .extra-nav {padding-right: 10px; padding-left: 10px;}
.extra-nav:before, .extra-nav:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 900px;
	background: #97cbff;
	background: rgba(255,255,255,0.2);
}
.extra-nav:before {right: 100%;}
.extra-nav:after {left: 100%;}
.extra-nav a {color: #1864b1;}

.wrapper-nav {overflow: hidden;}
.sub-nav {float: left; margin-top: 0.5em;}
.sub-nav ul {float: right;}
.sub-nav li {margin: 0 0 0.5em 0.5em;}
.sub-nav a {
	padding: 2px 6px;
	background: #3298ff;
	color: #fff;
	border-radius: 3px;
}

.main-nav .current-menu-item a,
.main-nav .current-menu-ancestor a {color: #24438e;}
.sub-nav .current-menu-item a {background: #24438e;}
.extra-nav .current-menu-item a {color: #fff;}

.main-nav a:hover, .main-nav a:focus {color: #a8d3ff;}
.sub-nav a:hover, .sub-nav a:focus {background: #333;}
.extra-nav a:hover, .extra-nav a:focus {color: #fff;}

/*---------- Inserted with JS ----------*/
#menu-toggle {
	display: none;
	float: right;
	position: relative;
	margin-top: 10px;
	padding: 10px 40px 10px 10px;
	border: 0;
	color: #fff;
	text-align: right;
	text-decoration: none;
}
#menu-toggle:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -7px;
	width: 20px;
	height: 3px;
	border-top: 3px solid #fff;
	border-bottom: 9px double #fff;
}

/*===========================================================================*\
      =Posts/pages
\*===========================================================================*/
.page-link, .edit-link, .post-edit-link {clear: both;}
.post-edit-link, .comment-edit-link {font-size: 0.75em;}

.page-title {margin-bottom: 0.5em;}
.entry-title a {color: #333;}
.entry-content {overflow: hidden;}

.image-link {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

/* http://www.netmagazine.com/tutorials/create-fluid-width-videos */
.oembed-wrap {
	position: relative;
	height: 0;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 24px;
	margin-bottom: 1.375em;
}
.oembed-wrap object,
.oembed-wrap embed,
.oembed-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* -Start page
-----------------------------------------------------------------------------*/
.start-intro {font-size: 1.1875em;}
.start-intro h1 {font-size: 48px;}
.tpl-start .sidebar {margin-top: 0;}

.list-title {
	padding: 0.25em 0.5em;
	margin-bottom: 0.5em;
	background: #202020;
	color: #fff;
	font-size: 1.125em;
	line-height: 1.5;
	text-transform: uppercase;
	font-weight: normal;
	overflow: hidden;
}
.list-title .button {float: right;}

.tpl-start .listing {margin-bottom: 1.375em;}
.tpl-start .listing .entry {overflow: hidden;}
.tpl-start .list-image {max-width: none;}

.service-links {
	width: 100%;
	margin-bottom: 1.375em;
	padding-bottom: 1.375em;
	overflow: hidden;
	line-height: 1.25;
}
.service-links a {float: left; width: 21%; padding: 0 2%; text-align: center;}
.service-links img {float: none; margin: 0;}
/*.service-link {float: left; width: 25%;}
.service-link > br {display: none;}
.service-link img {
	float: left;
	max-width: 22%;
	margin: 3px 3% 0 0;
	max-height: 35px;
}
.service-link a {
	float: left;
	width: 75%;
	max-width: 170px;
	font-weight: bold;
	color: #333;
	word-wrap: break-word;
}*/

.tpl-start .service-links {
	padding: 1.375em 0;
	border-top: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
}
/*.tpl-start .service-link {width: 21%; padding: 0 2%;}
.tpl-start .service-link img {max-height: 60px; max-width: 25%; margin: 3px 0% 0 0;}
.tpl-start .service-link a {width: 70%; margin-left: 5%; font-size: 1.25em;}*/

/* -References
-----------------------------------------------------------------------------*/
.reference .main {float: left; width: 100%;}
.reference .main-entry,
.reference .sidebar {margin-top: 0; margin-bottom: 0;}

.reference-types {margin-bottom: 1.375em;}
.js .reference-types {
	max-height: 1.75em;
	overflow: hidden;
	-webkit-transition: max-height 0.7s ease-in-out;
	   -moz-transition: max-height 0.7s ease-in-out;
	     -o-transition: max-height 0.7s ease-in-out;
	        transition: max-height 0.7s ease-in-out;
}
.js .reference-types.expanded {max-height: 25em;}
.reference-types ul {
	position: relative;
	margin: 0 4em 0 0;
	list-style: none outside;
}
.reference-types li {display: inline;}
.reference-types .button {
	display: none;
	visibility: hidden;
	position: absolute;
	top: 0;
	right: 0;
	padding: 0 4px;
	border-color: #c7c7c7;
	background: #fff;
	color: #333;
}
.reference-types .button i { /* + */
	position: relative;
	top: 2px;
	font-size: 1.5em;
	line-height: 0.3;
	font-weight: bold;
	font-style: normal;
}
.toggle-ready + .more {display: block; visibility: visible;}
.reference-types .button:hover, .reference-types .button:focus {background: #e8e8e8;}
.reference-types .current a {background: #3298ff; color: #fff;}

.reference-entry {
	margin-bottom: 1.375em;
	padding: 15px;
	overflow: hidden;
	background: #e8e8e8;
}
.reference-part,
.reference-image {float: left; width: 49%;}
.reference-part {float: right; clear: right;}
.image-desc {margin: 0.25em 0 0; font-size: 0.875em; color: #555;}

/*.reference-meta {margin-top: 1.375em;}*/
.reference-meta ul {margin: 0; list-style: none outside;}
.reference-meta .tags li {display: inline;}
.reference-meta .tags a {background: #fff;}
.reference-meta .tags a:hover, .reference-meta .tags a:focus {background: #eee;}

.reference-data {list-style: none outside;}
.reference-data li {margin-bottom: 3px;}
.reference-data a {color: #333; border-bottom: 2px dotted #aaa;}
.reference-data a:hover, .reference-data a:focus {border-bottom: 1px solid #666; text-decoration: none;}

.no-js .teaser,
.teaser-hidden {display: none; visibility: hidden;}
.js .reference-entry .entry-content {
	display: none;
	/*max-height: 7em;
	-webkit-transition: max-height 0.8s ease-out;
	   -moz-transition: max-height 0.8s ease-out;
	     -o-transition: max-height 0.8s ease-out;
	        transition: max-height 0.8s ease-out;*/
}
.js .reference-entry .entry-expanded {display: block;}

/* -Blog/archive
-----------------------------------------------------------------------------*/
.listing .entry {
	margin-bottom: 1.375em;
	border: 1px solid #c7c7c7;
}
.entry-content-wrap {padding: 10px 15px 5px;}
.listing p {margin-bottom: 0.75em;}
.lead-entry p {margin-bottom: 1.375em;}

.blog-col {
	float: left;
	width: 48%;
	max-width: 320px;
}
.blog-col-1 {margin-right: 4%;}
.blog-col .entry-title {font-size: 1.25em;}

.listing .lead-entry {margin-top: 0;}

.lucid-archive-404-fix.entry {margin: 0; border: 0;}
.lucid-archive-404-fix .entry-content-wrap {padding: 0;}

/* -Search
-----------------------------------------------------------------------------*/
.search .entry {}
.search #searchform {margin: 0.5em 0 1.375em;}

/* -Single
-----------------------------------------------------------------------------*/
.singular .entry-image {margin-bottom: 0.5em;}

.contact-block {
	float: left;
	width: 47%;
	min-height: 8.5em;
	margin: 0 3% 1.375em 0;
	font-size: 0.875em;
}
.contact-block h4 {margin: 0;}
.contact-block img {
	float: left;
	margin-right: 10px;
	border: 1px solid #c7c7c7;
}
.contact-block > br {display: none;}
.contact-block p {margin: 0;}
.contact-block.odd {clear: left;}

.single-post-nav {clear: both; overflow: hidden; margin-bottom: 0.5em;}
.single-post-nav a[rel="prev"] {float: right;}
.single-post-nav a[rel="next"] {float: left;}

/* -Contact form
-----------------------------------------------------------------------------*/
.contact-form {
	padding: 15px;
	border: 1px solid #c7c7c7;
	background: #e8e8e8;
}
.contact-form form {margin-top: 0.75em; overflow: hidden;}
.contact-form p {margin-bottom: 0.75em;}
.textarea-wrap, .text-wrap {margin-bottom: 0.75em; overflow: hidden;}
.text-wrap div {float: left; width: 48%;}
.text-wrap div:first-child {margin-right: 4%;}
.contact-form .description {display: block; color: #666; font-size: 0.75em;}
.contact-form input, .contact-form textarea {width: 100%;}
.contact-form input[type="radio"], .contact-form input[type="checkbox"] {width: auto;}

.ie7 .contact-form input {width: 87%;}
.ie7 .contact-form textarea {width: 97%;}
.ie7 .contact-form input[type="submit"] {margin-right: 7px;}

.contact-form input[type="submit"] {
	float: right;
	width: auto;
	min-width: 0;
}

/* Terms checkbox */
.terms-wrap {
	position: relative;
	margin: 15px 0;
}
.terms-wrap input {
	position: absolute;
	top: 3px;
	left: 0;
	z-index: 10;
}
.terms-wrap label {
	display: block;
	max-width: 30em;
	margin-left: 22px;
}
.terms-wrap > .field-error {
	display: block;
	margin-left: 22px;
}

/* Honeypot */
#pot {
	display: none !important;
	visibility: hidden !important;
	float: none;
	width: 100%;
	padding-top: 0.5em;
	clear: both;
}
.error-honeypot ~ form #pot {display: block !important; visibility: visible !important;}

/* -Meta
-----------------------------------------------------------------------------*/
.entry-meta {clear: both; overflow: hidden;}
.entry-meta p {margin: 0;}
.meta-data {
	padding: 0.25em 0;
	border-top: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	text-transform: uppercase;
}
.meta-data a {float: right;}
.entry-meta .social {
	padding: 0.5em 0 0;
	border-top: 1px solid #c7c7c7;
}
.entry-meta .tags {float: left;}
.share-links {float: right; margin: 0.25em 0;}

.entry .entry-date {margin: 0 0 0.25em; text-transform: uppercase;}
.blog-col .entry-date {font-size: 0.875em;}

.tags a,
.tagcloud a {
	display: inline-block;
	margin: 0 5px 8px 0;
	padding: 0 4px;
	border: 1px solid #c7c7c7;
	border-radius: 3px;
	background: #e8e8e8;
	color: #333;
}
.tagcloud a {margin: 0 5px 8px 0;}
.tags a:hover,
.tags a:focus,
.tagcloud a:hover,
.tagcloud a:focus {background: #ccc; color: #333; text-decoration: none;}

.share {
	float: left;
	width: 20px;
	height: 20px;
	margin: 0 0 0 5px;
	vertical-align: text-bottom;
	background: url('../img/sprite.png') no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.share:hover, .share:focus, .share:active {
	background: url('../img/sprite.png') no-repeat;
	outline: 0;
}
.share.facebook {background-position: 5px 1px;}
.share.twitter {background-position: -20px 2px;}
.share.googleplus {background-position: -46px 1px;}

.share.facebook:hover, .share.facebook:focus {background-position: 5px -22px;}
.share.twitter:hover, .share.twitter:focus {background-position: -20px -21px;}
.share.googleplus:hover, .share.googleplus:focus {background-position: -46px -22px;}

/* -Post nav
-----------------------------------------------------------------------------*/
.post-nav {
	position: relative;
	margin: 1.375em 0;
	padding: 0.75em 7em;
	border-top: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	list-style: none outisde;
	overflow: hidden;
	clear: both;
	text-align: center;
}
.reference .post-nav {margin-left: 3%; margin-right: 3%;}
.post-nav li {display: inline;}
.ie7 .post-nav li {zoom: 1;}
.post-nav .page {
	padding: 4px 10px;
	font-size: 1.125em;
	font-weight: 700;
}
.post-nav a {color: #333;}
.post-nav .current {color: #3298ff;}
.post-nav .prev, .post-nav .next {
	position: absolute;
	top: 0.75em;
	margin: -3px 0 0;
	background: #3298ff;
	font-size: 1em;
	font-weight: normal;
}
.post-nav .prev:hover,
.post-nav .prev:focus,
.post-nav .next:hover,
.post-nav .next:focus {background-color: #202020;}
.post-nav .prev {left: 0;}
.post-nav .next {right: 0;}

/*===========================================================================*\
      =Comments
\*===========================================================================*/
.comments {overflow: hidden; margin-top: 1.375em;}
.comments ol, .comments ul {margin: 0; list-style: none; list-style-position: outside;}
.comments .children {margin-left: -35px;}
.commentlist {padding-top: 1em;}
.commentlist > .comment {margin-bottom: 1em;}
.comment {padding-left: 65px;}
.children .comment {margin-top: 1em;}

.comments-title {margin-top: 0;}
.comment-body, .comment-meta {word-wrap: break-word;}
.comment .reply {clear: both; text-align: right;}
.required {color: red;}

/*---------- Meta ----------*/
.comment article {
	position: relative;
	padding: 10px;
	background: #e8e8e8;
}
.comment-meta {
	position: relative;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px dotted #888;
}
.comment-meta:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: -23px; /* Comment padding + pseudo element border-width */
	border-style: solid;
	border-width: 5px 7px;
	border-color: #e8e8e8 #e8e8e8 transparent transparent;
}

.comment-edit-links {float: right;}
.comment h4, .comment h5 {display: inline; margin: 0;}
.comment .published,
.comment .published:hover,
.comment .published:focus {color: #333; background: none;}
.comment .avatar {position: absolute; top: -10px; left: -75px;}

/*---------- Form ----------*/
#respond {margin-top: 0.5em;}
#commentform > div {margin-bottom: 1em;}

.comments input, .comments textarea {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.comments input[type="text"],
.comments input[type="email"],
.comments input[type="url"] {width: 75%;}
.comments textarea {width: 100%; margin-bottom: 0.5em;}

.ie7 .comments input {max-width: 75%;}
.ie7 .comments textarea {width: 90%;}

/*===========================================================================*\
      =Sidebars/widgets
\*===========================================================================*/
.widget {word-wrap: break-word;}
.sidebar .widget {margin-bottom: 1.375em;}
.widget h3 {margin: 0 0 0.25em;}
.widget p {margin-bottom: 0.75em;}
.widget_archive select {min-width: 10em;}

/* -Alig text widget
-----------------------------------------------------------------------------*/
.alig-text-widget {padding: 10px 15px 5px; color: #fff;}
.alig-text-widget a {color: inherit; border-bottom: 2px dotted #aaa;}
.alig-text-widget a:hover,
.alig-text-widget a:focus {text-decoration: none; border-bottom: 1px solid #666;}
.alig-text-widget .button,
.alig-text-widget .button:hover,
.alig-text-widget .button:focus {border: 0 !important; /* important for IE7 */}

.widget-light-blue {background: #3298ff;}
.widget-light-blue .button {background-color: #24438e;}
.widget-dark-blue {background: #24438e;}
.widget-dark-blue .button {background-color: #3298ff;}
.alig-text-widget .button:hover,
.alig-text-widget .button:focus {background-color: #333;}

.widget-light-gray {background: #e8e8e8; color: #333;}
.widget-light-gray .button {color: #fff;}
.widget-dark-gray {background: #202020;}
.widget-dark-gray .button {background-color: #e8e8e8; color: #333;}
.widget-dark-gray .button:hover,
.widget-dark-gray .button:focus {background-color: #999;}

/* -Calendar
-----------------------------------------------------------------------------*/
#calendar_wrap {max-width: 300px; font-size: 0.875em;}
#calendar_wrap table {width: 100%;}
.widget_calendar caption {border: 0;}
.widget_calendar caption, .widget_calendar tr {border-bottom: 1px dotted #bbb;}
.widget_calendar th, .widget_calendar td {
	height: 25px;
	padding: 2px;
	border: 0;
	line-height: 25px;
	text-align: center;
}
.widget_calendar a {
	display: block;
	padding-left: 0;
	padding-right: 0;
	border-radius: 2px;
}
.widget_calendar #today {background: #c9e4ed; background-clip: content-box;}

/* -Search
-----------------------------------------------------------------------------*/
#searchform {
	max-width: 400px;
	overflow: hidden;
}
#s {
	float: left;
	width: 75%;
	padding: 5px;
}
#searchsubmit {
	float: right;
	width: 20%;
	margin-top: 1px;
	padding-left: 0;
	padding-right: 0;
}

.ie7 #s {width: 70%;}
.ie7 #searchsubmit {padding-left: 15px; padding-right: 15px;}

/*===========================================================================*\
      =Footer
\*===========================================================================*/
.site-footer {
	padding: 1.375em 0 0.75em;
	margin-bottom: 2.5em;
	border-top: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	clear: both;
	color: #444;
}

.site-footer a {color: #444; border-bottom: 2px dotted #aaa;}
.site-footer a:hover, .site-footer a:focus {border-bottom: 1px solid #666; text-decoration: none;}

.vcard > span {position: relative; padding-left: 25px;}
.vcard > span:before {
	content: '';
	display: block;
	position: absolute;
	width: 18px;
	height: 18px;
	left: 0;
	top: 2px;
	background: url('../img/sprite.png') no-repeat;
}
.vcard .adr:before {background-position: 1px -48px;}
.vcard .email:before {background-position: -19px -48px;}
.vcard .tel-1:before {background-position: -41px -48px;}
.vcard .tel-2:before {background-position: -61px -48px;}

.footer-contact {
	margin: 0;
	padding: 0.5em 0 0;
}
.footer-contact > span {
	display: inline-block;
	margin-bottom: 10px;
	padding-right: 30px;
}

.site-footer .logo-old {margin-right: 10px;}
.site-footer .soliditet {float: right; margin-left: 10px;}

/*===========================================================================*\
      =WordPress Core stuff
\*===========================================================================*/

/* -Gallery shortcode
-----------------------------------------------------------------------------*/
.gallery {margin: 0 auto 1.375em; padding-top: 3px; overflow: hidden;}
.gallery dl, .gallery dt, .gallery dd {margin: 0;}
.gallery p {margin: 0;}
.gallery .gallery-item {
	float: left;
	width: 33%;
	margin: 0 0 1em;
	text-align: center;
}
.gallery-columns-2 .gallery-item {width: 50%;}
.gallery-columns-3 .gallery-item {width: 33%;}
.gallery-columns-4 .gallery-item {width: 25%;}
.gallery a {
	display: block;
	padding: 5px;
	border: 1px solid #fff;
	background: #f6f6f6;
	-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.4);
	        box-shadow: 0 0 3px rgba(0,0,0,0.4);
}
.gallery a:hover, .gallery a:focus {background: #fff;}
.gallery .gallery-caption {
	color: #888;
	font-size: 0.75em;
	margin: 0 0 12px;
}
.gallery br + br {display: none;}

/* -Image alignments and captions
-----------------------------------------------------------------------------*/
.alignleft {float: left; margin: 0.25em 1em 1em 0;}
.alignright {float: right; margin: 0.25em 0 1em 1em;}
.aligncenter {display: block; margin: 0.25em auto;}
.alignnone {margin: 0 0 1em;}

.wp-caption {
	background: #fff;
	border: 1px solid #eee;
	padding: 5px 0 0;
	text-align: center;
}
.wp-caption a {display: block; background: transparent;}
.wp-caption img {width: auto; height: auto; margin: 0; padding: 0; border: 0;}
.wp-caption a:hover img, .wp-caption a:focus img {margin: 0; padding: 0; border: 0;}
.wp-caption p.wp-caption-text {margin:0; padding: 5px 10px; font-size: 0.75em;}

/* -Non-semantic helpers
-----------------------------------------------------------------------------*/
.clearfix:before, .clearfix:after {content: ' '; display: table;}
.clearfix:after {clear: both;}
.ie7 .clearfix {zoom: 1;}
.hidden {display: none !important; 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;}

a.skiplink {
	display: block;
	padding: 0.25em 0.75em;
	background: #3298ff;
	color: #fff;
	text-align: center;
}
.skiplink:focus, .skiplink:active {text-decoration: none;}

/*===========================================================================*\
      =Media Queries
\*===========================================================================*/

/*
Consistent media query checking in JavaScript. Append to body with JS and
set z-index equal to current media query. Check z-index value to get current
media query.
*/
#media-check {position: relative; z-index: 2000;}

/* IE10 snap mode */
@-ms-viewport {width: device-width;}

/* -min-width
-----------------------------------------------------------------------------*/
@media screen and (min-width: 700px) {
	.site-header {
		background: #3297ff url('../img/bg-header.jpg') no-repeat 50% 0;
	}
}

/* -max-width
-----------------------------------------------------------------------------*/
@media screen and (max-width: 950px) {
	#media-check {z-index: 950;}

	/*.tpl-start .service-link a {font-size: 1.125em;}*/
	.tpl-start .list-image {width: 100%;}
}

@media screen and (max-width: 950px) {
	#media-check {z-index: 950;}

	.contact-block img {max-width: 50px;}
}

@media screen and (max-width: 860px) {
	#media-check {z-index: 860;}

	#logo {max-width: 150px;}
	.navigation {padding-left: 165px;}
	.nav li {margin-left: 1em;}
	.nav li:first-child {margin-left: 0;}
	.main-nav a {font-size: 1em;}
	.sub-nav ul {float: left;}
	.sub-nav li {margin-left: 0; margin-right: 0.5em;}

	.tpl-start .listing {width: 46%;}
	.tpl-start .sidebar {width: 94%;}

	.service-links a {width: 46%; margin: 10px 0;}
	.tpl-start .service-links a {width: 21%; margin: 0;}

	/*.service-link {width: 50%; margin: 0.5em 0;}
	.tpl-start .service-links {padding: 0.75em 0;}
	.tpl-start .service-link {width: 46%;}*/
}

@media screen and (max-width: 800px) {
	#media-check {z-index: 800;}

	.start-intro h1 {font-size: 32px;}
}

@media screen and (max-width: 700px) {
	#media-check {z-index: 700;}

	.page-regular .main,
	.listing .main,
	.main-entry,
	.sidebar {width: 94%; padding-right: 0;}

	.main, .sidebar {margin-top: 1.375em; margin-bottom: 0;}

	/*---------- Header ----------*/
	.site-header {min-height: 115px;}
	#logo {padding: 35px 0 20px;}
	.navigation {float: right; padding-left: 0;}
	.main-nav {margin-top: 3.5em; margin-bottom: 1em;}

	/*---------- Content ----------*/
	h1 {font-size: 2em;}

	.start-intro {font-size: 1em;}

	.tpl-start .service-links {padding: 0;}
	.tpl-start .service-links a {width: 46%; margin: 10px 0;}
}

@media screen and (max-width: 660px) {
	#media-check {z-index: 660;}

	/*---------- Header ----------*/
	.site-header {min-height: 0;}
	#logo {
		float: left;
		position: static;
		max-width: 130px;
		padding: 5px 0 10px;
	}
	.navigation {float: none; clear: both; padding-left: 0;}
	.site-header .nav {
		float: none;
		position: static;
		margin: 0;
		padding: 0;
	}
	.site-header .nav li {
		width: 100%;
		margin: 0;
		text-align: center;
	}
	.site-header .nav a {padding: 0.25em 0; color: #fff;}
	.main-nav {border-top: 1px solid #3398ff;}
	.main-nav a {
		border-top: 1px solid #93c9ff;
		border-bottom: 1px solid #3593f2;
	}
	.extra-nav a {
		border-top: 1px solid #77bbff;
		border-bottom: 1px solid #2d89e5;
	}
	.extra-nav {background: none;}
	.extra-nav:before, .extra-nav:after {display: none;}
	.site-header .current-menu-item a,
	.site-header .current-menu-ancestor a {color: #24438e;}

	.js #menu-toggle {display: block;}
	.js .navigation {
		max-height: 0;
		overflow: hidden;
		clear: both;
	}
	.js .navigation {
		-webkit-transition: max-height 0.8s ease-out;
		   -moz-transition: max-height 0.8s ease-out;
		     -o-transition: max-height 0.8s ease-out;
		        transition: max-height 0.8s ease-out;
	}
	.js .menu-open {max-height: 25em;}

	.site-footer .soliditet {max-width: 220px; margin: 0 0 10px;}
	.footer-contact {clear: both;}
}

@media screen and (max-width: 600px) {
	#media-check {z-index: 600;}

	.reference-part, .reference-image {float: none; width: auto;}
	.reference-image {margin-bottom: 1.375em;}
}

@media screen and (max-width: 550px) {
	#media-check {z-index: 550;}

	/*---------- Content ----------*/
	.start-intro h1 img {display: none; visibility: hidden;}
	.tpl-start .listing {width: 94%;}

	.contact-block {float: none; width: auto; margin-right: 0;}
	.contact-block img {max-width: 100px;}

	.comment {padding-left: 0;}
	.comment .avatar {float: left; position: static; margin-right: 10px;}
	.comments .children {margin-left: 20px;}
	.comment-meta {overflow: hidden;}
	.comment-meta:before {display: none;}
}

@media screen and (max-width: 470px) {
	#media-check {z-index: 470;}

	.blog-col {
		float: none;
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}

	h1 {font-size: 1.75em;}
	.start-intro h1 {font-size: 24px;}

	/*.service-link, .tpl-start .service-link {width: 100%; margin: 0.5em 0; padding: 0;}
	.service-link img, .tpl-start .service-link img {max-width: none; max-height: none;}
	.service-link a, .tpl-start .service-link a {}*/

	.post-nav {
		padding-left: 0;
		padding-right: 0;
		padding-top: 3em;
	}
	.post-nav .prev, .post-nav .next {
		width: 45%;
		padding-left: 0;
		padding-right: 0;
		top: 5px;
		margin: 0;
	}

	.site-footer .soliditet {
		float: none;
		display: block;
		max-width: 100%;
		margin: 10px 0;
	}
}

@media screen and (max-width: 400px) {
	#media-check {z-index: 400;}

	.sub-nav ul {float: none;}
	.sub-nav li {
		display: block;
		width: auto;
		margin: 0 0 0.5em;
		text-align: center;
	}
}

@media print {
	* {background: transparent !important; color: black !important; -webkit-box-shadow: none !important; -moz-box-shadow: none !important; box-shadow:none !important; text-shadow: none !important; filter: none !important; -ms-filter: none !important;}
	a, a:visited {text-decoration: underline;}
	a[href]:after {content: " (" attr(href) ")";}
	abbr[title]:after {content: " (" attr(title) ")";}
	a[href^="javascript:"]:after, a[href^="#"]:after {content: "";}
	pre, blockquote {border: 1px solid #999; page-break-inside: avoid;}
	thead {display: table-header-group;}
	tr, img {page-break-inside: avoid;}
	img {max-width: 100% !important;}
	p, h2, h3 {orphans: 3; widows: 3;}
	h2, h3 {page-break-after: avoid;}

	form,
	.main-nav,
	.widget_calendar {display: none !important;}
}