/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}@charset "UTF-8";
/* CSS Document */

/*--- STYLES THAT YOU PROBABLY WON'T NEED TO MESS WITH... defaults for desktop and mobile, some overridden for mobile later---*/

.debug, .debug div div, .debug div div div div, .debug div div div div div div{
    border-top: solid 2px #FF00FF;
    border-left: solid 2px #FF00FF;
    border-bottom: solid 2px #DD00DD;
    border-right: solid 2px #DD00DD;
}

.debug div, .debug div div div, .debug div div div div div{
    border-top: solid 2px #00DDBB;
    border-left: solid 2px #00DDBB;
    border-bottom: solid 2px #00BB99;
    border-right: solid 2px #00BB99;
}

div, *, .transition {
    -webkit-transition:all 0.25s;
    transition:all 0.25s;
}

div, *, *:before, *:after
{
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing:border-box;         /* Opera/IE 8+ */
}

.visible {
    -webkit-transition:all 1s;
    transition:all 1s;
    opacity:1;
}

.invisible {
    -webkit-transition:all 1s;
    transition:all 1s;
    opacity:0;
}

.element_show {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition-timing-function: cubic-bezier(0.0, 0.5, 0.5, 1);
	-ms-transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
	-webkit-transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
	transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
}

.element_hide {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition-timing-function: cubic-bezier(0.5, 0.0, 0.5, 0.5);
	-ms-transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
	-webkit-transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
	transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
}

h1,h2,h3,div{
    padding:0;
    margin:0;
}

.clear{
    clear:both;
}

.cursor, .pointer {
    cursor: pointer;
}

.absolutecenter{
    position: absolute; left: 50%; top:50%; transform: translate(-50%, -50%);
}

.left, .floatleft{
    float:left;
}

.right, .floatright{
    float:right;
}

.right{
    text-align: right;
}

.overflow{
    overflow: auto;
}

.noverflow{
    overflow: hidden !important;
}

.line0{
    line-height: 0px !important;
}

.line5{
    line-height: 5px; !important;
}

.line10{
    line-height: 10px; !important;
}

.line15{
    line-height: 15px; !important;
}

.line20{
    line-height: 20px; !important;
}

.line30{
    line-height: 30px; !important;
}

.nowrap{
    white-space: nowrap;
}

.top{
    vertical-align: top;
}

/*moved out of media query to default for mobile unless overridden*/

.nest, .nest div{
	float: left;
}

.nest .center{
	text-align:center;
	margin:auto;
}

.nest .center, .nest .center img{
	text-align:center;
	margin:auto;
}

.fullpadded {
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
}

.full, .whole{
    width:100%;
}

.half{
    width:50%;
}

.almosthalf{
	width:47.5%;
}

.notmuch{
	width:5%;
}

.almostthird{
    width:30%;
}

.third{
    width:33.333%;
}

.twothirds{
    width:66.667%;
}

.quarter, .fourth{
    width:25%;
}

.threequarters, .threefourths{
    width:75%;
}

.fifth{
    width:20%;
}

.sixth{
    width:15%;
}

.eighth{
    width:12.5%;
}

.tenth{
    width:10%;
}

@media
only screen and (min-width:980px) {

	
    .mobile_only, .phone_only, .small_only{
        display:none !important;
    }

    .desktop_only, .large_only{
        display:block;
    }

    .row div div{
        display:block;
    }

    .row div{
        display:table-cell;
    }

    .row{
        display:table;
    }

    .row .valign, .row .valign div, .row .valign img{
        vertical-align:middle;
    }

    .row .center{
        text-align:center;
        margin:auto;
    }

    .row.row div div.center{
        display:inline-block;
    }

    .row .center div img, .row .center div, .row .center div div{
        text-align:center;
        margin:auto;
    }

    .row .fillcell img, .row img.fillcell{
        display:block;
    }

    .padded{
        padding:50px;
    }

    .padl{
        padding-left:50px;
    }

    .padr{
        padding-right:50px;
    }

    .break{
        margin-bottom:25px;
    }

    .w1, .one{
        width:1px;
    }

    .w5, .five{
        width:5px;
    }

    .w10, .ten{
        width:10px;
    }

    .w15, .fifteen{
        width:15px;
    }

    .w20, .twenty{
        width:20px;
    }

    .w30, .thirty{
        width:30px;
    }

    .w40, .forty{
        width:40px;
    }

    .w50, .fifty{
        width:50px;
    }

    .w60, .sixty{
        width:60px;
    }

    .w70, .seventy{
        width:70px;
    }

    .w80, .eighty{
        width:80px;
    }

    .w90, .ninety{
        width:90px;
    }

    .w100, .hundred{
        width:100px;
    }
    
    .w105{
        width:105px;
    }

    .w110, .oneten{
        width:110px;
    }

    .w120, .onetwenty{
        width:120px;
    }

    .w130, .onethirty{
        width:130px;
    }

    .w140, .oneforty{
        width:140px;
    }

    .w150, .onefifty{
        width:150px;
    }

    .w160, .onesixty{
        width:160px;
    }

    .w170{
        width:170px;
    }

    .w180{
        width:180px;
    }

    .w190{
        width:190px;
    }

    .w200, .twohundred{
        width:200px;
    }

    .w210, .twoten{
        width:210px;
    }

    .w230, .twothirty{
        width:230px;
    }

    .w250, .twofifty{
        width:250px;
    }

    .w260, .twosixty{
        width:260px;
    }

    .w300, .threehundred{
        width:300px;
    }

    .w310, .threeten{
        width:310px;
    }

    .w320, .threetwenty{
        width:320px;
    }

    .w330, .threethirty{
        width:330px;
    }

    .w340, .threeforty{
        width:340px;
    }

    .w350, .threefifty{
        width:350px;
    }
    
	.w360{
        width:360px;
    }
    
    .w370{
        width:370px;
    }

    .w380, .threeeighty{
        width:380px;
    }

    .w390, .threeninety{
        width:390px;
    }

    .w400, .fourhundred {
        width: 400px;
    }

    .w450, .fourfifty {
        width: 450px;
    }

    .w500, .fivehundred {
        width: 500px;
    }

    .w600, .sixhundred {
        width: 600px;
    }
    
    .w670 {
        width: 670px;
    }

    .w680 {
        width: 680px;
    }

    .w700, .sevenhundred {
        width: 700px;
    }
    
    .w980 {
        width: 980px;
    }

}

.fullheight, .hfull {
    height: 100%;
}

.h10{
    height:10px;
}

.h20{
    height:20px;
}

.h25{
    height:20px;
}

.h30{
    height:30px;
}

.h40{
    height:40px;
}

.h50{
    height:50px;
}

.h60{
    height:60px;
}

.h70{
    height:70px;
}

.h80{
    height:80px;
}

.h90{
    height:90px;
}

.h100{
    height:100px;
}

.h150{
    height:150px;
}

.h180{
    height:180px;
}

.h200{
    height:200px;
}

.h210{
    height:210px;
}

.h220{
    height:220px;
}

.h230{
    height:230px;
}

.h250{
    height:250px;
}

.break2{
    margin-bottom:2px;
}

.break5{
    margin-bottom:5px;
}

.break10{
    margin-bottom:10px;
}

.break15{
    margin-bottom:15px;
}

.break20{
    margin-bottom:20px;
}

.break25{
    margin-bottom:25px;
}

.break30{
    margin-bottom:30px;
}

.break40{
    margin-bottom:40px;
}

.break50{
    margin-bottom: 50px;
}

.break100{
    margin-bottom: 100px;
}

.padr2{
    padding-right:2px;
}

.padr5{
    padding-right:5px;
}

.padr10{
    padding-right:10px;
}

.padr15{
    padding-right:15px;
}

.padr20{
    padding-right:20px;
}

.padr30{
    padding-right:30px;
}

.padr40{
    padding-right:40px;
}

.padr50{
    padding-right:50px;
}

.padr60{
    padding-right:50px;
}

.padr100{
    padding-right:100px;
}

.padr120{
    padding-right:120px;
}

.padr150{
    padding-right:150px;
}

.padr180{
    padding-right:180px;
}

.padr200{
    padding-right:200px;
}

.padl2{
    padding-left:2px;
}

.padl5{
    padding-left:5px;
}

.padl10{
    padding-left:10px;
}

.padl15{
    padding-left:15px;
}

.padl20{
    padding-left:20px;
}

.padl30{
    padding-left:30px;
}

.padl40{
    padding-left:40px;
}

.padl50{
    padding-left:50px;
}

.padl60{
    padding-left:60px;
}

.padl70{
    padding-left:70px;
}

.padl80{
    padding-left:80px;
}

.padl100{
    padding-left:100px;
}

.padl120{
    padding-left:120px;
}

.padl150{
    padding-left:150px;
}

.padl180{
    padding-left:180px;
}

.padl200{
    padding-left:200px;
}

.padt10{
    padding-top:10px;
}

.padt20{
    padding-top:20px;
}

.padt30{
    padding-top:30px;
}

.padt40{
    padding-top:40px;
}

.padt50{
    padding-top:50px;
}

.pad10{
    padding:10px;
}

.pad20{
    padding:20px;
}

.pad30{
    padding:30px;
}

.pad40{
    padding:40px;
}

.pad50{
    padding:50px;
}

.center{
    text-align:center;
}

.caps{
    text-transform:uppercase;
}

.bold{
    font-weight: 700 !important;
}

.semibold{
    font-weight: 400;
}

.thin{
	font-weight: 300 !important;
}

.italic{
    font-style: italic;
}


/*--- NOW FOR THE MORE CUSTOMIZABLE STYLES... again defaults for desktop some of which are overridden later for mobile---*/

html,body{
    width:100%;
    height:100%;
    min-height:100%;
    padding:0;
    margin:0;
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    color:#777777;
    line-height: 25px;
    font-size:16px;

}

input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option, textarea {
    font-size: 15px;
	color: #777777;
}

.column_full{
	width: 980px;
}

.column_half{
	width: 490px;
}

.column_quarter{
	width: 245px;
}

.column_left{
	width: 670px;
	padding-right:60px;
}

.column_right{
	width: 310px;
}

.column_third{
	width: 326.67px;
}

.column_twothirds{
	width: 653.3px;
}

.column_twothirdsright{
	width: 640px;
	padding-left:50px;
}

.column_twothirdsright2{
	width: 620px;
	padding-left:50px;
}

.column_twothirdsleft{
	width: 665px;
	padding-right:50px;
}

.column_halfleft{
	width: 490px;
	padding-right:80px;
}

.column_halfright{
	width: 490px;
	padding-left:80px;
}

.column_thirdleft{
	width: 310px;
	padding-right:50px;
}

.column_thirdleft2{
	width: 360px;
}

.column_thirdmid{
	width: 360px;
	padding-left:50px;
	padding-right:50px;
}

.column_thirdright{
	width: 310px;
	padding-left:50px;
}

h1, .huge {
    font-size: 42px;
    line-height: 42px;

}

h2, .large {
    font-size: 30px;
    line-height: 30px;
	
}

h3, .medium {
    font-size: 20px;
    line-height: 30px;
}

h4, .small {
    font-size: 13px;
    line-height: 17px;
}

.tiny {
    font-size: 11px;
    font-weight: 400;
    line-height: 13px;
}


.brighten, .brighten img {
    opacity: 1.0;
    filter: alpha(opacity=100);
    text-decoration: none;

}

.brighten:hover img {
    filter: brightness(130%);
    -webkit-filter: brightness(130%);
    -moz-filter: brightness(130%);
}

input[type=text], input[type=password], input[type=email], select, option {
    -webkit-appearance:none;
    color:#777777;
    border-radius: 0px;
    -moz-border-radius: 0px;
    -khtml-border-radius: 0px;
    -webkit-border-radius: 0px;
}

input[type=text], input[type=password], input[type=email]{
    border: solid 1px #CCCCCC;
    outline: none;
    background-color: white;
    height:30px;
    padding-left: 10px;

}

textarea{
	border: solid 1px #CCCCCC;
	padding:10px;
	line-height:24px;
}

select{
    color:#777777;
}


::placeholder {
	color: #BBBBBB !important;
}

::-webkit-input-placeholder {
    color: #BBBBBB !important;
}

::-moz-placeholder {  /* Firefox 19+ */
    -moz-appearance:none;
    color: #BBBBBB !important;
}

::-ms-placeholder {
    color: #BBBBBB !important;
}

.ellipsis{
    text-overflow:ellipsis;
    overflow: hidden;
}

.shaded{
    -webkit-box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,0.2);
    -moz-box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,0.2);
    box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,0.2);
}

.dropshadow{
    -webkit-box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
    -moz-box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
    box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
}

.dropshadowsmall{
    -webkit-box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
    -moz-box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
    box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
}

.textshadow{
    text-shadow: 4px 4px 8px #000000;
}

.radius{
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    overflow: auto;
}

.radiustl{
    -webkit-border-top-left-radius: 6px;
    -moz-border-radius-topleft: 6px;
    border-top-left-radius: 6px;
}

.radiustr{
    -webkit-border-top-right-radius: 6px;
    -moz-border-radius-topright: 6px;
    border-top-right-radius: 6px;
}

.radiusbl{
    -webkit-border-bottom-left-radius: 6px;
    -moz-border-radius-botomleft: 6px;
    border-bottom-left-radius: 6px;
}

.radiusbr{
    -webkit-border-bottom-right-radius: 6px;
    -moz-border-radius-bottomright: 6px;
    border-bottom-right-radius: 6px;
}

.blur{
    -webkit-filter: blur(2px);
    -moz-filter: blur(2px);
    -ms-filter: blur(2px);
    -o-filter: blur(2px);
    filter: blur(2px);
}


a:hover.darken{
    filter: brightness(50%);
    -ms-filter: brightness(50%);
    -webkit-filter: brightness(50%);
    -moz-filter: brightness(50%);
}

darken{
    filter: brightness(100%);
    -ms-filter: brightness(100%);
    -webkit-filter: brightness(100%);
    -moz-filter: brightness(100%);
}

.border{
    border: 1px solid #FFFFFF;
}

.bordergray{
    border: 1px solid #CCCCCC;
}

.border-bottom{
    border-bottom: 1px solid #FFFFFF;
}

.border-bottom-gray{
    border-bottom: 1px solid #CCCCCC;
}

.border-right{
    border-right: 1px solid #FFFFFF;
}

.border-red{
    border: 1px solid #FFBBBB;
}

.border-red-right{
    border-right: 1px solid #FFBBBB;
}

.border-default{
    border: 1px solid #3a8db7;
}

.border-default-right{
    border-right: 1px solid #3a8db7;
}

.border-blue{
    border: 1px solid #183C56;
}

.border-blue-right{
    border-right: 1px solid #183C56;
}

.border-gray-right{
    border-right: 1px solid #CCCCCC;
}

.border-gray-right-desktop{
    border-right: 1px solid #CCCCCC;
}

#navDesktop {
    -webkit-transition:all 0.25s;
    transition:all 0.25s;
}


.divider{
    height:1px;
    background-color: #FFFFFF;
}

.divider-gray{
    height:1px;
    background-image: url("/images/divider-gray.gif");
    background-position: center;
    background-repeat: no-repeat;
}

.button{
    height:40px;
    min-width: 40px;
    line-height: 37px; /*overwritten in mobile*/
    background-color: #FFFFFF;
    border:solid 1px #FFFFFF;
    color:#444444;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    text-align:center;
    white-space: nowrap;
    padding-left: 20px;
    padding-right: 20px;
    background-repeat:no-repeat;
    background-position:right;
    background-size:contain;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


.button.tiny{
    height:22px;
    min-width: 22px;
    line-height: 20px;
}

.button:hover, .button.primary:hover, .button.secondary:hover {
	background-color:#CCCCCC;
	color:black;
}

.button.secondary{
    background-color: transparent;
    border:solid 1px #999999;
}

.button.blue{
    background-color: #074e68;
    border:solid 1px #074e68;
	color:white;
}

.button.blue:hover{
    background-color: #509DBB;
    border:solid 1px #509DBB;
	color:white;
}

.button.gray{
    background-color: #999999;
    border:solid 1px #999999;
	color:white;
}

.button.yellow{
    background-color: #fffcaf;
    border:solid 1px #fffcaf;
	color:#074e68;
}

.button.yellow:hover{
    background-color: #ffffff;
    border:solid 1px #ffffff;
	color:#509DBB;
}

.button.gray:hover{
    background-color: #bbbbbb;
    border:solid 1px #bbbbbb;
	color:white;
}

.button.sarpinos{
    background-color: #990000;
	border:solid 1px #990000;
	color:white;
}

.button.outbrain{
    background-color: #EE6600;
	border:solid 1px #EE6600;
	color:white;
}


a {
    text-decoration:none;
    color: #509DBB;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

a:hover {
    color: #509DDD;
}

a:hover div.w100, a:hover div.w105{
	background-color:#DDDDDD;
}

a.primary {
    text-decoration:none;
    color: #509DBB;
}

a.primary:hover {
    color: #000000;
}

.whitebg{
    background-color: #ffffff;
}

.whitebg.placeholder{
    color: #BBBBBB;
}

.whitebg ::-webkit-input-placeholder {
    color: #BBBBBB;
}

.whitebg :-moz-placeholder { /* Firefox 18- */
    color: #BBBBBB;
}

.whitebg ::-moz-placeholder {  /* Firefox 19+ */
    color: #BBBBBB;
}

.whitebg :-ms-input-placeholder {
    color: #BBBBBB;
}

.whitebg input[type=text], .whitebg input[type=email], .whitebg input[type=password] {
    color:#000000;
}

.darkbg{
    background-color: #404040;
}

.dark.placeholder, .darkbg.placeholder, .darkbg ::-webkit-input-placeholder, .darkbg :-moz-placeholder, .darkbg ::-moz-placeholder, .darkbg :-ms-input-placeholder{
    color: #666666;
}

.darkbg input[type=text], .dark1bg input[type=email], .dark1bg input[type=password] {
    color:#CCCCCC;
}

.lightbg{
    background-image: url("/images/lightbg.gif");
    background-position: center;
    background-repeat: repeat-y;
}

.graybg{
    background-color: #666666;
}

.black{
    color:#000000;
}

.blue{
    color:#88BBDD;
}

.darkblue{
	color:#509DBB;
}

.green{
    color:#99ADBB;
}

.blackbg{
    background-color: #000000;
}

.bluebg{
    /*background-color: #4484CC;*/
    background-color: #183C56;
}

.bluegreenbg{
    /*background-color: #509DBB;*/
    background-color: #074e68;
}

.bluegreenbg2{
    background-color: #509DBB;
}

.mediumbluebg{
    background-image: url("/images/mediumbluebg.gif");
    background-position: center;
    background-repeat: repeat-y;
}

.light{
    color:#dddddd;
}

.white{
    color:#ffffff;
}

.red{
    color:#dd9999;
}

.red:hover{
	color: #CC3333;
}

.redbg{
    background-color: #FFBBBB;
}

.yellow{
    color:#fffcaf;
}

.yellowbg{
    background-color:#fffcaf;
}

ul{
	list-style: none;
	padding-left:50px;
}

li{
	margin-left:0;
	padding-left:0;
	margin-bottom:15px;
}

li::before {
  content: "•";
  color: #509DBB; /* or whatever color you prefer */
  size: 50px;
  padding-right:10px;
}

/*---a few horizontal feature slots---*/

.slot1{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:0%;
}

.slot2{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-100%;
}

.slot3{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-200%;
}

.slot4{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-300%;
}

.slot5{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-400%;
}

.slot6{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-500%;
}

.slot7{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
    left:-600%;
}

.heroimage{
	height:calc(47.3vw);
	background-size:150%;
	background-repeat:no-repeat;
	background-position: top;
}

.herogeneric{
	height:calc(20vw);
	background-size:150%;
	background-repeat:no-repeat;
	background-position: top;
}

.herocontent_web_space{
	width: calc(42.5vw);
}

.herocontent_web_wp{
	width:calc(43vw); padding-top:calc(32vw);
}

.herocontent_web{
	height: calc(44vw); width:calc(43vw); padding-top:calc(16vw);
}

.herovideo{
	width:calc(148vw);
	margin-left: calc(-74vw);
}

.heromotion{
	height:calc(56vw);
	background-size:150%;
	background-repeat:no-repeat;
	background-position: top;
}

.heromotionvideo{
	width:calc(148vw);
	margin-left: calc(-74vw);
}

.buttonvideocontainer{
	position:absolute; top: calc(50vw + 85px);
}

.bgimage{
	height:calc(9vw);
	background-size:150%;
	background-repeat:no-repeat;
	background-position: top;
}

.edgeimageleft{
	background-size:510px;
	background-repeat:no-repeat;
	background-position: right center;
}

.edgeimageright{
	background-size:510px;
	background-repeat:no-repeat;
	background-position: left center;
}

.halfimage{
	background-size:490px;
	background-repeat:no-repeat;
	background-position: center center;
}

.panel_left{
	height:420px;
	background-position:right top;
	background-repeat:no-repeat;
	background-size: 1000px;
}

.panel_right{
	height:420px;
	background-position:left top;
	background-repeat:no-repeat;
	background-size: 1000px;
}

.panel_web{
	height:336px;
	background-image:url('/images/panel_web.jpg');
	background-position:right top;
	background-repeat:no-repeat;
	background-size: 800px;
}

.panel_video{
	height:336px;
	background-image:url('/images/panel_video.gif');
	background-position:left top;
	background-repeat:no-repeat;
	background-size: 800px;
}

.panel_interactive{
	height:336px;
	background-image:url('/images/panel_interactive.jpg');
	background-position:right top;
	background-repeat:no-repeat;
	background-size: 800px;
}

.panel_apps{
	height:336px;
	background-image:url('/images/panel_apps.jpg');
	background-position:left top;
	background-repeat:no-repeat;
	background-size: 800px;
}

.homepanel_vspace{
	height:40px;
}

.homepanel_rightpad{
	padding-right:100px;
}

.panel_interactive_padding, .panel_web_padding{
	padding: 0px 0px 0px 100px;
}

.panel_apps_padding, .panel_video_padding{
	padding: 0px 0px 0px 80px;
}

.panel_qclear, .panel_signa, .panel_xps{
	height:530px;
	background-position:left -80px;
	background-repeat:no-repeat;
	background-size: 1000px;
}

.panel_mr, .panel_mmoca, .panel_thermomicrosites{
	height:530px;
	background-position:right -80px;
	background-repeat:no-repeat;
	background-size: 1000px;
}

a.swell div{
	overflow:hidden;
}


a.swell:hover div{
	background-size: 850px;
	filter: saturate(150%);
    -webkit-filter: saturate(150%);
}

a.swell:hover div table, a.swell:hover div img{
    -ms-transform: scale(1.03, 1.03); /* IE 9 */
    -webkit-transform: scale(1.03, 1.03); /* Safari */
    transform: scale(1.03, 1.03);
}

/*---MOBILE-SPECIFIC STUFF YOU CAN PROBABLY LEAVE ALONE ---*/

@media
only screen and (max-width:979px) {

    .mobile_only, .phone_only, .small_only{
        display:block;
    }

    .desktop_only, .large_only{
        display:none !important;
    }

    .padded{
        padding:40px;
    }

    .padl{
        padding-left:40px;
    }

    .padr{
        padding-right:40px;
    }

    .break{
        margin-bottom:40px;
    }

    .fullpadded{
        width:100%;
        padding-left:40px;
        padding-right:40px;
    }

	.mpadl{
    	padding-left:20%;
    }
    
    .mpadr{
    	padding-right:20%;
	}

    .mfull, .mwhole{
        width:100%;
    }

    .mhalf{
        width:50% !important;
    }

    .mthird{
        width:33.333% !important;
    }

    .mtwothirds{
        width:66.667% !important;
    }

    .row div{
        float:left;
    }
	
	.row div div{
        float:none;
    }

    .valign, .valign div, .valign img{
        vertical-align:middle;
    }

    .center{
        text-align:center;
        margin:auto;
    }

    .row.row div div.center{
        display:inline-block;
    }

    .row .center div img, .row .center div, .row .center div div{
        text-align:center;
        margin:auto;
    }

    .row .fillcell img, .row img.fillcell{
        display:block;
    }


    /*---MOBILE-SPECIFIC CUSTOMIZABLE STYLES ---*/


	html, body{
    line-height: 25px;
    font-size:16px;
	}

    html,body,input{
        -webkit-text-size-adjust: 100%;
    }

    input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option {
        font-size: 15px;
    }

    h1, .huge {
        font-size: 32px;
        line-height: 38px;
    }
	
	h2, .large {
		font-size: 24px;
		line-height: 32px;
	}
	
	h3, .medium {
		font-size: 20px;
		line-height: 26px;
	}
    
	.tiny {
		font-size: 11px;
		font-weight: 400;
		line-height: 13px;
	}

    .photobg{
        background-size: auto;
    }

	.heroimage{
		height:calc(55vw);
		background-size:180%;
		background-repeat:no-repeat;
		background-position: top;
	}

	.herogeneric{
		height:calc(23.8vw);
		background-size:180%;
		background-repeat:no-repeat;
		background-position: top;
	}
	
	.herocontent_web_space{
		width: calc(42vw);
	}
	
	.herocontent_web_wp{
		width:calc(49vw); padding-top:calc(38vw);
	}
	
	.herocontent_web{
		height: calc(51vw); width:calc(50.5vw); padding-top:calc(19.5vw);
	}
	
	.heromotion{
		height:calc(65vw);
		background-size:180%;
		background-repeat:no-repeat;
		background-position: top;
	}
	
	.heromotionvideo{
		/*should be unnecessary for mobile*/
	}
	
	.buttonvideocontainer{
		/*should be unnecessary for mobile*/
	}
	
	.bgimage{
		height:calc(10.5vw);
		background-size:180%;
		background-repeat:no-repeat;
		background-position: top;
	}

	.panel_web{
		height:420px;
		background-image:url('/images/panel_web.jpg');
		background-position:right top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_video{
		height:420px;
		background-image:url('/images/panel_video.gif');
		background-position:left top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_interactive{
		height:420px;
		background-image:url('/images/panel_interactive.jpg');
		background-position:right top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_apps{
		height:420px;
		background-image:url('/images/panel_apps.jpg');
		background-position:left top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}

	.homepanel_vspace{
		height:100px;
	}
	
	.homepanel_rightpad{
		padding-right:0px;
	}

	.panel_interactive_padding, .panel_web_padding{
		padding: 0px 50px 0px 0px;
	}
	
	.panel_apps_padding, .panel_video_padding{
		padding: 0px 0px 0px 40px;
	}
	
	a.swell:hover div{
		background-size: 1050px;
		filter: saturate(150%);
		-webkit-filter: saturate(150%);
	}
	
	.panel_web, .panel_video, .panel_interactive, .panel_apps{
		background-size: auto 110%;
	}
	
	.panel_qclear, .panel_signa, .panel_xps, .panel_mr, .panel_mmoca, .panel_thermomicrosites{
		height:calc(35vh + 35vw);
		background-size: auto 140%;
		
	}
	
	.panel_left{
		height:calc(30vh + 30vw);
		background-size: auto 100%;
		background-position:right middle;
		background-repeat:no-repeat;
		background-color:green;
	}

	.panel_right{
		height:calc(30vh + 30vw);
		background-size: auto 100%;
		background-position:left middle;
		background-repeat:no-repeat;
		background-color:purple;
	}
	
	a.swell:hover div{
		background-size: auto 115%;
	}
	
	.column_full, .column_left, .column_right, .column_half, .column_halfleft, .column_halfright, .column_thirdleft, .column_thirdleft2, .column_thirdmid, .column_thirdright, .column_quarter, .column_third, .column_twothirds, .column_twothirdsleft, .column_twothirdsright, .column_twothirdsright2{
    	width: 100%;
    	padding-left:10%;
    	padding-right:10%;
    }

	.border-gray-right-desktop{
		border-right: none;
	}
	
	ul{
		list-style: none;
		padding-left:10%;
	}
	
	li{
		margin-left:0;
		padding-left:0;
		margin-bottom:15px;
		white-space:nowrap;
	}

}

/*--- WHEN YOU WANT TO HIDE A THING ON IPAD AND SMALLER ---*/
@media
only screen and (max-width:1024px) {

    .hide_ipad{
    	display:none !important;
    }
}

@media
only screen and (min-width:1025px) {
    .ipad_only{
    	display:none !important;
    }
}

/*--- LET'S OVERRIDE A FEW STYLES FOR WHEN SCREENS ARE SUPER GIANT ---*/
@media
only screen and (min-width:1200px) {

	.heroimage{
		height:640px;
		background-size:2000px;
		background-repeat:no-repeat;
		background-position: top;
	}

	.herogeneric{
		height:271px;
		background-size:2000px;
		background-repeat:no-repeat;
		background-position: top;
	}
	
	.herocontent_web_space{
		width: calc(50vw - 103px);
	}

	.herocontent_web_wp{
		width:595px; padding-top:440px;
	}
	
	.herocontent_web{
		height: 580px; width:595px; padding-top:220px;
	}

	.herovideo{
		height:640px;
		width:2000px;
		margin-left: -1000px;
	}
	
	.heromotion{
		height:760px;
		background-size:2000px;
		background-repeat:no-repeat;
		background-position: top;
	}

	.heromotionvideo{
		height:760px;
		width:2000px;
		margin-left: -1000px;
	}
	
	.buttonvideocontainer{
		position:absolute; top: 765px;
	}

	.bgimage{
		height:122px;
		background-size:2000px;
		background-repeat:no-repeat;
		background-position: top;
	}
	
	.panel_web{
		height:420px;
		background-image:url('/images/panel_web.jpg');
		background-position:right top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_video{
		height:420px;
		background-image:url('/images/panel_video.gif');
		background-position:left top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_interactive{
		height:420px;
		background-image:url('/images/panel_interactive.jpg');
		background-position:right top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}
	
	.panel_apps{
		height:420px;
		background-image:url('/images/panel_apps.jpg');
		background-position:left top;
		background-repeat:no-repeat;
		background-size: 1000px;
	}

	.homepanel_vspace{
		height:100px;
	}
	
	.homepanel_rightpad{
		padding-right:0px;
	}

	.panel_interactive_padding, .panel_web_padding{
		padding: 0px 50px 0px 30px;
	}
	
	.panel_apps_padding, .panel_video_padding{
		padding: 0px 0px 0px 80px;
	}
	
	a.swell:hover div{
		background-size: 1050px;
		filter: saturate(150%);
		-webkit-filter: saturate(150%);
	}


}

/*--- RETINA-IFY CLASSES THAT RELY ON BG IMAGES BY OVERRIDING SOME STYLES ---*/
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {


    /*.notifications .numbers{
        background-image:url(/images_desktop/notifications2x.gif);
        background-size: 100%;
    }*/

}


/*--- OVERRIDE SOME IE STUFF ---*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  
   /* targets 10 up. these also are in the ie.css which targets 9 and below */ 
   .red{
    	color:#BBBBBB;
	}
	
	.red:hover{
		color: #BBBBBB;
	}
	
	.redbg{
		background-color: #DDDDDD;
	}
	
	.border-red{
		border: 1px solid #DDDDDD;
	}
	
	.border-red-right{
		border-right: 1px solid #DDDDDD;
	}
 
}

.error {
    border: 2px solid #CC3333;
}

.grecaptcha-badge {
    z-index: 2000;
}