
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */


html {
	font-family: sans-serif; /* 1 */
	-ms-text-size-adjust: 100%; /* 2 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
	margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details`, grid2c, bookstore
 * or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
grid2c,
bookstore,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
	display: inline-block; /* 1 */
	vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
	display: none;
	height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */

[hidden],
template {
	display: none;
}

/**
 * abo - some elements will only appear at the mobile sizes
*/

.mobile_only {
    display: inherit;
    visibility: inherit;
}

/**
 * abo - there is no menu underline by default
*/
.menu_underline {
    border: none;
}


/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
	background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */

a:active,
a:hover {
	outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
	border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
	font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
	font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
	font-size: 2em;
	margin: .67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
	background: #ff0;
	color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -.5em;
}

sub {
	bottom: -.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
	border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
	overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
	margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
	box-sizing: content-box;
	height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
	overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
	color: inherit; /* 1 */
	font: inherit; /* 2 */
	margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
	overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
	text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
	cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
	line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */

input[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	box-sizing: content-box; /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: .35em .625em .75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
	border: 0; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
	overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
	font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

.topnav ul,
#nav ul,
#nav .drop ul,
.posts .list,
.post-info .form ul,
.pagination ul,
.breadcrumbs,
.details .btn-area,
.grid2c .btn-area,
.bookstore .btn-area,
#footer .links,
#footer .f-nav ul,
#footer .social-networks {
	margin: 0;
	padding: 0;
	list-style: none;
}

.clearfix:after,
.container:after,
#header:after,
#header .search-box form:after,
.topnav:after,
.posts:after,
.posts .post:after,
.posts .contact-form:after,
.post-info:after,
.post-info .form:after,
.intro-area .textblock:after,
.intro-area .btn-area:after,
.statements .cols:after,
.about:after,
.about .textarea:after,
.articles .article:after,
.company-bio:after,
.partners .slider:after,
.blog-posts .btn-area:after,
.facilitator .heading:after,
.assessment .heading:after,
.assessment ol:after,
.details .heading:after,
.grid2c .heading:after,
.bookstore .heading:after,
.author-block:after,
.authors:after,
.authors .article .text:after,
#footer .cols:after,
#footer form:after,
.twoclm .cols:after,
.twoclm .leftclm:after,
.twoclm .rightclm:after,
.twoclm_flip .cols:after,
.twoclm_flip .leftclm:after,
.twoclm_flip .rightclm:after
 {
	content: "";
	display: block;
	clear: both;
}

.ellipsis {
	white-space: nowrap; /* 1 */
	text-overflow: ellipsis; /* 2 */
	overflow: hidden;
}

html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

* {
	max-height: 1000000px;
}

body {
	color: #2a222e;
	background: #e6ebee;
	font: 28px/1.2 "CooperHewitt", sans-serif;
	min-width: 320px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img {
	max-width: 100%;
	height: auto;
}

.gm-style img {
	max-width: none;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
	font-family: inherit;
	font-weight: bold;
	margin: 0 0 .5em;
	color: inherit;
}

h1,
.h1 {
	font-size: 30px;
}

h2,
.h2 {
	font-size: 27px;
}

h3,
.h3 {
	font-size: 24px;
}

h4,
.h4 {
	font-size: 21px;
}

h5,
.h5 {
	font-size: 17px;
}

h6,
.h6 {
	font-size: 15px;
}

p {
	margin: 0 0 1em;
}

a {
	color: #39f;
}

a:hover,
a:focus {
	text-decoration: none;
}

form,
fieldset {
	margin: 0;
	padding: 0;
	border-style: none;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="password"],
textarea {
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	box-sizing: border-box;
	border: 1px solid #999;
	padding: .4em .7em;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus {

    /* abo - remove the outline so that the box shadow can show through for chrome */
    outline-width: 0;

    /* change the default border to box-shadow so that it is consistent throughout the site */
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);

}


/* abo - set global styles for the input field background colors when the field is enabled */
input[type="text"]:enabled,
input[type="tel"]:enabled,
input[type="email"]:enabled,
input[type="search"]:enabled,
input[type="password"]:enabled,
textarea:enabled {
    background-color: #ffffff;
    background: #ffffff;
    color: #000000;
}



/* abo - set global styles for the input field background colors when the field is disabled
         this is the default style... for non-safari browsers */
input[type="text"]:disabled,
input[type="tel"]:disabled,
input[type="email"]:disabled,
input[type="search"]:disabled,
input[type="password"]:disabled,
textarea:disabled {
    
    color: #74627B !important;

    opacity: 1;
	background: #dddddd !important;
	background-color: #dddddd !important;    
}


/* abo - add a browser hack that is specific to safari so that
         the disabled text color of the input fields matches the
         disabled text color of the select */
@media screen and (-webkit-min-device-pixel-ratio:0) {

    input[type="text"]:disabled,
    input[type="tel"]:disabled,
    input[type="email"]:disabled,
    input[type="search"]:disabled,
    input[type="password"]:disabled,
    textarea:disabled {

        /* notice that the color is a little different than it is for the other browsers */
        color: #1B171C !important;

        opacity: 1 !important;
	    background: #dddddd !important;
	    background-color: #dddddd !important;

    }

}


input[type="text"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #999;
}

input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
textarea::-moz-placeholder {
	opacity: 1;
	color: #999;
}

input[type="text"]:-moz-placeholder,
input[type="tel"]:-moz-placeholder,
input[type="email"]:-moz-placeholder,
input[type="search"]:-moz-placeholder,
input[type="password"]:-moz-placeholder,
textarea:-moz-placeholder {
	color: #999;
}

input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #999;
}

input[type="text"].placeholder,
input[type="tel"].placeholder,
input[type="email"].placeholder,
input[type="search"].placeholder,
input[type="password"].placeholder,
textarea.placeholder {
	color: #999;
}

select {
	-webkit-border-radius: 0;
}

textarea {
	resize: vertical;
	vertical-align: top;
}

button,
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="submit"] {
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	cursor: pointer;
}

/* custom checkbox styles */

.jcf-checkbox {
	vertical-align: middle;
	display: inline-block;
	position: relative;
	overflow: hidden;
	cursor: default;
	background: #fff;
	border: 1px solid #777;
	margin: 0 3px 0 0;
	height: 10px;
	width: 10px;
}

.jcf-checkbox span {
	position: absolute;
	display: none;
	height: 4px;
	width: 8px;
	top: 50%;
	left: 50%;
	margin: -7px 0 0 -6px;
	border: 3px solid #777;
	border-width: 0 0 3px 3px;
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865483, M12=0.7071067811865467, M21=-0.7071067811865467, M22=0.7071067811865483, SizingMethod='auto expand')";
}

:root .jcf-checkbox span {
	margin: -4px 0 0 -5px;
}

.jcf-checkbox input[type="checkbox"] {
	position: absolute;
	width: 100%;
	height: 100%;
	border: 0;
	margin: 0;
	left: 0;
	top: 0;
}

.jcf-checkbox.jcf-checked span {
	display: block;
}

/* custom radio styles */

.jcf-radio {
	width: 10px;
	height: 10px;
	float: left;
	position: relative;
	overflow: hidden;
	cursor: default;
	background: #fff;
	border-radius: 1px;
	margin: 0 5px 0 0;
	border: 1px solid #acaadc;
}

.jcf-radio span {
	width: 4px;
	height: 4px;
	display: none;
	position: absolute;
	top: 3px;
	left: 3px;
	background: #fff;
	-webkit-transform: rotate(42deg);
	-ms-transform: rotate(42deg);
	transform: rotate(42deg);
}

.jcf-radio input[type="radio"] {
	position: absolute;
	height: 100%;
	width: 100%;
	border: 0;
	margin: 0;
	left: 0;
	top: 0;
}

.jcf-radio.jcf-checked {
	background: #2a222e;
}

.jcf-radio.jcf-checked span {
	display: block;
}

/* custom select styles */

.jcf-select {
	display: inline-block;
	vertical-align: top;
	position: relative;

	/* abo - get rid of the black border on the select */
	border: none;

	background: #fff;
	margin: 0 0 12px;
	min-width: 150px;

	/* abo - increase the height of the select, add internal spacing so matches input fields,
	   and make sure that it is using 100% of space allowed so it matches input field width */
	height: 56px;
	padding: 15px 0 0 12px;
	width: 100%;

    /* abo - added this to avoid oddities with safari */
	-webkit-appearance: none;

}

.jcf-select select {
	z-index: 1;
	left: 0;
	top: 0;

	/* abo - added this to avoid oddities with safari */
	-webkit-appearance: none;
}

.jcf-select .jcf-select-text {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	cursor: default;
	display: block;

/* the font size needs to be responsive */

	/* abo - increase font size for select text */
	font-size: 22px;
	line-height: 26px;

	margin: 0 35px 0 8px;
}

.jcf-select .jcf-select-opener {
	position: absolute;
	text-align: center;
	background: #aaa;
	width: 26px;
	bottom: 0;
	right: 0;
	top: 0;
}

body > .jcf-select-drop {
	position: absolute;
	margin: -1px 0 0;
	z-index: 9999;
}

body > .jcf-select-drop.jcf-drop-flipped {
	margin: 1px 0 0;
}

.jcf-select .jcf-select-drop {
	position: absolute;
	margin-top: 0;
	z-index: 9999;
	top: 100%;
	left: -1px;
	right: -1px;
}

.jcf-select .jcf-drop-flipped {
	bottom: 100%;
	top: auto;
}

.jcf-select-drop .jcf-select-drop-content {

	/* abo - change the border for the select list to
	   box shadow to match the input fields */
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);

}

/* multiple select styles */

.jcf-list-box {
	overflow: hidden;
	display: inline-block;
	border: 1px solid #b8c3c9;
	min-width: 200px;
	margin: 0 15px;
}

/* select options styles */

.jcf-list {
	display: inline-block;
	vertical-align: top;
	position: relative;
	background: #fff;

    /* abo - increase size of font within select list
       so it matches rest of input fields */
	font-size: 22px;
	line-height: 23px;

    /* abo - match the padding of the list to the
       padding of the select field */
	padding: 2px 0 0 12px;

	width: 100%;
}

.jcf-list .jcf-list-content {
	vertical-align: top;
	display: inline-block;
	overflow: auto;
	width: 100%;
}

.jcf-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.jcf-list ul li {
	overflow: hidden;
	display: block;
}

.jcf-list .jcf-overflow {
	overflow: auto;
}

.jcf-list .jcf-option {
	white-space: nowrap;
	overflow: hidden;
	cursor: default;
	display: block;
	padding: 5px 9px;
	color: #656565;
	height: 1%;
}

.jcf-list .jcf-disabled {
	background: #fff !important;
	color: #aaa !important;
}

.jcf-select-drop .jcf-hover,
.jcf-list-box .jcf-selected {
	background: #e6e6e6;
	color: #000;
}

.jcf-list .jcf-optgroup-caption {
	white-space: nowrap;
	font-weight: bold;
	display: block;
	padding: 5px 9px;
	cursor: default;
	color: #000;
}

.jcf-list .jcf-optgroup .jcf-option {
	padding-left: 30px;
}

/* common custom form elements styles */

.jcf-disabled { 
    /* abo - in order to get the disabled text color to match the input fields... we have
             to adjust it to a color other than black and force the opacity to 1*/
    color: #74627B !important;
    opacity: 1!important;
	background: #dddddd !important;
	background-color: #dddddd !important;
}


/* abo - change the focus outline for ALL jcf-focus to have a box-shadow */
/* this is commented out as it is TOO global and will cause a box-shadow
   to appear within the control as well as around the control...
   this was replaced with the rule directly below it */
/*
.jcf-focus,
.jcf-focus * {    
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4) !important;
}*/
/* only put the drop shadow around the outside of the select */
.jcf-select-drop .jcf-focus {
  box-shadow: 0 2px 4px rgba(0, 0, 0, .4) !important;
}


.jcf-select-drop .jcf-disabled {
    /* abo - in order to get the disabled text color to match the input fields... we have
             to adjust it to a color other than black and force the opacity to 1 */
    color: #74627B !important;
    opacity: 1 !important;
	background: #dddddd !important;
	background-color: #dddddd !important;
}



[class^="icon-"],
[class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: "icomoon" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1; /* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-setting:before {
	content: "\e90f";
}

.icon-comment:before {
	content: "\e910";
}

.icon-trust:before {
	content: "\e90e";
}

.icon-play:before {
	content: "\e90d";
}

.icon-check:before {
	content: "\e911";
}

.icon-keyboard_arrow_up:before {
	content: "\e909";
}

.icon-keyboard_arrow_right:before {
	content: "\e90a";
}

.icon-keyboard_arrow_left:before {
	content: "\e90b";
}

.icon-keyboard_arrow_down:before {
	content: "\e90c";
}

.icon-cross:before {
	content: "\e908";
}

.icon-search:before {
	content: "\e907";
}

.icon-social-facebook:before {
	content: "\e900";
}

.icon-googleplus:before {
	content: "\e901";
}

.icon-twitter:before {
	content: "\e902";
}

.icon-linkedin:before {
	content: "\e903";
}

.icon-pinterest-with-circle:before {
	content: "\e904";
}

.icon-youtube:before {
	content: "\e905";
}

.icon-instagram:before {
	content: "\e906";
}

/* main container styles */

#wrapper {
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
}

#wrapper.generic {
	background: #f5f5f5;
}

#wrapper.generic #footer .container {
	padding: 75px 20px 20px;
	max-width: 1405px;
}

#wrapper.generic #footer:after {
	height: 30px;
	display: block;
}

/* container styles */

.container {
	max-width: 1240px;
	padding: 20px 28px;
	margin: 0 auto;
	letter-spacing: .04px;
}

/* header styles */

#header {
	background: #fff;
	position: fixed;
	z-index: 9999;
	left: 0 !important;
	right: 0 !important;
}

#header.fixed-position {
	box-shadow: 0 0 2px rgba(0, 0, 0, .4);
}

#header .container {
	padding: 17px 15px 10px;
	border-bottom: 1px solid #eaf0f1;
}

#header .logo {
	float: left;
	margin: 0 10px 0 0;
	width: 144px;
	position: relative;
	z-index: 99999;
}

#header .logo img {
	width: 100%;
	height: auto;
	display: block;
}

#header .search-box {
	background: #fff;
	-webkit-transition: top,.3s,linear;
	transition: top,.3s,linear;
	opacity: 0;
	position: fixed;
	bottom: 0;
	top: 0;
	left: 0;
	right: 0;
	text-align: left;
	visibility: hidden;
}

#header .search-box .container {
	padding-top: 43px;
	border: none;
}

#header .search-box form {
	margin: 0 -20px;
	border-top: 1px solid #eaf0f1;
}

#header .search-box .s-logo {
	float: left;
	max-width: 39px;
	margin: 12px 30px 0 0;
	display: none;
}

#header .search-box button[type="submit"] {
	font-size: 15px;
	line-height: 15px;
	width: 60px;
	height: 60px;
	margin: 0 0 0 30px;
	padding: 10px;
	border-radius: 2px;
	border: none;
	background: #003346;
	color: #fff;
	position: absolute;
	bottom: 20px;
	right: 20px;
}

#header .search-box button[type="submit"]:hover,
#header .search-box button[type="submit"]:focus {
	background: #1a4859;
	background: -webkit-linear-gradient(top, #1a4859 1%, #003346 100%);
	background: linear-gradient(to bottom, #1a4859 1%, #003346 100%);
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}

#header .search-box .input-holder {
	overflow: visible;
}

#header .search-box .col {
	overflow: hidden;
	padding: 0 0 5px;
}

#header .search-box .form-control {
	font-size: 25px;
	line-height: 28px;
	font-family: "CooperHewitt", sans-serif;
	padding: 6px 17px;
	height: 60px;
	color: #2a222e;
	width: 100%;
	border: none;
}

#header .search-box .form-control::-webkit-input-placeholder {
	opacity: .4;
	color: #003346;
}

#header .search-box .form-control::-moz-placeholder {
	opacity: 1;
	opacity: .4;
	color: #003346;
}

#header .search-box .form-control:-moz-placeholder {
	opacity: .4;
	color: #003346;
}

#header .search-box .form-control:-ms-input-placeholder {
	opacity: .4;
	color: #003346;
}

#header .search-box .form-control.placeholder {
	opacity: .4;
	color: #003346;
}

#header .search-box .close {
	font-size: 14px;
	line-height: 14px;
	position: absolute;
	top: 16px;
	right: 10px;
	color: #3b333e;
	text-decoration: none;
}






/* nav area styles */

/* topnav styles */

.topnav {
    /* abo - slightly smaller font for menu1 at widths <= 686*/
	font-size: 9px;
	line-height: 16px;
	font-weight: 300;
	font-family: "CooperHewitt", sans-serif;
	text-transform: uppercase;
	position: relative;
	z-index: 9999;
}

.topnav .search {
	font-size: 12px;
	line-height: 18px;
	float: right;
	color: #2a222e;
	text-decoration: none;
	padding: 0 0 5px;
	margin: -1px 30px 0 0;
}

.topnav .search:hover {
	color: #352d39;
}

.topnav ul {
    /* abo - reduced the character spacing in top menus */
	letter-spacing: 2.0px;
	display: none;
}

.topnav ul li {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 13px 5px;
}

.topnav ul li.language {
	position: relative;
	padding: 0 0 0 10px;
}

.topnav ul li.language:after {
	width: 1px;
	background: #d4d3d5;
	left: 0;
	top: -40px;
	bottom: 0;
	position: absolute;
	content: "";
}

.topnav ul li.language:hover ul {
	opacity: 1;
	visibility: visible;
}

.topnav ul li.language:hover > a {
	color: #352d39;
}

.topnav ul li.language:hover > a:after {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
	color: #352d39;
}

.topnav ul li.language > a {
	position: relative;
	display: block;
	padding: 0 20px 5px 0;
}

.topnav ul li.language > a:after {
	-webkit-transition: .3s,linear,all;
	transition: .3s,linear,all;
	position: absolute;
	top: 0;
	right: 5px;
	font-family: "icomoon";
	content: "\e90c";
	color: #cac8cb;
}

.topnav ul li.language > a:hover {
	color: #352d39;
}

.topnav ul li.language > a:hover:after {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
	color: #352d39;
}

.topnav ul li.language ul {
	-webkit-transition: .3s,linear,opacity;
	transition: .3s,linear,opacity;
	position: absolute;
	top: 100%;
	right: 0;
	width: 100%;
	background: #fff;
	z-index: 99;
	border: 1px solid #cac8cb;
	border-radius: 3px;
	opacity: 0;
	visibility: hidden;
}

.topnav ul li.language ul li {
	display: block;
	border-top: 1px solid #cac8cb;
	margin: 0;
}

.topnav ul li.language ul li:first-child {
	border: none;
}

.topnav ul li.language ul a {
	padding: 5px 20px 5px 5px;
	display: block;
}

.topnav ul a {
	color: #817e82;
	text-decoration: none;
}

.topnav ul a:hover {
	color: #352d39;
}






body.search-active #header .search-box {
	opacity: 1;
	top: 0;
	z-index: 99999;
	visibility: visible;
}

body.search-active #header.fixed-position .search-box {
	opacity: 1;
	top: 0;
	z-index: 9999;
}

body.search-active .nav-opener {
	z-index: 9;
}

body.nav-active {
	overflow: hidden;
	height: 100%;
}

body.nav-active #header .logo {
	opacity: .25;
}

body.nav-active #nav {
	opacity: 1;
	visibility: visible;
}

body.nav-active .search {
	opacity: 0;
	visibility: hidden;
}

/* nav opener styles */

.nav-opener {
	width: 15px;
	height: 11px;
	position: absolute;
	top: 19px;
	right: 15px;
	text-indent: -9999px;
	overflow: hidden;
	display: block;
	z-index: 9999;
}

.nav-opener:before,
.nav-opener:after,
.nav-opener span {
	background: #2a222e;
	border-radius: 4px;
	position: absolute;
	top: 6px;
	left: 0;
	right: 0;
	height: 1px;
	margin-top: -1px;
	-webkit-transition: all .2s linear;
	transition: all .2s linear;
}

.nav-opener:before,
.nav-opener:after {
	content: "";
	top: 1px;
}

.nav-opener:after {
	top: 11px;
}

.close-btn span,
.nav-active .nav-opener span {
	opacity: 0;
}

.nav-opener:hover {
	opacity: .9;
}

.close-btn:after,
.close-btn:before,
.nav-active .nav-opener:after,
.nav-active .nav-opener:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 5px;
	left: 15%;
	right: 15%;
}

.close-btn:after,
.nav-active .nav-opener:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.resize-active #nav,
.resize-active .fixed-nav,
.resize-active .fixed-nav * {
	-webkit-transition: none !important;
	transition: none !important;
}





/* main navigation styles */

#nav {
	font-size: 25px;
	line-height: 30px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 200;
	background: #fff;
	z-index: 99;
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	text-align: left;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: opacity,.3s,linear;
	transition: opacity,.3s,linear;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 200;
}

#nav ul {
	border-top: 1px solid #eaf0f1;
	margin: 45px 0 0;
	height: calc(100vh - 63px);
	overflow: auto;
}

#nav ul li {
	position: relative;
	letter-spacing: .4px;
	z-index: 1;
}

#nav ul li.hover .drop {
	height: auto;
	top: 100%;
	opacity: 1;
	visibility: visible;
	position: static;
}

#nav ul a {
	display: block;
	color: #2a222e;
	text-decoration: none;
	position: relative;
	padding: 20px 40px 20px 15px;
	border-bottom: 1px solid #eaf0f1;
}

#nav ul a:after {
	display: block;
	content: "\e90a";
	font-family: "icomoon";
	color: #a2a2a2;
	position: absolute;
	right: 15px;
	top: 23px;
}

#nav .drop {
	position: static;
	top: 20px;
	right: 0;
	width: 100%;
	background: #fff;
	border-radius: 8px;
	-webkit-transition: opacity,.2s,linear;
	transition: opacity,.2s,linear;
	z-index: -1;
	opacity: 0;
	height: 0;
	visibility: hidden;
}

#nav .drop ul {
	padding: 0 20px;
	height: auto;
	margin: 0;
}


/* by default display a single line border above each drop menu item */
#nav .drop ul li {
	border: solid #e0e9ea;
	border-width: 1px 0 0;
	margin: 0;
	display: block;
}

/* by default DO NOT display a single line border above the first element
   within the drop menu */
#nav .drop ul li:first-child {
	border: none;
}


/* abo - DO NOT display a line border above mobile_only menu items */
#nav .drop ul li:not(.mobile_only) {
	border: none;
}

/* abo - turn the line border above back on for NON mobile_only menu items
         that would come after any mobile_only menu items in the sub-menu drop down

         NOTE: there can be different instances of mobile_only inserted here and
               there throughout the menu item list and this will still work */
#nav .drop ul li:not(.mobile_only) ~ li {
    border: solid #e0e9ea;
    border-width: 1px 0 0;
    margin: 0;
    display: block;
}



#nav .drop ul li:hover {
	border-width: 1px 0 0;
}

#nav .drop ul li:hover a {
	border: none !important;
}

#nav .drop ul a {
	border: none !important;
	display: block;
	color: #949096;
	padding: 7px 0;
}

#nav .drop ul a:hover {
	color: #2a222e;
}

#nav .drop ul a:after {
	display: none;
}







.visible-xs {
	display: block !important;
}

/* main informative part styles */

#main {
	position: relative;
	overflow: hidden;
	padding: 48px 0 0;
}

.in-viewport {
	-webkit-animation-name: bottom-to-top;
	animation-name: bottom-to-top;
	bottom: 0;
	opacity: 1;
}

/* visual part styles */

.visual {
	position: relative;
	overflow: hidden;
	padding: 0 0 30px;
}

.visual.add {
	padding: 0;
}

.visual.add:after {
	display: none;
}

.visual .btn-play {
	font-size: 18px;
	line-height: 22px;
	color: #000;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 100;
}

.visual.video-active .holder {
	display: none;
}

.visual:after {
	background: url(../images/bg-pattern.png);
	background-size: 10% auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 30px;
	content: "";
}

.visual .image {
	position: relative;
	left: 50%;
	min-width: 375px;
}

.visual .image img {
	width: 100%;
	height: auto;
	display: block;
	position: relative;
	left: -50%;
	min-width: 375px;
}

.visual .holder {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 30px;
	left: 0;
	color: #fff;
	z-index: 1;
}


.visual .holder:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	/* background: #8eb4b6; */

	/* changed the background to user the swatch for consistency */
	background: url(../images/intro_area_background.png);

	/*background: url(../images/blue_swatch.png);*/


	content: "";
	opacity: .80;
	z-index: -1;
}

.visual .container {
	white-space: nowrap;
	text-align: center;
	text-align: left;
	width: 100%;
	height: 100%;
	max-width: 1250px;
	padding: 20px 24px;
}

.visual .container:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 100%;
}

.visual .container > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.visual .text {
	overflow: hidden;
}

.visual .head {
	font-size: 13px;
	line-height: 17px;
	font-family: "CushingStd-Heavy", sans-serif;
	-webkit-transition: opacity,.7s,linear;
	transition: opacity,.7s,linear;
	position: relative;
	display: block;
	margin: 6px 0 8px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.visual h1 {
	font-size: 26px;		
	line-height: 36px;
	-webkit-transition: opacity,1s,linear;
	transition: opacity,1s,linear;
	font-weight: 300;
	margin: 0;
	word-spacing: 4px;
	position: relative;
}

.visual .caption {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	background: rgba(142, 180, 182, .95);
	white-space: nowrap;
	text-align: center;
}

/*.visual .caption h1 {
	font-size: 50px;
	line-height: 55px;
	margin: 0 0 30px;
}*/

.visual .caption:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 100%;
}

.visual .caption > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.visual .caption .text {
	font-size: 13px;
	line-height: 18px;
	font-family: "CushingStd-Heavy", sans-serif;
	display: block;
	overflow: hidden;
	text-transform: uppercase;
	letter-spacing: 1.24px;
	margin: 0 0 10px;
}

.visual .caption .text em {
	font-size: 15px;
	line-height: 20px;
	font-style: normal;
	display: block;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
}

.visual .caption-holder {
	font-size: 18px;
	line-height: 28px;
	/* max-width: 620px; */
	width: 100%;
	position: relative;
	overflow: hidden;
	padding: 20px 28px;
	min-height: 250px;
	color: #fff;
	text-align: left;
}

.load,
.fade,
.slide-left,
.slide-right,
.bottom-top {
	opacity: 0;
	-webkit-transition: all .4s linear;
	transition: all .4s linear;
}

.fade {
	-webkit-transition: all .8s linear;
	transition: all .8s linear;
}

.load.in-viewport,
.fade.in-viewport,
.slide-left.in-viewport,
.slide-right.in-viewport,
.bottom-top.in-viewport {
	-webkit-animation-name: slideInUp;
	animation-name: slideInUp;
	-webkit-animation-duration: .3s;
	animation-duration: .3s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name: fade;
	-webkit-animation-fill-mode: both;
	-webkit-transition: all .3s linear;
	transition: all .3s linear;
	opacity: 1;
}

.fade.in-viewport {
	-webkit-animation-name: fade;
	animation-name: fade;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-transition: all .8s linear;
	transition: all .8s linear;
}

.slide-left.in-viewport {
	-webkit-animation-name: slideleft;
	animation-name: slideleft;
	-webkit-transition: all .5s linear;
	transition: all .5s linear;
}

.slide-right.in-viewport {
	-webkit-animation-name: slideright;
	animation-name: slideright;
	-webkit-transition: all .5s linear;
	transition: all .5s linear;
}

.bottom-top.in-viewport {
	-webkit-animation-name: bottom-top;
	animation-name: bottom-top;
}

h2 {
	font-size: 12px;
	line-height: 17px;
	font-family: "CushingStd-Heavy", sans-serif;
	position: relative;
	font-weight: 400;
	color: #2a222e;
	text-transform: uppercase;
	margin: 0 0 8px;
	letter-spacing: 1.2px;
	-webkit-transition: opacity, .3s, linear;
	transition: opacity, .3s, linear;
}

h3 {
	font-size: 25px;
	line-height: 30px;
	font-family: "CooperHewitt", sans-serif;
	position: relative;
	color: #2a222e;
	margin: 0 0 8px;
	-webkit-transition: opacity, .5s, linear;
	transition: opacity, .5s, linear;
	font-weight: 300;
	letter-spacing: .4px;
}

/* posts */

.posts {
	font-size: 18px;
	line-height: 28px;
}

.posts .container {
	padding-top: 37px;
	padding-bottom: 0;
}

/* abo - decrease the amount of vertical space AFTER the posts container */
.posts .container .post:first-child {
	padding: 0 0 40px;
}

/* abo - decreased vertical space AFTER post to 10 */
.posts .post {
	padding: 0 0 10px;
	-webkit-transition: .3s,linear,opacity;
	transition: .3s,linear,opacity;
	position: relative;
	opacity: 1;
}

.posts h2 {
	font-size: 13px;
	line-height: 17px;
	font-family: "CushingStd-Heavy", sans-serif;
	position: relative;
	font-weight: 400;
	color: #2a222e;
	text-transform: uppercase;
	margin: 0 0 17px;
	letter-spacing: 1.2px;
	-webkit-transition: opacity, .3s, linear;
	transition: opacity, .3s, linear;
}

.posts h3 {
	font-size: 25px;
	line-height: 30px;
	font-family: "CooperHewitt", sans-serif;
	position: relative;
	margin: 0 0 28px;
	-webkit-transition: opacity, .5s, linear;
	transition: opacity, .5s, linear;
	font-weight: 300;
	letter-spacing: .4px;
}

.posts p {
	margin: 0 0 28px;
	position: relative;
	-webkit-transition: opacity, .8s, linear;
	transition: opacity, .8s, linear;
}

.posts .list {
	padding: 0 0 40px;
	position: relative;
	-webkit-transition: opacity, .9s, linear;
	transition: opacity, .9s, linear;
}

/* abo - changed the display setting for the list li to block so that the elements appear
         on seperate lines by default */
.posts .list li {
	position: relative;
	padding: 0 0 1px 26px;
	/*display: inline-block;*/
	display: block;
	vertical-align: middle;
}

.posts .list li span {
	color: #8eb4b6;
	position: absolute;
	top: 4px;
	left: 5px;
}

.posts .image {
	position: relative;
	margin: 0 0 20px;
	-webkit-transition: opacity, .8s, linear;
	transition: opacity, .8s, linear;
}

.posts .image:after {
	background: #e6ebee;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 102px;
	content: "";
	opacity: .80;
}

.posts .image img {
	width: 100%;
	height: auto;
	display: block;
}

.posts .in-viewport {
	opacity: 1;
}

.posts .post-info h3 {
	position: relative;
	display: inline-block;
	z-index: 1;
	margin: 12px 0 22px;
	padding: 0 5px;
	color: #003346;
}

.posts .post-info h3:before {
	background: #dbe5e5;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}

.posts .contact-form {
	width: 100%;
}

.posts .contact-form .input-holder {
	position: relative;
	padding: 3px;
	margin: 0 0 20px;
}

.posts .contact-form .form-control {
	font-size: 16px;
	line-height: 20px;
	/* abo - the background is specified globally so that it can change depending
	         upon the elements state (ie: enabled or disabled)
	/*background: #fff;*/
	color: #2a222e;
	height: 38px;
	border: none;
	width: 100%;
	padding: 5px 10px;
}


/* abo - shrink the size of the dots within the password field **/
.posts .contact-form input[type="password"].form-control  {
  font-size: 12px;
  line-height: 20px;
  padding: 5px 10px;
}


/* abo - make sure that the placeholder text for the input field
         matches the standard input field text size */
.posts .contact-form input[type="password"].form-control::-webkit-input-placeholder {
    font-size: 16px;
}

.posts .contact-form input[type="password"].form-control::-moz-placeholder {
   font-size: 16px;
}

.posts .contact-form input[type="password"].form-control:-moz-placeholder {
     font-size: 16px;
}

.posts .contact-form input[type="password"].form-control:-ms-input-placeholder {
   font-size: 16px;
}

.posts .contact-form input[type="password"].form-control.placeholder {
   font-size: 16px;
}


.jcf-select {

	margin: 0 0 0px;
	min-width: 150px;

	/* abo - increase the height of the select, add internal spacing so matches input fields,
	   and make sure that it is using 100% of space allowed so it matches input field width */
	height: 40px;
	padding: 10px 0 0 3px;
	width: 100%;

}

.jcf-select .jcf-select-text {
    /* abo - increase font size for select text */
    font-size: 16px;
    line-height: 20px;
}


.jcf-list {

    /* abo - increase size of font within select list
       so it matches rest of input fields */
    font-size: 16px;
    line-height: 20px;

    /* abo - match the padding of the list to the
       padding of the select field */
    padding: 2px 0 0 3px;
}


.posts .contact-form .form-control::-webkit-input-placeholder {
	color: #2a222e;
}

.posts .contact-form .form-control::-moz-placeholder {
	opacity: 1;
	color: #2a222e;
}

.posts .contact-form .form-control:-moz-placeholder {
	color: #2a222e;
}

.posts .contact-form .form-control:-ms-input-placeholder {
	color: #2a222e;
}

.posts .contact-form .form-control.placeholder {
	color: #2a222e;
}

/* this puts box shadow around input fields as they gain focus */
.posts .contact-form .form-control:focus {
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}



.posts .contact-form .btn-primary,
.posts .contact-form .btn-default {
    border: none;
    border-radius: 0;
    min-width: 180px;
    padding: 12px 25px;
    font-size: 10pt;
}

/* post info */

.post-info .btn-area {
	overflow: hidden;
	padding: 25px 2px 35px;
	-webkit-transition: 1.8s,linear,opacity;
	transition: 1.8s,linear,opacity;
	position: relative;
}

.post-info .text {
	font-size: 15px;
	line-height: 18px;
}

.post-info .form {
	clear: both;
	letter-spacing: 1px;
}

.post-info .form ul {
	font-size: 16px;
	line-height: 22px;
}

.post-info .form ul li {
	border: solid #fff;
	border-width: 2px 0;
	margin: 0 -20px;
	text-align: center;
}

.post-info .form ul li:first-child {
	border: none;
	text-align: left;
	margin: 0 0 66px;
	padding: 0;
}

.post-info .form ul li:first-child .label {
	text-align: left;
	padding: 10px 0 0;
}

.post-info .form ul li .label {
	padding: 13px 0 0;
}

.post-info .form .label {
	font-size: 8px;
	line-height: 14px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	text-align: center;
	text-transform: uppercase;
	display: block;
	margin: 0 0 5px;
	padding: 0;
}

.post-info .jcf-radio {
	margin: 2px 5px 0 0;
}

.post-info .radio-holder {
	display: inline-block;
	vertical-align: top;
	padding: 34px 17px 12px;
	border: solid #fff;
	border-width: 0 2px;
	margin: -32px 0 0;
	font-weight: 200;
}

.post-info .radio {
	display: inline-block;
	vertical-align: top;
	width: 110px;
	margin: 0 7px 0 0;
}

.post-info .radio .label {
	font-size: 12px;
	line-height: 14px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 200;
	overflow: hidden;
	text-align: left;
	margin: 0;
	padding: 0 !important;
	/* abo - lowered font weight **/
	font-weight: 200 !important;
}

/* default button styles */

.btn-default,
.btn-primary {
	font-size: 11px;
	line-height: 12px;
	font-family: "CushingStd-Heavy", sans-serif;
	background: #003346;
	color: #fff;
	text-transform: uppercase;
	padding: 15px 20px;
	text-decoration: none;
	display: inline-block;
	margin: 0 10px 0 0;
	min-width: 80px;
	text-align: center;
	border-radius: 1px;
	letter-spacing: .4px;
}

.btn-default:hover,
.btn-default:focus,
.btn-primary:hover,
.btn-primary:focus {
	background: #1a4859;
	background: -webkit-linear-gradient(top, #1a4859 1%, #003346 100%);
	background: linear-gradient(to bottom, #1a4859 1%, #003346 100%);
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}

.btn-default span,
.btn-primary span {
	font-size: 11px;
	line-height: 12px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	display: block;
	color: #8eb4b6;
	font-weight: 700;
	letter-spacing: .5px;
	padding: 0 0 2px;
}

.btn-default.add,
.btn-primary.add {
	padding: 5px 10px;
}

.btn-primary {
	 /* background: #8eb4b6;*/ 
	background: #8eb0bb;
}

.btn-primary:hover,
.btn-primary:focus {

	/*background: #9abcbd;*/	
	background: #A6C1CA


/*	background: -webkit-linear-gradient(top, #9abcbd 0%, #8eb4b6 100%);
	background: linear-gradient(to bottom, #9abcbd 0%, #8eb4b6 100%);
	*/

/*
    background: -webkit-linear-gradient(top, #9abcbd 0%, #8eb4b6 100%);
    background: linear-gradient(to bottom, #9abcbd 0%, #8eb4b6 100%);
*/    


}

/* default error styles */

.has-error .form-control {
	color: #cb3b4c !important;
	box-shadow: 0 2px 4px rgba(203, 59, 76, .4);
}

.has-error .form-control::-webkit-input-placeholder {
	color: #cb3b4c !important;
}

.has-error .form-control::-moz-placeholder {
	opacity: 1;
	color: #cb3b4c !important;
}

.has-error .form-control:-moz-placeholder {
	color: #cb3b4c !important;
}

.has-error .form-control:-ms-input-placeholder {
	color: #cb3b4c !important;
}

.has-error .form-control.placeholder {
	color: #cb3b4c !important;
}

.has-error .tooltip {
	opacity: 1;
	visibility: visible;
}

/* tooltip styles */

.tooltip {
	font-size: 12px;
	line-height: 16px;
	background: #cb3b4c;
	text-transform: uppercase;
	width: 240px;
	position: absolute;
	bottom: 100%;
	font-weight: 700;
	left: 50%;
	margin: 0 0 7px -120px;
	color: #fff;
	text-align: center;
	padding: 15px;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: opacity,.3s,linear;
	transition: opacity,.3s,linear;
}

.tooltip:after {
	position: absolute;
	bottom: -8px;
	left: 50%;
	margin: 0 0 0 -4px;
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid #cb3b4c;
	content: "";
}

/* intro area*/

.intro-area {
	background: #f5f5f5;
	position: relative;
	overflow: hidden;
}

.intro-area.add {
	background: #fff;
}

.intro-area .carousel-holder {
	position: relative;
	overflow: hidden;
}

.intro-area .carousel-holder.add {
	background: #fff;
	color: #2a222e;
}

.intro-area .carousel-holder.add .carousel {
	padding: 40px 20px;
}

.intro-area .carousel-holder.add .textblock {
	color: #2a222e;
	padding-right: 100px;
	float: none;
}

.intro-area .carousel-holder.add .head {
	font-size: 15px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	display: block;
	padding: 0 20px 20px 0;
	border-bottom: 1px solid #e0e9ea;
	color: #2a222e;
	margin: 0 -20px 30px 0;
}

.intro-area .carousel-holder.add h1 {
	font-size: 49px;
	line-height: 55px;
	color: #2a222e;
}

.intro-area .carousel-holder.add p {
	margin: 0 0 15px;
}

.intro-area .carousel-holder.add .pagination ul li.active a {
	background: #003346;
}

.intro-area .carousel-holder.add .pagination ul a {
	background: #8eb4b6;
}

.intro-area .carousel-holder.add .btn-default {
	margin: 0 0 50px;
}

.intro-area .carousel-holder.not-enough-slides .pagination {
	display: none;
}

.intro-area .caption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	font-size: 14px;
	line-height: 20px;
	width: 100%;
	height: 100%;
	float: left;
	font-weight: 300;
	color: #fff;
	z-index: 9;
}


.intro-area .caption:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	background: url(../images/intro_area_background.png);

	/*background: url(../images/blue_swatch.png);*/

	/*
	   abo - changed the opacity to 100% so that the background color will blend accurately with the
	   the image as the browser page is re-sized... otherwise we end up with odd looking vertical
	   bars
	*/
	/*opacity: 1;*/
	opacity: .80;

	content: "";
	z-index: -1;
}

.intro-area .carousel {
	background: none;
}

.intro-area .carousel.add .caption {
	position: relative;
	float: left;
	background: #fff;
	width: 50%;
}

.intro-area .carousel.add .caption:after {
	display: none;
}

.intro-area .carousel.add .textblock {
	color: #2a222e;
	padding: 20px 17px 70px;
}

.intro-area .carousel.add p {
	margin: 0 0 10px;
	display: none;
}

.intro-area .carousel.add h1 {
	color: #2a222e;
	margin: 0 0 25px;
	font-size: 25px;
	line-height: 30px;
}

.intro-area .carousel.add .name {
	font-size: 15px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 400;
	padding: 0 0 10px;
	margin: 0 0 15px;
}

.intro-area .carousel.add .image {
	position: absolute;
	right: 0;
	bottom: 0;
	top: 0;
	width: 50%;
	min-width: inherit;
}

.intro-area .carousel.add .image img {
	min-width: inherit;
	position: static;
	margin: 0;
}

.intro-area .carousel.add .bg-stretch {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.intro-area .carousel.add .bg-stretch img {
	max-width: inherit;
	margin: 0 -200px 0 0;
}

.intro-area .carousel.add .content {
	padding: 0;
}

.intro-area .carousel.add .pagination ul li.active a {
	background: #003346;
}

.intro-area .carousel.add .pagination ul a {
	background: #8eb4b6;
}

.intro-area .carousel.right .caption {
	right: 0;
	left: auto;
}

.intro-area .carousel.right .textblock {
	float: left;
}

.intro-area .carousel.right h1 {
	font-size: 25px;
	line-height: 30px;
	margin: 0 0 5px;
   /* abo - set font weight for intro area text */
   font-weight: 200;
}

.intro-area .carousel.right .image {
	min-width: 375px;
	width: 100%;
	float: left;
}

.intro-area .carousel.right .image img {
	width: 100%;
	height: auto;
	display: block;
	min-width: 375px;
	margin: 0;
}

.intro-area .textblock {
	padding: 20px 28px;
	height: 100%;
	float: right;
	opacity: 1;
	z-index: 9;
	white-space: nowrap;
	text-align: center;
}

.intro-area .textblock:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 100%;
}

.intro-area .textblock > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.intro-area .content {
	text-align: left;
}

.intro-area .mask {
	position: relative;
	overflow: hidden;
}

.intro-area .slideset {
	width: 9999px;
	float: left;
}

.intro-area .slide {
	position: relative;
	float: left;
	width: 100%;
	overflow: hidden;
}

.intro-area h1 {
	font-size: 25px;
	line-height: 30px;
	color: #fff;
	/* abo - set font weight for intro area text */
	font-weight: 200;
	margin: 0 0 10px;
}

.intro-area h1 span {
	display: block;
}

.intro-area h1.large {
	font-size: 25px;
	line-height: 30px;
	margin: 0 0 15px;
}

.intro-area .btn-area {
	padding: 5px 0 0;
}

.intro-area .btn-primary {
	background: #fff;
	color: #003346;
}

.intro-area .btn-primary:hover {
	background: -webkit-linear-gradient(top, #fff 0%, #e5e5e5 100%);
	background: linear-gradient(to bottom, #fff 0%, #e5e5e5 100%);
}
/* abo - set the font weights for the intro name */
.intro-area .name {
	font-size: 13px;
	line-height: 17px;
	font-family: "CushingStd-Medium", sans-serif;
	font-weight: 800;
	display: block;
	overflow: hidden;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 5px;
}

/* abo - set the font weights for the intro "meet" */
.intro-area .name em {
	font-size: 9px;
	line-height: 14px;
	font-style: normal;
	display: block;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 500;
}

.intro-area .designation {
	font-size: 12px;
	line-height: 17px;
	font-family: "CushingStd-Heavy", sans-serif;
	display: block;
	overflow: hidden;
	text-transform: uppercase;
	letter-spacing: .5px;
	margin: 0 0 5px;
}

.intro-area .btn-default span,
.intro-area .btn-primary span {
	font-size: 12px;
	line-height: 13px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	display: block;
	color: #8eb4b6;
	/*font-weight: 700;*/
	letter-spacing: 2px;
	padding: 0 0 5px;
}

.intro-area .btn-default.add,
.intro-area .btn-primary.add {
	padding: 10px 15px;
}

.intro-area .btn-default,
.intro-area .btn-primary {
	padding: 10px 20px;
}

.intro-area p {
	margin: 0 0 10px;
}

.intro-area .image {
	min-width: 375px;
	width: 100%;
	float: right;
}

.intro-area .image img {
	width: 100%;
	height: auto;
	display: block;
	min-width: 375px;
}

.intro-area .pagination {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9;
}

.intro-area .pagination ul {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 28px 15px;
}

/*  pagination */

.pagination {
	overflow: hidden;
}

.pagination ul {
	font-size: 0;
	line-height: 0;
}

.pagination ul li {
	display: inline-block;
	vertical-align: top;
	margin: 0 3px;
}

.pagination ul li.active a {
	background: #003346;
}

.pagination ul a {
	width: 10px;
	height: 2px;
	overflow: hidden;
	text-indent: 101%;
	white-space: nowrap;
	background: #fff;
	display: block;
	text-decoration: none;
}

.pagination ul a:hover {
	background: #003346;
}

/* Statemet part styles */

.statements {
	overflow: hidden;
	position: relative;
	z-index: 99;
}

.statements.inner {
	background: #fff;
}

.statements.inner h2 {
	text-align: center;
	margin: 0 0 30px;
}

.statements.inner .container {
	padding-top: 30px;
}

.statements.inner .container:after {
	display: none;
}

.statements.inner .video-area {
	border-top: 1px solid #c6d9da;
}

.statements.boxes {
	background: #fff;
	text-align: center;
}

.statements.boxes .container {
	padding-bottom: 30px;
}

.statements.boxes .container:after {
	display: none;
}

.statements.boxes .video-holder {
	margin: 0;
}

.statements.boxes .video-area .container {
	padding-top: 0;
}

.statements.boxes .box {
	text-align: left;
	margin-bottom: 30px;
}

.statements.boxes .box.mobile {
	display: none;
}

.statements.boxes .btn-play {
	font-size: 50px;
	line-height: 50px;
	color: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	text-decoration: none;
	margin: -25px 0 0 -25px;
}

.statements.boxes .btn-play:hover {
	color: #333;
}

.statements.boxes .btn-default {
	margin: 0;
}

.statements .video-holder {
	overflow: hidden;
	position: relative;
}

.statements .container {
	padding-top: 50px;
	position: relative;
	z-index: 9;
	padding-bottom: 0;
}

.statements .container:after {
	background: url(../images/bg-pattern5.png);
	background-size: 18% auto;
	content: "";
	position: absolute;
	left: 50%;
	width: 165px;
	top: 0;
	bottom: 0;
	z-index: -1;
	margin: 0 0 0 -82px;
}

.statements .text {
	overflow: hidden;
	padding: 0 0 5px;
}

.statements .text.second {
	padding: 0 0 5px 20px;
}

.statements .text.third {
	padding: 0 0 5px 20px;
}

.statements .text-holder {
	font-size: 20px;
	line-height: 24px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 200;
	text-align: center;
	color: #2a222e;
	text-transform: uppercase;
}

.statements .text-holder em {
	font-size: 19px;
	line-height: 19px;
	font-style: normal;
	position: relative;
}

.statements .text-holder em.num {
	padding: 0 0 0 15px;
}

.statements .text-holder em sup {
	position: absolute;
	top: 2px;
	left: 3px;
	font-size: 20px;
	line-height: 20px;
}

.statements .text-holder strong {
	font-size: 49px;
	line-height: 53px;
	display: inline-block;
	vertical-align: middle;
	font-family: "CooperHewitt", sans-serif;
	text-transform: uppercase;
	font-weight: 300;
	border-bottom: 2px solid #2a222e;
	padding: 0 5px;
	margin: 0 5px;
}

.statements .text-holder span,
.statements .text-holder em {
	display: inline-block;
	vertical-align: middle;
}

.statements .cols {
	text-align: center;
	padding: 30px 0;
	margin: 0 -10px;
	font-size: 14px;
	line-height: 18px;
}

.statements .cols .col {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin: 0 .5% 20px;
	position: relative;
}

.statements .cols .col:first-child:before {
	display: none;
}

.statements .cols .col:before {
	background: #2a222e;
	position: absolute;
	height: 2px;
	width: 40px;
	top: 55px;
	left: 0;
	content: "";
	margin: 0 0 0 -20px;
	display: none;
}

.statements .head {
	width: 60px;
	height: 60px;
	text-transform: uppercase;
	display: block;
	margin: 0 auto 15px;
	position: relative;
	text-align: center;
	z-index: 1;
	white-space: nowrap;
	text-align: center;
}

.statements .head:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 60px;
}

.statements .head > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.statements .head:after {
	background: #fff;
	position: absolute;
	width: 60px;
	height: 60px;
	top: 0;
	left: 4px;
	content: "";
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: -1;
}

.statements .head span {
	font-size: 8px;
	line-height: 12px;
	font-weight: 700;
	color: #8eb4b6;
	letter-spacing: 2px;
	padding: 0 0 7px;
}

.statements .head strong {
	font-size: 25px;
	line-height: 25px;
	font-weight: 300;
	clear: both;
	width: 100%;
	color: #003346;
	letter-spacing: 0;
	padding: 7px 3px 12px;
}

/* visual section */

.visual-section {
	font-size: 18px;
	line-height: 28px;
	overflow: hidden;
	position: relative;
}

.visual-section:after {
	background: url(../images/bg-pattern2.png);
	background-size: 17% auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 30px;
	content: "";
	display: none;
}

.visual-section .image {
	overflow: hidden;
}

.visual-section .image img {
	width: 100%;
	height: auto;
	display: block;
}

.visual-section .caption {
	background: #f5f5f5;
	text-align: center;
}

.visual-section .container {
	max-width: 1000px;
	padding-top: 35px;
	padding-bottom: 35px;
}

.visual-section h3 {
	margin: 0 0 30px;
}

/* video area */

.video-area {
	position: relative;
	margin: 0 -28px;
	z-index: 99;
}

.video-area img {
	width: 100%;
	height: auto;
	display: block;
}

.video-area .container {
	max-width: 1200px;
}

.video-area .btn-play {
	font-size: 50px;
	line-height: 50px;
	color: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	text-decoration: none;
	margin: -25px 0 0 -25px;
}

.video-area .btn-play:hover {
	color: #333;
}

.video-area .caption {
	font-size: 14px;
	line-height: 18px;
	position: absolute;
	bottom: 5px;
	left: 10px;
}

.video-area .caption span {
	background: #2a222e;
	display: inline-block;
	padding: 2px 5px 5px;
	color: #fff;
	margin: 0 0 3px;
	letter-spacing: -.6px;
}

/* about us */

.about-holder {
	overflow: hidden;
	background: #f5f5f5;
}

.about {
	font-size: 18px;
	line-height: 28px;
}

.about .image-area {
	position: relative;
	padding: 30px 0;
	overflow: hidden;
	z-index: 10;
}

.about .image-area:after {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	width: 84px;
	height: 342px;
	content: "";
	top: 0;
	left: 159px;
	display: none;
}

.about .image {
	position: relative;
	z-index: 11;
}

.about .image img {
	width: 100%;
	height: auto;
	display: block;
}

.about .textarea {
	position: relative;
	z-index: 9;
}

.about .textarea:after {
	width: 763px;
	height: 690px;
	position: absolute;
	top: -160px;
	right: 40px;
	background: #fff;
	content: "";
	z-index: -1;
	display: none;
}

.about h3 {
	color: #003346;
	max-width: 800px;
	position: relative;
	z-index: 9;
	margin: 0 0 28px;
}

.about h3 span {
	position: relative;
}

.about h3 span:before {
	background: #dbe5e5;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
	display: none;
}

.about p {
	margin: 0 0 5px;
}

.about .holder {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	position: relative;
}

.about .holder:after {
	background: url(../images/bg-dots.png);
	height: 67px;
	position: absolute;
	bottom: -25px;
	left: 39px;
	right: -9999px;
	content: "";
	display: none;
}

.about .holder .btn-default {
	padding: 10px 20px;
}

.about .text {
	position: relative;
}

.about .text:after {
	background: url(../images/bg-dots.png);
	width: 94px;
	height: 380px;
	position: absolute;
	bottom: 0;
	left: 39px;
	content: "";
	display: none;
}

.about .download-area {
	overflow: hidden;
	padding: 15px 0;
}

.about .download {
	overflow: hidden;
}

.about .img-holder {
	border: 1px solid #16181b;
	padding: 10px;
	overflow: hidden;
	margin: 0 0 10px;
	max-width: 122px;
	float: left;
	margin: 0 20px 0 0;
}

.about .img-holder .img {
	margin: 0 auto 10px;
	display: block;
	width: 77px;
}

.about .img-holder .img img {
	width: 100%;
	height: auto;
	display: block;
}

/* articles */

.articles {
	overflow: hidden;
	background: #fff;
}

.articles .container {
	padding: 50px 28px 0;
	position: relative;
	text-align: center;
	z-index: 1;
}

.articles .container:after {
	background: #fff;
	position: absolute;
	left: 184px;
	right: 184px;
	top: 80px;
	bottom: 58px;
	content: "";
	z-index: -1;
	display: none;
}

.articles.partner {
	position: relative;
	background: #f5f5f5;
}

.articles.partner .article {
	white-space: normal;
}

.articles.partner .article:before {
	display: none;
}

.articles.inner .article {
	padding: 0;
}

.articles .holder {
	padding: 50px 0;
	position: relative;
}

.articles .holder:after {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	width: 84px;
	height: 50px;
	content: "";
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -42px;
	display: none;
}

.articles .article {
	font-size: 14px;
	line-height: 24px;
	padding: 20px;
	margin: 0 0 50px;
	background: #fff;
}

.articles .image {
	width: 100px;
	height: 100px;
	white-space: nowrap;
	text-align: center;
	position: relative;
	margin: 0 auto 30px;
}

.articles .image:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 100px;
}

.articles .image > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.articles .image.heart img {
	margin: 18px 0 0;
	width: 50px;
}


.articles .image.home img {
    width: 45px;
    margin: 6px 5px 0 9px;
}


.articles .image.peckhome img {
    width: 45px;
    margin: 6px 9px 0 4px;
}


.articles .image.pehome img {
    width: 65px;
    margin: 6px 7px 0 6px;
}


.articles .image.user img {
	margin: 8px 8px 0;
	width: 72px;
}

.articles .image.parad img {
	margin: 8px 8px 0;
	width: 64px;
}

.articles .image.church img {
	width: 60px;
	margin: 5px 0 11px;
}


.articles .image.bubbles img {
	width: 60px;
	margin: 5px 0 0px -5px;
}



.articles .image:after {
	width: 100px;
	height: 100px;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	border: 1px solid #3d3f41;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.articles .image img {
    /*max-width: 90%;*/
	width: 65%;
	margin: 8px 0 0;
}

.articles .textarea {
	overflow: hidden;
	text-align: center;
}

.articles .textarea p {
	margin: 0 0 35px;
}




.articles h3 {
	margin: 0 0 15px;
}

.articles h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
	margin: 0 0 5px;
}

.articles h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
	display: block;
}




/* abo - add highlighted heading style to the author-block */

.author-block h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
}

.author-block h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
	display: block;
}



/* compnay-bio */

.company-bio {
	background: #f5f5f5;
}

.company-bio .block-holder {
	position: relative;
}

.company-bio .textblock {
	font-size: 18px;
	line-height: 28px;
	width: 100%;
	position: relative;
	padding: 20px 28px 20px;
	min-height: 250px;
	font-weight: 300;
}

.company-bio h1 {
	font-size: 66px;
	line-height: 80px;
	margin: 0 0 20px;
}

.company-bio h1 span {
	display: block;
}

.company-bio h3 span:before {
	background: #dbe5e5;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
	display: none;
}

.company-bio h3 br {
	display: none;
}

.company-bio .image {
	display: none;
}

.company-bio .image img {
	width: 100%;
	height: auto;
	display: block;
}

.company-bio .icon-trust {
	font-size: 50px;
	line-height: 50px;
	display: block;
	margin: 0 0 30px;
	color: #2a222e;
}

.company-bio .head {
	margin: 0 0 20px;
	text-align: center;
}

.company-bio .text {
	overflow: hidden;
}

/* partners styles */

.partners {
	position: relative;
	overflow: hidden;
	text-align: center;
}

.partners .heading {
	padding-top: 30px;
	padding-bottom: 20px;
}

.partners .slider {
	position: relative;
	margin: 0 0 10px;
	padding: 20px 28px;
}

.partners .mask {
	position: relative;
	overflow: hidden;
	max-width: 1240px;
	margin: 0 auto;
	z-index: 1;
}

.partners .slideset {
	width: 100% !important;
	white-space: nowrap;
	letter-spacing: -.32em;
	text-align: center;
}

.partners .slide {
	display: inline-block;
	vertical-align: top;
	width: 100% !important;
	letter-spacing: 0;
	white-space: normal;
	border: 1px solid #d1dee1;
	padding: 20px;
}

.partners .image {
	white-space: nowrap;
	text-align: center;
	text-decoration: none;
}

.partners .image:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 176px;
}

.partners .image > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.partners .image img {
	width: 100%;
	height: auto;
	max-width: 100%;
}

.partners .pagination {
	position: absolute;
	/* bottom: -100px; */
	bottom: -80px;
	left: 0;
	right: 0;
	display: none;
}

.partners .pagination li.active a {
	background: #003346;
}

.partners .pagination li a {
	background: #d7e2e3;
}

.partners .pagination li a:hover {
	background: #003346;
}

.partners .textblock {
	font-size: 18px;
	line-height: 28px;
	overflow: hidden;
	text-align: center;
	padding: 0 0 30px;
}

.partners p {
	margin: 0 0 20px;
}

/* partners styles */

.blog-posts {
	background: #f5f5f5;
	position: relative;
	overflow: hidden;
	text-align: center;
}

.blog-posts.add {
	background: #fff;
}

.blog-posts.inner .heading {
	position: relative;
}

.blog-posts.inner .heading:before {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	width: 84px;
	height: 100px;
	content: "";
	/*top: -13px*/
	top: -23px;
	left: 103px;
	display: none;
}

.blog-posts .heading {
	padding-top: 20px;
	padding-bottom: 10px;
	text-align: left;
}

.blog-posts h2 {
	overflow: hidden;
}

.blog-posts .link {
	font-size: 10px;
	line-height: 14px;
	float: right;
	font-weight: 700;
	color: #8eb4b6;
	text-decoration: none;
	margin: 4px 0 4px 4px;
	letter-spacing: 1.5px;
}

.blog-posts .link:hover {
	color: #333;
}

.blog-posts .post-holder {
	overflow: hidden;
}

.blog-posts .post-holder .container {
	padding-top: 0;
	padding-bottom: 0;
	max-width: 1298px;
}

.blog-posts .post {
	position: relative;
	text-align: left;
	overflow: hidden;
	margin: 0 0 25px;
	z-index: 9;
}

.blog-posts .post:first-child .image:after {
    /* background: #bacfd2; */
	background: #d7e2e3;
	position: absolute;
	height: 1px;
	bottom: 0;
	left: -4500px;
	right: -4500px;
	content: "";
	display: none;
	z-index: -1;
}

.blog-posts p {
	margin: 0 0 5px;
}

.blog-posts .image {
	text-decoration: none;
	text-align: center;
	position: relative;
	margin: 0 15px 0 0;
	z-index: 10;
}

.blog-posts .image img {
	max-width: 100%;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 9;
}

.blog-posts .pagination {
	position: absolute;
	bottom: -130px;
	left: 0;
	right: 0;
}

.blog-posts .textblock {
	font-size: 13px;
	line-height: 18px;
	overflow: hidden;
}

.blog-posts .title {
	display: block;
	margin: 0 0 5px;
	font-weight: 400;
	font-family: "CooperHewitt", sans-serif;
}

.blog-posts .title a {
	text-decoration: none;
	color: #2a222e;
}

.blog-posts .title a:hover {
	color: #333;
}

.blog-posts .more {
	font-size: 9px;
	line-height: 13px;
	font-family: "CushingStd-Heavy", sans-serif;
	color: #8eb4b6;
	display: inline-block;
	text-decoration: none;
}

.blog-posts .more:hover {
	color: #333;
}

.blog-posts .btn-area {
	position: relative;
	text-align: left;
}

.blog-posts .btn-area:after {
	background: url(../images/bg-dots.png);
	height: 64px;
	position: absolute;
	bottom: 0;
	left: 36px;
	right: -9999px;
	content: "";
	opacity: .5;
	display: none;
}

.blog-posts .btn-area .btn-default {
	margin: 0 0 20px;
	position: relative;
}

.blog-posts .btn-area .btn-default:after {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	left: 50%;
	height: 60px;
	width: 84px;
	margin: 0 0 0 -42px;
	content: "";
	bottom: -65px;
	opacity: .5;
	display: none;
}

/* breadcrumbs */

.breadcrumbs-holder {
	overflow: hidden;
	border-top: 1px solid #d7e2e3;
	background: #fff;
}

.breadcrumbs {
	font-size: 14px;
	line-height: 18px;
	max-width: 1240px;
	/*padding: 10px 28px;*/
	padding: 14px 28px;
	margin: 0 auto;
}

.breadcrumbs li {
	display: inline-block;
	vertical-align: top;
	/*padding: 0 10px 0 0;*/
	padding: 0 5px 0 20px;
	position: relative;
}

.breadcrumbs li:first-child {
	padding-left: 0;
}

.breadcrumbs li:first-child:after {
	display: none;
}

.breadcrumbs li:after {
	position: absolute;
	top: 0;
	left: 0;
	font-family: "icomoon";
	content: "\e90a";
	color: #cac8cb;
}

.breadcrumbs a {
	color: #817e82;
	text-decoration: none;
}

.breadcrumbs a:hover {
	color: #333;
}

/* help block styles */

.help-block {
	font-size: 14px;
	line-height: 18px;
	background: #fff;
	overflow: hidden;
	text-align: center;
}

.help-block.add {
	background: #f5f5f5;
}

.help-block .container {
	padding-top: 35px;
	padding-bottom: 35px;
}

.help-block .frame {
	width: 132px;
	height: 120px;
	background: url(../images/img-frame@small.png) no-repeat;
	background-size: cover;
	position: relative;
	z-index: 1;
	display: inline-block;
}

.help-block .frame img {
	width: 100%;
	height: auto;
	display: block;
	position: relative;
	z-index: -1;
}

.help-block .frame .image {
	border: 1px solid #3f4143;
	width: 88px;
	overflow: hidden;
	border-radius: 100%;
	margin: 16px 32px;
	display: inline-block;
}

.help-block .frame .image img {
	z-index: 1;
}

.help-block .frame .comment {
	width: 30px;
	height: 30px;
	font-size: 10px;
	line-height: 10px;
	white-space: nowrap;
	text-align: center;
	background: #fff;
	position: absolute;
	top: 45px;
	left: 15px;
	border: 1px solid #3f4143;
	border-radius: 100%;
	z-index: 99;
	color: #3f4143;
	text-decoration: none;
}

.help-block .frame .comment:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 30px;
}

.help-block .frame .comment > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.help-block .frame .setting {
	width: 31px;
	height: 31px;
	font-size: 10px;
	line-height: 10px;
	white-space: nowrap;
	text-align: center;
	background: #fff;
	position: absolute;
	bottom: 16px;
	right: 15px;
	border: 1px solid #3f4143;
	border-radius: 100%;
	z-index: 99;
	color: #3f4143;
	text-decoration: none;
}

.help-block .frame .setting:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 31px;
}

.help-block .frame .setting > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.help-block .textblock {
	overflow: hidden;
}

.help-block h3 {
    /* margin: 0 0 30px; */
	margin: 0 0 21px;
}

.help-block h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
	margin: 0 0 5px;
}

.help-block h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
	display: none;
}

.help-block p {
    /* margin: 0 0 10px; */
	margin: 0 0 30px;
}

/* facilitator */

.facilitator {
	font-size: 18px;
	line-height: 28px;
	background: #f5f5f5;
	overflow: hidden;
}

.facilitator .container {
	padding-top: 26px;
}

.facilitator.add {
	background: #f5f5f5;
}

.facilitator.add .cols:after {
	display: none;
}

.facilitator.add .cols .col {
	position: relative;
	z-index: 1;
	padding: 50px 30px;
}

.facilitator.add .cols .col:after {
	position: absolute;
	top: 0;
	right: 50px;
	bottom: 0;
	left: 50px;
	background: #fff;
	content: "";
	z-index: -1;
}

.facilitator.add .cols .btn-primary {
	min-width: 170px;
}

.facilitator.add .cols .btn-default {
	min-width: 170px;
}





.facilitator.add .cols_indented:after {
	display: none;
}

.facilitator.add .cols_indented .col {
	position: relative;
	z-index: 1;
	padding: 50px 30px;
}

.facilitator.add .cols_indented .col:after {
	position: absolute;
	top: 0;
	right: 50px;
	bottom: 0;
	left: 50px;
	background: #fff;
	content: "";
	z-index: -1;
}

.facilitator.add .cols_indented .btn-primary {
	min-width: 170px;
}

.facilitator.add .cols_indented .btn-default {
	min-width: 170px;
}





.facilitator.add .connector {
	max-width: 380px;
	border-color: #c1d4d5;
	border-width: 1px 1px 0;
}

.facilitator.add .connector:after {
	background: #c1d4d5;
	width: 1px;
}


.facilitator.add .connector2 {
	max-width: 380px;
	border-color: #c1d4d5;
	border-width: 1px 1px 0;
}

.facilitator.add .connector2:after {
	background: #c1d4d5;
	width: 1px;
}


.facilitator.inner {
	background: #fff;
}

.facilitator.inner .container {
	padding-bottom: 0;
}

.facilitator.inner .heading:after {
	display: none;
}



.facilitator.inner .connector {
	border-width: 1px 1px 0;
}

.facilitator.inner .connector:after {
	display: none;
}

.facilitator.inner .connector.add {
	border-width: 0 1px;
}



.facilitator.inner .connector2 {
	border-width: 1px 1px 0;
}

.facilitator.inner .connector2:after {
	display: none;
}

.facilitator.inner .connector2.add {
	border-width: 0 1px;
}



.facilitator.inner .cols {
	text-align: left;
}

.facilitator.inner .cols .col {
	padding: 0;
	margin: 0;
}




.facilitator.inner .cols_indented {
	text-align: left;
}

.facilitator.inner .cols_indented .col {
	padding: 0;
	margin: 0;
}


/* abo - some elements should only be visible depending upon the column format */

.facilitator .for_single_column {
    visibility: hidden;
    display: none;
}

.facilitator .for_multi_column {
    visibility: hidden;
    display: none;
}




.facilitator .heading {
	position: relative;
	padding: 10px 0;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}

.facilitator .heading:after {
	position: absolute;
	width: 2px;
	height: 50px;
	/* top: -20px; */
	top: -26px;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
	display: none;
}

.facilitator .heading:before {
	top: auto;
	bottom: 0;
}

.facilitator h2 {
	margin: 0 0 8px;
}

.facilitator h3 {
	margin: 0 0 8px;
}

.facilitator h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
}

.facilitator h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}




.facilitator .connector {
	position: relative;
	height: 50px;
	margin: 0 auto;
	border: solid #e1ebec;
	border-width: 2px 2px 0;
	padding: 40px 0 0;
	display: none;
}

.facilitator .connector:after {
	position: absolute;
	width: 2px;
	height: 50px;
	bottom: 100%;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
}

.facilitator .connector.down {
	padding: 0 0 50px;
	border-width: 0 2px 2px;
}

.facilitator .connector.down:after {
	bottom: auto;
	top: 100%;
}




.facilitator .connector2 {
	position: relative;
	height: 50px;
	margin: 0 auto;
	border: solid #e1ebec;
	border-width: 2px 2px 0;
	padding: 40px 0 0;
	display: none;
}


.facilitator .connector2.up:after {
	position: absolute;
	width: 2px;
	height: 50px;
	bottom: 100%;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
}


.facilitator .connector2.down {
	padding: 0 0 50px;
	border-width: 0 2px 2px;
}


.facilitator .connector2.verticalonly {
	padding: 0 0 50px;
	border-width: 0 2px 0px;
}


.facilitator .connector2.down:after {
	bottom: auto;
	top: 100%;
}

.facilitator .connector2.verticalonly:after {
	padding: 0 0 50px;
	border-width: 0 2px 0px;
}



.facilitator .cols {
	text-align: center;
	position: relative;
}

/* abo - per laura W and justin, added style to left alight paragraph text*/
.facilitator p {
	text-align: left;
}

.assessment p {
	text-align: left;
}


.facilitator .cols:after {
	background: url(../images/g-dots.png) no-repeat;
	position: absolute;
	width: 44px;
	height: 44px;
	left: 50%;
	top: 50%;
	content: "";
	margin: -22px 0 0 -22px;
	display: none;
}

.facilitator .cols .col {
	background: #fff;
	padding: 30px;
	overflow: hidden;
	margin: 0 0 20px;
}

.facilitator .cols.add {
	padding: 0 0 25px;
}

.facilitator .cols.add:after {
	display: none;
}





.facilitator .cols_indented {
	text-align: center;
	position: relative;
}


.facilitator .cols_indented:after {
	background: url(../images/g-dots.png) no-repeat;
	position: absolute;
	width: 44px;
	height: 44px;
	left: 50%;
	top: 50%;
	content: "";
	margin: -22px 0 0 -22px;
	display: none;
}


.facilitator .cols_indented .col {
	background: #fff;
	padding: 10px;
	overflow: hidden;
	margin: 0 0 0px;
}

.facilitator .cols_indented.add {
	padding: 0 0 0px;
}

.facilitator .cols_indented.add:after {
	display: none;
}



/* assessment */

.assessment {
	font-size: 18px;
	line-height: 28px;
	overflow: hidden;
	text-align: left;
	position: relative;
	overflow: hidden;
	z-index: 9;
	background: #e6ebee;
}

.assessment:after,
.assessment:before {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	width: 84px;
	height: 50px;
	content: "";
	top: 8px;
	left: 50%;
	margin: 0 0 0 -42px;
	display: none;
}

.assessment:before {
	top: auto;
	bottom: 2px;
}

.assessment .container {
	padding-top: 35px;
	padding-bottom: 35px;
}

.assessment .heading {
	position: relative;
	max-width: 1080px;
	margin: 0 auto 50px;
}

.assessment .text {
	display: block;
}

.assessment h3 {
	margin: 0 0 8px;
}

.assessment ol {
	list-style: none;
	counter-reset: newCounter;
	position: relative;
	z-index: 1;
	text-align: left;
	margin: 0;
	padding: 0;
}

.assessment ol:after {
	background: url(../images/bg-pattern2.png);
	position: absolute;
	top: 20px;
	left: -4500px;
	right: -4500px;
	height: 39px;
	content: "";
	z-index: -1;
	display: none;
}

.assessment ol li {
	font-size: 18px;
	line-height: 28px;
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0 0 0 65px;
}

.assessment ol li:before {
	counter-increment: newCounter;
	content: counters(newCounter, ".") " ";
	background: #fff;
	width: 50px;
	height: 50px;
	font-size: 25px;
	line-height: 25px;
	position: absolute;
	top: 6px;
	left: 0;
	color: #003346;
	padding: 12px 5px 0;
	text-align: center;
}

.assessment .download-holder {
	position: relative;
	z-index: 1;
}

.assessment .download-holder:after {
	position: absolute;
	top: 100px;
	right: 0;
	bottom: 0;
	left: 0;
	background: #f5f5f5;
	content: "";
	z-index: -1;
	display: none;
}

.assessment .download-holder .container {
	padding-top: 0;
	position: relative;
}

.assessment .download-holder .container:after,
.assessment .download-holder .container:before {
	background: url(../images/bg-dots.png) repeat-y;
	position: absolute;
	width: 84px;
	height: 50px;
	content: "";
	top: -50px;
	left: 50%;
	margin: 0 0 0 -42px;
	display: none;
}

.assessment .download-holder .container:before {
	top: auto;
	height: 120px;
	bottom: 0;
}

.assessment .title,
.assessment .btn-default {
	display: inline-block;
	vertical-align: middle;
}

.assessment .title {
	display: block;
	margin: 0 0 15px;
}

.assessment .download {
	padding: 0 0 0 85px;
	position: relative;
}

.assessment .img-holder {
	border: 1px solid #16181b;
	padding: 10px 10px 0px 10px;
	margin: 10px 0 10px;
	max-width: 122px;
	float: left;
	margin: 0 20px 0 0;
	position: relative;
	position: absolute;
	top: 0;
	left: 0;
}

.assessment .img-holder .img {
	margin: 0 auto 10px;
	display: block;
	width: 77px;
}

.assessment .img-holder .img img {
	width: 100%;
	height: auto;
	display: block;
}



/* details */

.details {
	overflow: hidden;
	font-size: 13px;
	line-height: 18px;
}

.details .container {
	padding-top: 30px;
	padding-bottom: 30px;
}

.details .heading {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}

.details .heading:after {
	position: absolute;
	width: 2px;
	height: 81px;
	top: -20px;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
	display: none;
}

.details .heading:before {
	top: auto;
	bottom: 0;
}

.details h2 {
	margin: 0 0 8px;
}

.details h3 {
	margin: 0 0 8px;
}

.details h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
}

.details h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}

.details table {
	width: 100%;
	text-align: center;
	margin: 0 0 50px;
}

.details table th {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
}

.details table th,
.details table td {
    /* border: solid #bacfd2; */
	border: solid #d7e2e3;
	border-width: 0 0 1px 1px;
	padding: 10px;
}

.details table th:first-child,
.details table td:first-child {
	border-left: 0;
	width: 72.5%;
	text-align: left;
	padding-left: 0;
}

.details table i {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	line-height: 20px;
	margin: 0 0 3px;
}

.details .btn-area {
	text-align: center;
}

.details .btn-area li {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 1px 10px;
}

.details .btn-area span {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
	display: block;
	margin: 0 0 8px;
}

.details .btn-area strong {
	font-weight: 400;
	display: inline-block;
	margin: 0 0 17px;
}

.details .btn-area em {
	font-size: 12px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	font-style: normal;
	display: block;
	color: #8eb4b6;
	margin: 0 0 10px;
}

.details .btn-area .btn-primary,
.details .btn-area .btn-default {
	margin: 0;
}

.details .btn-default,
.details .btn-primary {
    margin: 0 22px 0 0;
    padding: 6px 12px;
    min-width: 70px;
    font-size: 12px;		
}



/* grid2c */

.grid2c {
	overflow: hidden;
	font-size: 12px;
	line-height: 14px;
}

.grid2c .post-info td {
    font-size: 14px;
    line-height: 18px;
}

/* ab0 - decreased top padding to 0 and bottom to 10 */
.grid2c .container {
	padding-top: 0px;
	padding-bottom: 10px;
}

.grid2c .heading {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}

.grid2c .heading:after {
	position: absolute;
	width: 2px;
	height: 81px;
	top: -20px;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
	display: none;
}

.grid2c .heading:before {
	top: auto;
	bottom: 0;
}

.grid2c h2 {
	margin: 0 0 8px;
}

.grid2c h3 {
	margin: 0 0 8px;
}

.grid2c h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
}

.grid2c h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}


.grid2c .post-info h3 {
	position: relative;
	display: inline-block;
	z-index: 1;
	margin: 12px 0 22px;
	padding: 0 5px;
	color: #003346;
}

.grid2c .post-info h3:before {
	background: #dbe5e5;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}


.grid2c table {
	width: 100%;
	text-align: center;
	margin: 0 0 50px;
}

.grid2c table th {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
}

.grid2c table th,
.grid2c table td {
    /* border: solid #bacfd2; */
	border: solid #d7e2e3;
	border-width: 0 0 1px 1px;
	padding: 10px;
	text-align: left;
}

/* abo - since this is a 2 column grid layout... allow for equal spacing in both columns */
.grid2c table th:first-child,
.grid2c table td:first-child {
	border-left: 0;
	width: 50%;
	text-align: left;
	padding-left: 0;
}

.grid2c table i {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	line-height: 20px;
	margin: 0 0 3px;
}

.grid2c .btn-area {
	text-align: center;
}

.grid2c .btn-area li {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 1px 10px;
}

.grid2c .btn-area span {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
	display: block;
	margin: 0 0 8px;
}

.grid2c .btn-area strong {
	font-weight: 400;
	display: inline-block;
	margin: 0 0 17px;
}

.grid2c .btn-area em {
	font-size: 15px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	font-style: normal;
	display: block;
	color: #8eb4b6;
	margin: 0 0 10px;
}

.grid2c .btn-area .btn-primary,
.grid2c .btn-area .btn-default {
	margin: 0;
}




/* bookstore */

.bookstore {
	overflow: hidden;
	font-size: 18px;
	line-height: 18px;
}

.bookstore .container {
	padding-top: 3px;
	padding-bottom: 3px;
}

.bookstore .heading {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
}

.bookstore .heading:after {
	/*position: absolute;*/
	width: 2px;
	/*height: 81px;*/
	top: -20px;
	left: 50%;
	background: #e1ebec;
	margin: 0 0 0 -1px;
	content: "";
	display: none;
}

.bookstore .heading:before {
	top: auto;
	bottom: 0;
}

.bookstore h2 {
	margin: 0 0 8px;
}

.bookstore h3 {
	margin: 0 0 8px;
}

.bookstore h3 span {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	z-index: 1;
}

.bookstore h3 span:before {
	background: #e3eced;
	position: absolute;
	top: 15px;
	bottom: 5px;
	left: 0;
	right: 0;
	content: "";
	z-index: -1;
}

.bookstore table {
	width: 100%;
	text-align: center;
	margin: 0 0 10px;
}

.bookstore table th {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
}

.bookstore table th,
.bookstore table td {
	/*
	border: solid #bacfd2;
	border-width: 0 1px 1px;
	*/
	padding: 10px;
}

.bookstore table th:first-child,
.bookstore table td:first-child {
	border-left: 0;
	/* abo - forcing the widths inline... so do not set here */
	/*width: 72.5%;*/
	text-align: left;
	padding-left: 0;
}

.bookstore table i {
	font-size: 20px;
	line-height: 20px;
}

.bookstore .btn-area {
	text-align: center;
}

.bookstore .btn-area li {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 1px 10px;
}

.bookstore .btn-area span {
	font-family: "CushingStd-Heavy", sans-serif;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
	display: block;
	margin: 0 0 8px;
}

.bookstore .btn-area strong {
	font-weight: 400;
	display: inline-block;
	margin: 0 0 17px;
}

.bookstore .btn-area em {
	font-size: 15px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	font-weight: 300;
	font-style: normal;
	display: block;
	color: #8eb4b6;
	margin: 0 0 10px;
}

.bookstore .btn-area .btn-primary,
.bookstore .btn-area .btn-default {
	margin: 0;
}

/* abo - set the bookstore button styles */
.bookstore .btn-area input[type="submit"] {
    font-family: "CushingStd-Heavy", sans-serif;
    font-weight: 200;
	font-size: 16px;
	line-height: 20px;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-block;
	width: 144px;
	height: 45px;
	margin: 0 5px 0 5px;
	padding: 10px;
	border-radius: 2px;
	border: none;
	background: #003346;
	color: #fff;
	/*position: absolute;*/
	bottom: 0px;
	right: 0px;
}

.bookstore .btn-area input[type="submit"]:hover, input[type="submit"]:focus {
	background: #1a4859;
	background: -webkit-linear-gradient(top, #1a4859 1%, #003346 100%);
	background: linear-gradient(to bottom, #1a4859 1%, #003346 100%);
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}


.bookstore input[type="text"] {
    font-family: "CooperHewitt", sans-serif;
    font-weight: 300;
	font-size: 16px;
	line-height: 20px;
	text-align: center;

}







/* author block */

.author-block {
	background: #fff;
	overflow: hidden;
	font-size: 14px;
	line-height: 20px;
}

.author-block.add {
	background: #fff;
}

.author-block.interest {
	background: #fff;
}

.author-block.interest .container {
	display: block;
}

.author-block .container {
	padding-bottom: 0;
	padding-top: 0;
}

.author-block .textblock {
	padding: 50px 0;
}

.author-block .textblock .holder {
	text-align: left;
}

.author-block h3 {
	margin: 0 0 30px;
}

.author-block h3 br {
	display: none;
}

.author-block .image-area {
	overflow: hidden;
	position: relative;
	z-index: 1;
	max-width: 150px;
	margin: 0 auto;
}

/* abo - for the time being, remove the style lines above and below the image
         as the current image has a non-white background */

/*
.author-block .image-area:after,
.author-block .image-area:before {
	position: absolute;
	top: -10%;
	left: 0;
	right: 0;
	bottom: 0;
	height: 170px;
	content: "";
	border: solid #c1d4d5;
	border-width: 0 1px 1px;
	z-index: -1;
	display: none;
}

.author-block .image-area:before {
	top: auto !important;
	bottom: 0;
	border-width: 1px 1px 0;
	display: block !important;
}
*/

.author-block .image-area img {
	width: 100%;
	height: auto;
	display: block;
	display: block;
}

.author-block .image {
	width: 100px;
	height: 100px;
	white-space: nowrap;
	text-align: center;
	position: relative;
	display: block;
	margin: 0 auto 50px;
}

.author-block .image:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 100px;
}

.author-block .image > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

.author-block .image:after {
	width: 100px;
	height: 100px;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	border: 1px solid #3d3f41;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.author-block .image img {
	max-width: 90%;
	display: block;
	margin: 15px auto 0;
}

.author-block .btn-default,
.author-block .btn-primary {
	min-width: 150px;
	margin: 0 15px 15px 0;
	display: block;
}

/* testsimonials */

.testimonials {
	background: #fff;
	overflow: hidden;
	position: relative;
	font-size: 18px;
	line-height: 28px;
}

.testimonials .image {
	overflow: hidden;
	position: relative;
}

.testimonials .image img {
	width: 100%;
	height: auto;
	display: block;
}

.testimonials .holder {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.testimonials .container {
	height: 100%;
	position: relative;
}

.testimonials .caption {
	font-size: 18px;
	line-height: 28px;
	position: absolute;
	bottom: 20px;
	left: 10px;
}

.testimonials .caption .text {
	display: block;
	margin: 0 0 13px;
}

.testimonials .caption span {
	background: #2a222e;
	display: inline-block;
	padding: 3px 10px 5px;
	color: #fff;
	margin: 0 0 5px;
}

.testimonials .btn-default {
	font-family: "CooperHewitt", sans-serif;
	background: #fff;
	font-weight: 400;
	padding: 5px;
	color: #2a222e;
	border-radius: 2px;
}

.testimonials .head {
	overflow: hidden;
	padding: 0 0 15px;
	margin: 0 0 25px;
	border-bottom: 1px solid #e0e9ea;
}

.testimonials .t-close {
	font-size: 13px;
	line-height: 13px;
	float: right;
	color: #b1adb2;
	margin: 0 0 0 10px;
	text-decoration: none;
}

.testimonials .title {
	font-size: 15px;
	line-height: 18px;
	font-family: "CooperHewitt", sans-serif;
	text-transform: uppercase;
	display: block;
	overflow: hidden;
	font-weight: 400;
}

.testimonials h3 {
	font-family: "CooperHewitt", sans-serif;
	font-weight: 200;
}

/* abo - increased font size */
.authors {
	font-size: 16px;
	line-height: 24px;
	overflow: hidden;
	background: #fff;
}

.authors .container {
	padding-top: 0;
	padding-bottom: 0;
	max-width: 1320px;
}

.authors .cols {
	overflow: hidden;
	position: relative;
	z-index: 1;
	margin: 0 -28px;
}

.authors .cols:after {
	background: url(../images/bg-pattern2.png);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 70px;
	content: "";
	z-index: -1;
	display: none;
}

.authors .col {
	border-bottom: 1px solid #e2ebeb;
	/* abo - added bottom margin after the line */
	margin-bottom: 30px;
	overflow: hidden;
}

.authors .col:only-child {
	float: left;
	width: 100%;
	border: solid #c1d4d5;
	border-top: 1px 0 0;
}

.authors .image {
	padding: 15px 0 0;
	background: #fff;
	text-align: center;
	/* abo - it looks better at the smaller sizes if the
	         image remains above the text */
	float: none;
	width: 100%;
}

.authors .image img {
    /* abo - control the image size so it does not get too big, but force
             it to a size that will position it above the text */
	max-width: 350px;
	min-width: 65%;
	/* abo - modified the top margin from -50px to 0px to eliminate top truncation */
	margin: 0px auto 0;
	display: inline-block;
	vertical-align: bottom;
}

.authors .textblock {
    /* abo - force the text below the image */
    min-width: 55%;
	padding: 20px 30px;
	overflow: hidden;
	border-left: 1px solid #e2ebeb;
}

.authors h1 {
	font-size: 25px;
	line-height: 30px;
	font-family: "CooperHewitt", sans-serif;
	margin: 0 0 20px;
	font-weight: 400;
	/* abo - make sure the heading stays centered */
	text-align: center;
}

.authors .btn-primary {
	font-size: 13px;
	line-height: 18px;
	padding: 10px 15px;
	min-width: 150px;
	margin: 0;
}

.authors .btn-primary span {
	font-size: 10px;
	line-height: 14px;
	color: #fff;
	font-weight: 400;
	font-family: "CooperHewitt", sans-serif;
}

.authors .btn-primary em {
	font-style: normal;
	display: block;
	margin: 0 0 6px;
}

.authors .article {
	overflow: hidden;
	text-align: center;
}

.authors .article .textblock {
	/*max-width: 500px;*/
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 30px 0;
}

.authors .article .btn-area {
	overflow: hidden;
}

/* allow the width to be set in proportion to the device width */
.authors .article .textblock {
    max-width: 95%;
    padding: 0px 0 15px;
}

/* footer styles */

#footer {
	background: #f5f5f5;
	position: relative;
	overflow: hidden;
	padding: 0 0 30px;
}

#footer:after {
	background: url(../images/bg-pattern2.png);
	background-size: 17% auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 30px;
	content: "";
	display: none;
}

#footer .container {
	position: relative;
	padding: 75px 20px 20px;
	max-width: 1405px;
}

#footer .container:before,
#footer .container:after {
	background: url(../images/bg-pattern3.png);
	position: absolute;
	width: 85px;
	top: 3px;
	bottom: 0;
	left: 0;
	content: "";
	display: none;
}

#footer .container:after {
	left: auto;
	right: 0;
}

#footer .logo {
	width: 144px;
	margin: 0 auto 26px;
	overflow: hidden;
}

#footer .logo img {
	width: 100%;
	height: auto;
	display: block;
}

#footer .links {
	font-size: 10px;
	line-height: 13px;
	font-family: "CushingStd-Heavy", sans-serif;
	color: #2a222e;
	text-align: center;
	text-transform: uppercase;
	margin: 0 0 10px;
	letter-spacing: 1.25px;
}

#footer .links li {
	display: inline-block;
	vertical-align: top;
	margin: 0 3px 20px;
}

#footer .links li.active a {
	text-decoration: underline;
}

#footer .links a {
	color: #2a222e;
	text-decoration: none;
}

#footer .links a:hover {
	text-decoration: underline;
}

#footer .cols {
	padding: 0 0 34px;
}

#footer .cols .col {
	margin: 0 0 32px;
}

#footer form {
	border: 1px solid #c1d4d5;
	padding: 15px 20px 18px;

	/* abo - for now center the elements in the join form */
	text-align: center;
}

#footer form .input {
	padding: 4px 0 7px 4px;
	position: relative;
	z-index: 9;
	overflow: hidden;
}

#footer form .title {
	font-size: 13px;
	line-height: 17px;
	font-weight: 700;
	color: #2a222e;
	display: block;
	margin: 0 0 5px;
	letter-spacing: 1px;
}

#footer form .input-holder {
	margin: 0 0 0 -4px;
	position: relative;
}

#footer form .form-control {
	font-size: 13px;
	line-height: 17px;
    /* abo - the background is specified globally so that it can change depending
             upon the elements state (ie: enabled or disabled)
	/*background: #fff;*/
	color: #2a222e;
	height: 25px;
	border: none;
	width: 100%;
	padding: 5px 10px;
}

#footer form .form-control::-webkit-input-placeholder {
	color: #2a222e;
}

#footer form .form-control::-moz-placeholder {
	opacity: 1;
	color: #2a222e;
}

#footer form .form-control:-moz-placeholder {
	color: #2a222e;
}

#footer form .form-control:-ms-input-placeholder {
	color: #2a222e;
}

#footer form .form-control.placeholder {
	color: #2a222e;
}

#footer form .form-control:focus {
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}

#footer form .btn-default {
	border: none;
	/* abo - do not float the button to the right for now */
	/* float: right; */
	margin: 14px 0 0;
	padding: 6px 20px;
	min-width: 100px;
	border-radius: 0 2px 2px 0;
	letter-spacing: 1.25px;
}

#footer .f-nav {
	font-size: 18px;
	line-height: 18px;
	text-align: center;
}

#footer .f-nav ul {
	float: left;
	width: 48%;
	padding: 0 0 0 16px;
}

#footer .f-nav ul:first-child {
	float: left;
	padding: 0;
}

#footer .f-nav li {
	padding: 0 0 6px;
}

#footer .f-nav li.active a {
	text-decoration: underline;
}

#footer .f-nav a {
	color: #2a222e;
	text-decoration: none;
}

#footer .f-nav a:hover {
	text-decoration: underline;
}

#footer .social-networks {
	overflow: hidden;
	text-align: center;
	padding: 0 0 13px;
	font-size: 10px;
	line-height: 10px;
}

#footer .social-networks li {
	display: inline-block;
	vertical-align: top;
	margin: 0 4px 10px;
}

#footer .social-networks a {
	width: 21px;
	height: 21px;
	white-space: nowrap;
	text-align: center;
	border-radius: 100%;
	border: 1px solid #e2e1e2;
	display: block;
	color: #7c797f;
	text-decoration: none;
}

#footer .social-networks a:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	min-height: 21px;
}

#footer .social-networks a > * {
	white-space: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 99%;
}

#footer .social-networks a:hover {
	color: #333;
}

#footer .social-networks .icon-social-facebook {
	font-size: 13px;
	line-height: 13px;
}

#footer .copyright {
	font-size: 12px;
	line-height: 14px;
	color: #16181c;
	display: block;
	text-align: center;
	letter-spacing: 1px;
	font-weight: 300;
}

#footer .copyright span {
	display: block;
}

#footer .copyright a {
	color: #16181c;
	text-decoration: none;
}

#footer .copyright a:hover {
	text-decoration: underline;
}




/* abo - added a generic two column responsive style that can be used
         as a sub-style within the other style sections */ 

.twoclm .cols {
	padding: 0 0 34px;
}

.twoclm .cols .col {
	margin: 0 0 32px;
}

.twoclm .leftclm {
	float: left;
	width: 100%;
	padding: 0 0 0 16px;
}

.twoclm .rightclm {
	float: left;
	width: 100%;
	padding: 40px 0px 0px 16px;
}



/* abo - added a generic two column responsive style that can be used
         as a sub-style within the other style sections

         this one will flip the order of the columns in the smaller responsive
         styles so that the right column shifts to the top rather than to the
         bottom
*/

.twoclm_flip .cols {
	padding: 0 0 34px;
}

.twoclm_flip .cols .col {
	margin: 0 0 32px;
}

.twoclm_flip .leftclm {
	float: left;
	width: 100%;
	padding: 50px 0 0 16px;
}

.twoclm_flip .rightclm {
	float: left;
	width: 100%;
	padding: 20px 0px 0px 16px;
}






.video-box {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.fluid-width-video-wrapper {
	height: 100%;
}

.img-holder {
	position: relative;
	z-index: 5;
}

.js-video.video-active .video-box {
	z-index: 10;
}

@media (min-width: 375px) {

     /* abo - increased the line height for this range */
    .visual h1 {
        font-size: 26px;
        line-height: 36px;
    }

	.intro-area .carousel.add .textblock {
		padding: 20px 15px 90px 28px;
	}

	.intro-area .content {
		padding: 0 50px 0 0;
	}

	.articles .image {
		margin: 0 35px 0 20px;
	}

	.articles .textarea {
		text-align: left;
	}

	.partners .textblock {
		padding: 0 10px 30px;
	}

	.blog-posts .image {
		float: left;
		width: 150px;
		height: 150px;
	}

	.details .btn-area li {
		margin: 0 5px 5px;
	}

    .grid2c .post-info td {
        font-size: 16px;
        line-height: 22px;
    }

    .grid2c .btn-area li {
        margin: 0 5px 10px;
    }

    .bookstore .btn-area li {
        margin: 0 5px 10px;
    }

	.author-block .container {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-align: end;
		-webkit-align-items: flex-end;
		-ms-flex-align: end;
		align-items: flex-end;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
	}

	.author-block .textblock {
		padding: 20px 0 40px;
		float: left;
		width: 50%;
		margin: 0 2% 0 0;
	}

	.author-block .textblock.add {
		width: 50%;
		padding: 10px 0 10px;
		margin: 0 8% 0 0;
	}

	.author-block h3 {
		margin: 0 -10% 30px 0;
	}

	.author-block .image-area {
	    width: 38%;
		max-width: 175px;
		margin: 20px -40px 20px 0;
		float: right;
		overflow: visible;
	}

	.author-block .image {
		margin: 140px 0 0 20px;
		float: left;
	}

	.testimonials .caption {
		left: 28px;
	}


    /* abo - some elements should only be visible depending upon the column format */
	.facilitator .for_single_column {
        visibility: inherit;
        display: inherit;
    }

    .facilitator .for_multi_column {
        visibility: hidden;
        display: none;
    }

    .posts .contact-form .btn-primary,
    .posts .contact-form .btn-default {
        min-width: 180px;
        padding: 12px 25px;
        font-size: 11pt;
    }


}


@media (min-width: 450px) {


    /* abo - reduced the font size for the visual heading */
    .visual h1 {
        font-size: 26px;
        line-height: 36px;
    }

    .visual .head {
        font-size: 18px;
        line-height: 26px;
        padding: 0 0 0 4px;
    }


    /* abo - reduced the font size for the intro area text */
	.intro-area h1 {
		font-size: 26px;
		line-height: 36px;
		margin: 0 0 28px;
	}

    /* abo - settings for couple's name within the intro area */
	.intro-area .name {
		font-size: 18px;
		line-height: 30px;
		margin: 0 0 15px;
	}

    /* abo - settings for "Meet" in intro area */
	.intro-area .name em {
		font-size: 12px;
		line-height: 20px;
	}


	.posts .contact-form .btn-primary,
	.posts .contact-form .btn-default {
		min-width: 180px;
		padding: 12px 25px;
		font-size: 11pt;
	}

}


@media (min-width: 480px) {
	.btn-default,
	.btn-primary {
		margin: 0 22px 0 0;
		padding: 16px 25px;
		min-width: 139px;
	}

	.details .btn-default,
	.details .btn-primary {
		margin: 0 22px 0 0;
		padding: 8px 15px;
		min-width: 80px;
	}


	.posts .contact-form .btn-primary,
	.posts .contact-form .btn-default {
		min-width: 180px;
		padding: 12px 25px;
		font-size: 12pt;
	}


	#footer .links li {
		margin: 0 15px 20px;
	}
}

@media (min-width: 485px) {
	.author-block h3 {
		margin: 0 0 30px 0;
	}
}


@media (min-width: 500px) {



    /* abo - reduced the font size for the visual heading */
    .visual h1 {
		font-size: 36px;
		line-height: 56px;
	}

    .visual .head {
		font-size: 20px;
		line-height: 26px;
		padding: 0 0 0 4px;
	}



    /* abo - reduced the font size for the intro area text */
	.intro-area h1 {
		font-size: 30px;
		line-height: 40px;
		margin: 0 0 28px;
	}

    /* abo - settings for couple's name within the intro area */
	.intro-area .name {
		font-size: 22px;
		line-height: 34px;
		margin: 0 0 15px;
	}

    /* abo - settings for "Meet" in intro area */
	.intro-area .name em {
		font-size: 16px;
		line-height: 24px;
	}

}


@media (min-width: 600px) {

    /* abo - reduced the font size for the visual heading */
    .visual h1 {
		font-size: 36px;
		line-height: 56px;
	}

    .visual .head {
		font-size: 20px;
		line-height: 26px;
		padding: 0 0 0 4px;
	}


    /* abo - reduced the font size for the intro area text */
	.intro-area h1 {
		font-size: 36px;
		line-height: 56px;
		margin: 0 0 28px;
	}


    /* abo - settings for couple's name within the intro area */
	.intro-area .name {
		font-size: 28px;
		line-height: 40px;
		margin: 0 0 15px;
	}

    /* abo - settings for "Meet" in intro area */
	.intro-area .name em {
		font-size: 18px;
		line-height: 20px;
	}

}



@media (max-width: 767px) {

    .logo_element {
        width:100%;
        margin:10px 0px;
        padding:10px 0px 0px;
        box-sizing:border-box;
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
    }

    .logo_block {
        margin-top: 40px;
        /*padding-top: 0px;*/
    }

    p.logo_text {
        background:transparent;
        margin-top: 30px;
        margin-bottom: 0px;
        padding-bottom: 0px;
    }

    img.logo_image {
        min-width: 240px;
        max-width: 250px;
        width:50%;         
        margin:0px auto;
        display:block;
        height:auto;
    }

    .logo_button {
        text-align: center;
        margin-bottom: 0px;
        bottom: 0px;
        padding-bottom: 0px;
    }

}



/* SHRUNK FONT SIZES AND VERTICAL SPACING FOR THE LARGER SCREEN SIZES BELOW */

@media (min-width: 768px) {



    .logo_element {
        width:100%;
        display:table;
        margin:10px 0px;
        padding:10px;
        box-sizing:border-box;
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
    }

    article.logo_block {
        margin-top: 80px;
        /*padding-top: 40px;*/
    }

    p.logo_text {
        display:table-cell;
        height:100%;
        vertical-align:middle;
        background:transparent;
        padding-left: 30px;
        min-width: 240px;        
    }

    img.logo_image {
        display:table-cell;
        min-width: 200px;
        max-width: 210px;
        width:100%;
        height:auto;
    }

    .logo_button {
        text-align: center;
        margin-bottom: 20px;
    }




	.jcf-checkbox {
		height: 16px;
		width: 16px;
	}

	.jcf-radio {
		width: 20px;
		height: 20px;
	}

	.jcf-radio span {
		width: 6px;
		height: 6px;
		top: 7px;
		left: 7px;
	}


	/* abo - hide any elements that should appear at the mobile sizes only */
	.mobile_only {
	    display: none !important;;
	    visibility: hidden !important;
	    height: 0 !important;
	    width: 0 !important;
	    margin: 0 !important;
	    padding: 0 !important;
    }


    /* abo - turn on the nav menu underline for the larger media sizes */
    .menu_underline {
        border-bottom: 2px double #8eb4b5 !important;
    }



    /* abo - decreased vertical padding before the footer */
	#wrapper.generic #footer .container {
		background: url(../images/bg-pattern4.png) repeat-x 0 100%;
		padding: 135px 120px 135px;
	}

	#wrapper.generic #footer:after {
		height: 62px;
	}

	.container {
		padding: 20px;
	}

	#header .container {		
		/* abo - keeping header size consistent across devices */
		padding: 21px 40px 15px;
		border: none;
	}

    /* abo - modified size and placement of logo */
	#header .logo {
		margin: 44px 10px 0 0;
		width: 180px;
	}

	#header .search-box {
		top: -100%;
		bottom: auto;
		visibility: visible;
	}

	/* abo - repositioned search to compensate for shorter nav area */
	#header .search-box .container {
		padding-top: 28px;
	}

	#header .search-box form {
		border: none;
		padding: 0 57px 0 0;
		margin: 0 25px 0 0;
		position: relative;
	}

	#header .search-box .s-logo {
		display: inline-block;
	}

	#header .search-box button[type="submit"] {
		position: static;
		float: right;
	}

	#header .search-box .input-holder {
		overflow: hidden;
	}

	#header .search-box .form-control {
		font-family: "CooperHewitt", sans-serif;
		font-weight: 200;
		border-radius: 50px;
		font-size: 25px;
		line-height: 28px;
		border: 1px solid #d4d3d5;
		padding: 6px 17px;
	}

	#header .search-box .form-control::-webkit-input-placeholder {
		color: #2a222e;
		opacity: .5;
	}

	#header .search-box .form-control::-moz-placeholder {
		color: #2a222e;
		opacity: .5;
	}

	#header .search-box .form-control:-moz-placeholder {
		color: #2a222e;
		opacity: .5;
	}

	#header .search-box .form-control:-ms-input-placeholder {
		color: #2a222e;
		opacity: .5;
	}

	#header .search-box .form-control.placeholder {
		color: #2a222e;
		opacity: .5;
	}

	#header .search-box .form-control:focus {
		border: 1px solid #d4d3d5;
		box-shadow: 0 2px 4px rgba(0, 51, 70, .1);
	}

	#header .search-box .close {
		top: 23px;
	}

	.nav-area {
		float: right;
		width: 72%;
		text-align: right;
	}

	.topnav {
        /* abo - slightly larger font for menu1 */
        font-size: 9px;
        line-height: 16px;
		position: static;
		padding: 6px 0 3px;
	}

	.topnav .search {
		font-size: 9px;
		line-height: 18px;
		margin: 0 3px 0 0;
		color: #78737a;
	}

	.topnav ul {
		display: inline-block;
		float: right;
	}

	.nav-opener {
		display: none;
	}

    /* abo - over-riding nav font sizes at smaller media levels */
	#nav {
		font-size: 14px;
		line-height: 26px;
		letter-spacing: 0.9px;

		/* abo - font weight heavier */
		font-weight: 300;

		background: none;
		position: static;
		overflow: visible;
		text-align: right;
		opacity: 1;
		visibility: visible;
	}

	#nav ul {
		border: none;
		padding: 0;
		margin: 0;
		height: auto;
		overflow: visible;
	}

	#nav ul li {
		border-bottom: 1px solid transparent;
	}

	#nav ul li {
		display: inline-block;
		vertical-align: top;
		margin: 0 0 9px 12px;
	}

	#nav ul li.hover,
	#nav ul li.active {
		border-bottom: 1px solid #c2c0c3;
	}

	#nav ul li.hover a,
	#nav ul li.active a {
		border-bottom: 1px solid #2a222e;
	}

	#nav ul li.hover .drop {
		position: absolute;
	}

	#nav ul a {
		padding: 0;
		display: inline-block;
		border-bottom: 1px solid transparent;
		border-top: 0;
	}

	#nav ul a:after {
		display: none;
	}

	#nav .drop {
		position: absolute;
		right: -22px;
		width: 220px;
	}

	#nav .drop ul {
		padding: 20px;
	}

	.visible-xs {
		display: none !important;
	}

	/* abo - shrunk this to get rid of extra vertical padding below nav bar */
	#main {
		padding: 115px 0 0;
	}

    /* abo - reduced vertical size of padding that holds pattern */
	.visual {
		padding: 0 0 40px;
	}

    /* abo - reduced vertical size of pattern */
	.visual:after {
		height: 40px;
		background-size: auto;
	}

	.visual .image {
		min-width: 1430px;
	}

	.visual .image img {
		min-width: 1430px;
	}

    /* abo - reduced vertical size of space for pattern */
	.visual .holder {
		bottom: 40px;
	}

	.visual .head {
		font-size: 20px;
		line-height: 26px;
		padding: 0 0 0 4px;
	}

    /* abo - decreased the font size slightly for this range */
	.visual h1 {
		font-size: 26px;
		line-height: 36px;
	}

	.visual .caption {
		width: 50%;
		text-align: right;
	}

	.visual .caption h1 {
		font-size: 40px;
		line-height: 50px;
		margin: 0 0 10px;
	}

	.visual .caption .text {
		margin: 0 0 20px;
		font-size: 20px;
		line-height: 25px;
	}

	.visual .caption-holder {
		font-size: 17px;
		line-height: 30px;
		max-width: 620px;
		padding: 20px 40px 40px;
	}

	h2 {
		font-size: 15px;
		line-height: 18px;
		margin: 0 0 22px;
	}

	h3 {
		font-size: 30px;
		line-height: 35px;
		margin: 0 0 44px;
	}

	/* abo - main body text/post font size */
	/* reduced font by 1 px, set font weight 300 */
	.posts {
		font-size: 18px;
		line-height: 36px;
		font-weight: 300;		
	}

    /* abo - reduced the top padding and bottom padding */
	.posts .container {
		padding-top: 22px;
		padding-bottom: 0px;
	}

    /* abo - decrease the amount of vertical space AFTER the posts container */ 
	.posts .container .post:first-child {
		padding: 24px 0 32px;
	}


	/* abo - added this style to reduce the vertical spacing before the post-info element
	         if it is the first element under the post */
	.posts .container .post .post-info:first-child {
	    margin-top: -30px;
    }

    /* abo - decreased vertical space AFTER post to 10 */
	.posts .post {
		padding: 0 0 10px;
	}

     /* abo - reduced font size 20% per justin */
	.posts h2 {
	    font-size: 16px;
		line-height: 24px;
		margin: 0 0 35px;
		letter-spacing: 2px;
	}

	/* abo - section heading font size */
	/* abo - reduced font size 20% per justin */
	.posts h3 {
		font-size: 30px;
		line-height: 36px;
		letter-spacing: 1.2px;
		margin: 0 0 75px;
	}

    /* abo - slightly increased vertical spacing after the post */
    /* abo - set negative top margin to decrease vertical spacing before post */
	.posts p {
		margin: -10px 0 45px;
	}

	.posts .list li {
		padding: 0 0 1px 33px;
	}

	.posts .list li span {
		top: 4px;
	}

	.posts .image {
		float: right;
		max-width: 300px;
		margin: -185px 4px 30px 26px;
	}

    /* abo - zeroed out the bottom margin */
	.posts .post-info h3 {
		padding: 0 10px 0px;
	}

	.posts .post-info h3:before {
		top: 15px;
		bottom: 5px;
	}

	.posts .contact-form {
		width: 448px;
	}

	/* abo - form control font size **/
	.posts .contact-form .form-control {
		font-size: 18px;
		line-height: 24px;
		padding: 5px 20px;
		height: 40px;
	}




   /* abo - shrink the size of the dots within the password field **/
   .posts .contact-form input[type="password"].form-control  {
     font-size: 14px;
     line-height: 24px;
     padding: 5px 20px;
     height: 40px;
   }


   /* abo - make sure that the placeholder text for the input field
            matches the standard input field text size */
   .posts .contact-form input[type="password"].form-control::-webkit-input-placeholder {
 	  font-size: 18px;
   }

   .posts .contact-form input[type="password"].form-control::-moz-placeholder {
      font-size: 18px;
   }

   .posts .contact-form input[type="password"].form-control:-moz-placeholder {
  	  font-size: 18px;
   }

   .posts .contact-form input[type="password"].form-control:-ms-input-placeholder {
	  font-size: 18px;
   }

   .posts .contact-form input[type="password"].form-control.placeholder {
      font-size: 18px;
   }



	.jcf-select {

        margin: 0 0 0px;
        min-width: 150px;

        /* abo - increase the height of the select, add internal spacing so matches input fields,
           and make sure that it is using 100% of space allowed so it matches input field width */
        height: 40px;
        padding: 10px 0 0 12px;
        width: 100%;

    }

	.jcf-select .jcf-select-text {

	    /* abo - increase font size for select text */
	    font-size: 18px;
	    line-height: 22px;

    }

    .jcf-list {

        /* abo - increase size of font within select list
           so it matches rest of input fields */
	    font-size: 18px;
	    line-height: 20px;

        /* abo - match the padding of the list to the
           padding of the select field */
	    padding: 2px 0 0 12px;
    }

	.posts .contact-form .btn-primary,
	.posts .contact-form .btn-default {
		min-width: 180px;
		padding: 12px 25px;
	}

    /* abo - reduced the amount of vertical space before and after the button area */
	.post-info .btn-area {
		padding: 0px 2px 0px;
	}

	/* abo - post info text size */
	.post-info .text {
		font-size: 14px;
		line-height: 20px;
	}

	.post-info .form ul {
		font-size: 22px;
		line-height: 25px;
		display: inline-block;
		border: solid #fff;
		border-width: 2px 0;
	}

	.post-info .form ul li {
		border: none;
		margin: 0;
		display: inline-block;
		padding: 21px 40px 20px;
		border-left: 3px solid #fff;
	}

	.post-info .form ul li:first-child {
		margin: 0;
		text-align: center;
		padding: 12px 60px 16px 44px;
	}

	.post-info .form ul li:first-child .label {
		text-align: center;
	}

	.post-info .form ul li .label {
		padding: 0;
	}

	/* abo - post info small label size */
	.post-info .form .label {
		font-size: 11px;
		line-height: 15px;
		margin: 0 0 15px;
	}

	.post-info .jcf-radio {
		margin: 5px 12px 0 0;
	}

	.post-info .radio-holder {
		display: inline;
		padding: 0;
		margin: 0;
		border: none;
	}

	.post-info .radio {
		width: 142px;
		margin: 0 14px 0 0;
	}

	/* abo - post info radio label size */
	.post-info .radio .label {
		font-size: 20px;
		line-height: 26px;
	}

	.btn-default,
	.btn-primary {
		font-size: 15px;
		line-height: 18px;
		letter-spacing: .5px;
		min-width: 120px;
		padding: 15px 20px;
		margin: 0 34px 0 0;
	}

	.btn-default span,
	.btn-primary span {
		padding: 0 0 5px;
	}

	.btn-default.add,
	.btn-primary.add {
		padding: 22px 15px;
	}

	.tooltip {
		font-size: 15px;
		line-height: 18px;
	}



	.intro-area .caption {
		font-size: 28px;
		line-height: 40px;
	}



	.intro-area .caption.add h1 {
		font-size: 50px;
		line-height: 55px;
	}

	.intro-area .carousel.add .caption {
		font-size: 17px;
		line-height: 30px;
	}

	.intro-area .carousel.add .textblock {
		padding: 40px 40px 90px;
	}

	.intro-area .carousel.add p {
		display: block;
	}

	.intro-area .carousel.add h1 {
		font-size: 30px;
		line-height: 46px;
		margin: 0 0 10px;
	}

	.intro-area .carousel.add .name {
		border-bottom: 1px solid #e0e9ea;
		margin: 0 -41px 15px 0;
		/* padding: 0 0 20px; */
		padding: 0 0 25px;
	}

	.intro-area .carousel.right h1 {
		font-size: 30px;
		line-height: 46px;
		margin: 0 0 10px;
	}

	.intro-area .carousel.right .image {
		min-width: 1700px;
	}

	.intro-area .carousel.right .image img {
		float: left;
		min-width: 1700px;
	}

	.intro-area .textblock {
		padding: 40px 40px 130px;
	}

	.intro-area .content {
	    /* padding: 0; */
		padding: 16px 0 0;
	}

    /* abo - modified intro text for this device range */
	.intro-area h1 {
		font-size: 30px;
		line-height: 46px;
		margin: 0 0 15px;
	}

	.intro-area h1.large {
		margin: 0 0 25px;
		font-size: 60px;
		line-height: 76px;
	}



    /* abo - settings for couple's name within the intro area */
	.intro-area .name {
		font-size: 24px;
		line-height: 32px;
		margin: 0 0 15px;
	}

    /* abo - settings for "Meet" in intro area */
	.intro-area .name em {
		font-size: 15px;
		line-height: 18px;
	}

	.intro-area .btn-default span,
	.intro-area .btn-primary span {
		font-size: 15px;
		line-height: 18px;
	}

	.intro-area .btn-default.add,
	.intro-area .btn-primary.add {
		padding: 15px;
	}

	.intro-area .btn-default,
	.intro-area .btn-primary {
		margin: 0 10px 0 0;
		/* padding: 26px 20px; */
		/* abo - reduced button size to fit responsive size better */
		padding: 16px 16px;
		min-width: 170px;
	}

	.intro-area p {
		margin: 0 0 40px;
	}

	.intro-area .image {
		min-width: 1700px;
	}

	.intro-area .image img {
		margin: 0 -200px 0 0;
		float: right;
		min-width: 1700px;
	}

	.intro-area .pagination ul {
		padding: 40px;
	}

	.pagination ul li {
		margin: 0 5px;
	}

	.pagination ul a {
		width: 20px;
		height: 4px;
	}

    /* abo - reduced the bottom margin after the H2 heading */
	.statements.inner h2 {
		margin: 0 0 50px;
	}

    /* abo - reduced the top padding for the inner container */
	.statements.inner .container {
		padding-top: 50px;
	}

	.statements.inner .video-area .container {
		padding: 20px;
		border: solid #c6d9da;
		border-width: 0 1px;
	}

	.statements.boxes .container {
		padding-bottom: 40px;
		padding-top: 86px;
	}

	.statements.boxes .box {
		display: inline-block;
		vertical-align: top;
		width: 47%;
		margin: 0 1.2% 30px;
	}

	.statements.boxes .box.mobile {
		display: inline-block;
	}

	.statements.boxes .btn-play {
		font-size: 70px;
		line-height: 70px;
		margin: -35px 0 0 -35px;
	}

	.statements.boxes .caption {
		bottom: 7px;
	}

    /* abo - reduced the bottom margin for this media size */
	.statements .video-holder {
		margin: 0 0 50px;
	}

	.statements .container {
		padding-top: 110px;
	}

	.statements .container:after {
		position: absolute;
		top: 171px;
		right: 198px;
		bottom: 0;
		left: 198px;
		width: auto;
		margin: 0;
		background-size: auto;
	}

	.statements .text {
		padding: 0 0 20px;
	}

	.statements .text.second {
		padding: 0 0 20px 20px;
	}

	.statements .text.third {
		padding: 0 0 20px 30px;
	}

	.statements .text-holder {
		font-size: 30px;
		line-height: 34px;
	}

	.statements .text-holder em {
		display: inline-block;
		vertical-align: middle;
		font-size: 60px;
		line-height: 60px;
		font-weight: 300;
		padding: 5px 15px;
		background: #fff;
		margin: 0 10px;
		font-family: "CooperHewitt", sans-serif;
	}

	.statements .text-holder em.num {
		padding: 3px 15px 9px 42px;
	}

	.statements .text-holder em sup {
		font-size: 30px;
		line-height: 30px;
		top: 10px;
		left: 10px;
	}

	.statements .text-holder strong {
		font-size: 70px;
		line-height: 70px;
		border-bottom: 4px solid #2a222e;
		letter-spacing: 7px;
		padding: 0 5px 8px;
		margin: 0 11px;
	}

	.statements .cols {
		font-size: 20px;
		line-height: 25px;
	}

	.statements .cols .col {
		margin: 0 2% 35px;
		width: 40%;
	}

	.statements .head {
		white-space: nowrap;
		text-align: center;
		width: 90px;
		height: 90px;
		margin: 0 auto 35px;
	}

	.statements .head:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 90px;
	}

	.statements .head > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.statements .head:after {
		width: 90px;
		height: 90px;
	}

	.statements .head span {
		font-size: 12px;
		line-height: 16px;
		padding: 0 0 15px;
	}

	.statements .head strong {
		font-size: 30px;
		line-height: 30px;
		padding: 14px 3px 12px;
	}

	.visual-section {
		padding: 0 0 60px;
	}


	.visual-section:after {
		display: block;
		height: 60px;
		background-size: auto;
	}

	.visual-section {
		font-size: 17px;
		line-height: 30px;
	}


/*
	.visual-section .caption {
		background: none;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
*/

	.visual-section .container {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.video-area {
		margin: 0;
	}

	.video-area .btn-play {
		font-size: 70px;
		line-height: 70px;
		margin: -35px 0 0 -35px;
	}

	.video-area .caption {
		font-size: 28px;
		line-height: 32px;
		bottom: 20px;
		left: 28px;
	}

	.video-area .caption span {
		padding: 3px 10px 4px;
		margin: 0 0 5px;
	}

	.about-holder {
		margin: -402px 0 0;
		padding: 402px 0 0;
	}

	.about {
		font-size: 17px;
		line-height: 30px;
	}

	.about .image-area {
		padding: 108px 0 30px;
	}

	.about .image-area:after {
		display: block;
	}

	.about .image {
		max-width: 400px;
		width: 75%;
		float: right;
	}

	.about .textarea {
		margin: -50px 0 0;
	}

	.about .textarea:after {
		display: block;
	}

	.about h3 span {
		display: inline-block;
		padding: 0 4px;
	}

	.about h3 span:before {
		top: 15px;
		bottom: 5px;
		display: block;
	}

	.about p {
		margin: 0 0 30px;
	}

	.about .holder {
		padding: 0 0 31px;
	}

	.about .holder:after {
		display: block;
	}

	.about .holder .btn-default {
		min-width: 210px;
		padding: 22px 30px;
	}

	.about .text {
		float: left;
		padding: 0 0 310px;
		width: 53%;
		margin: 0 8% 0 0;
	}

	.about .text:after {
		display: block;
		height: 279px;
	}

	.about .download-area {
		margin: 0 0 0 50px;
	}

	.about .img-holder {
		padding: 28px 30px;
		max-width: inherit;
		margin: 0 0 30px;
		float: none;
	}

	.about .img-holder .img {
		margin: 0 auto 15px;
		width: 220px;
	}

	.articles {
		background: none;
	}

	.articles .container {
		padding: 150px 40px 0;
	}

	.articles .container:after {
		display: block;
	}

	.articles.add {
		background: #f5f5f5;
	}

	.articles.add .article {
		width: 46%;
		margin: 0 .5% 70px;
	}

	.articles.partner {
		background: #f5f5f5;
	}

	.articles.partner .container {
		padding: 276px 40px 0;
	}

	.articles.partner .article {
		margin: 0 1.5% 170px;
	}

	.articles.partner:after {
		background: url(../images/bg-dots.png) repeat-y;
		position: absolute;
		width: 84px;
		height: 150px;
		content: "";
		top: 6px;
		left: 50%;
		margin: 0 0 0 -42px;
	}

	.articles.partner .holder {
		padding: 60px 0 130px;
		margin: 0 -50px;
	}

	.articles.partner .holder:after {
		display: none;
	}

	.articles.partner h2 {
		padding-top: 50px;
	}

	.articles .holder {
		overflow: hidden;
		margin: 0 -50px;
		padding: 70px 0 70px;
	}

	.articles .holder:after {
		display: block;
	}

	.articles .article {
		background: none;
		display: inline-block;
		vertical-align: top;
		font-size: 17px;
		line-height: 30px;
		width: 28%;
		margin: 0 2% 70px;
		padding: 0;
	}

	.articles .image {
		float: none;
		width: 140px;
		height: 140px;
		white-space: nowrap;
		text-align: center;
		margin: 0 auto 80px;
	}

	.articles .image:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 140px;
	}

	.articles .image > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.articles .image.heart img {
		width: auto;
		max-width: 72%;
		margin: 41px 3px 0 0;
	}

	.articles .image.home img {
		width: auto;
		max-width: 76%;
		margin: 15px 3px 0 2px;
	}

    .articles .image.peckhome img {
        width: auto;
        max-width: 76%;
        margin: 15px 3px 0 2px;
    }

    .articles .image.pehome img {
        width: auto;
        max-width: 76%;
        margin: 15px 3px 0 2px;
    }

	.articles .image.user img {
		width: auto;
		max-width: 99%;
		margin: 18px 0 0;
	}

    .articles .image.parad img {
        width: auto;
        max-width: 99%;
        margin: 18px 0 0;
    }

	.articles .image.church img {
		max-width: 71%;
		width: auto;
		margin: 4px 6px 5px 0;
	}

    .articles .image.bubbles img {
        max-width: 65%;
        width: auto;
        margin: 17px 6px 5px -2px;
    }


	.articles .image:after {
		width: 140px;
		height: 140px;
	}

	.articles .image img {
		width: auto;
		max-width: 60%;
		margin: 10px 0 0;
	}

	.articles .textarea {
		text-align: center;
	}

    .articles .textarea p {
        text-align: left;
    }


	.articles h2 {
		margin: 0 0 20px;
	}

	.articles h3 {
		margin: 0 0 26px;
	}


/*
    abo - remove this style so that the H3 highlighting is still active, even at the larger sizes
	.articles h3 span:before {
		top: 15px;
		bottom: 5px;
		display: none;
	}
*/


	.company-bio {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-align: end;
		-webkit-align-items: flex-end;
		-ms-flex-align: end;
		align-items: flex-end;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
	}

	.company-bio .block-holder {
		width: 50%;
		float: right;
	}

	.company-bio .block-holder:first-child {
		z-index: 9;
		float: left;
	}

	.company-bio .textblock {
		font-size: 17px;
		line-height: 30px;
		float: right;
		padding: 0 40px 71px;
		max-width: 620px;
	}

	.company-bio h3 span {
		padding: 0 4px;
		margin: 0 0 10px;
		position: relative;
		display: inline-block;
	}

	.company-bio h3 span:before {
		top: 15px;
		bottom: 5px;
		display: block;
	}

	.company-bio h3 br {
		display: block;
	}

	.company-bio p {
		margin: 0 0 30px;
	}

	.company-bio .image {
		display: block;
		margin: 0 0 0 -100px;
	}

	.company-bio .head {
		float: right;
		width: 66%;
		margin: 0 -120px 0 6%;
		text-align: left;
	}

	.partners .container {
		padding-top: 26px;
	}

	.partners .slider {
		padding: 0;
		margin: 0 0 130px;
		/* border: solid #bacfd2; */
		border: solid #d7e2e3;
		border-width: 1px 0;
	}

	.partners .mask:after {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		content: "";
		/* border: solid #bacfd2; */
		border: solid #d7e2e3;
		border-width: 0 1px;
		z-index: -1;
	}

	.partners .slide:first-child {
		border: none;
	}

	.partners .slide {
		padding: 0;
		width: 50% !important;
		/* border: solid #bacfd2; */
		border: solid #d7e2e3;
		border-width: 0 0 0 1px;
	}

	.partners .image {
		white-space: nowrap;
		text-align: center;
		padding: 0 50px;
		border: none;
		padding: 0;
		display: inline-block;
	}

	.partners .image:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 352px;
	}

	.partners .image > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.partners .pagination {
		display: block;
	}

	.partners .textblock {
		font-size: 17px;
		line-height: 30px;
		padding: 0 100px 100px;
	}

	.blog-posts.add {
		background: #f5f5f5;
	}

	.blog-posts.inner {
		padding: 0 0 118px;
	}

	.blog-posts.inner .heading {
		padding-top: 123px;
	}

	.blog-posts.inner .heading:before {
		display: block;
	}

	.blog-posts.home .post {
		margin: 0 0 85px;
	}

	.blog-posts .container {
		padding-top: 26px;
	}

	.blog-posts .heading {
		padding-top: 20px;
		padding-bottom: 10px;
	}

	.blog-posts .link {
		font-size: 15px;
		line-height: 18px;
		margin: 3px 0 20px;
	}

	.blog-posts .post-holder {
		letter-spacing: -7px;
		/* border: solid #bacfd2; */
		border: solid #d7e2e3;
		border-width: 1px 0 0;
	}

	.blog-posts .post {
		display: inline-block;
		vertical-align: top;
		letter-spacing: 0;
		width: 32.5%;
		overflow: visible;
		margin: 0;
	}

	.blog-posts .post:first-child .image:after {
		display: block;
	}

	.blog-posts .post:last-child .image {
	    /* border-right: 1px solid #bacfd2; */
		border-right: 1px solid #d7e2e3;
	}

	.blog-posts p {
		margin: 0 0 16px;
	}

	.blog-posts .image {
		width: auto;
		height: auto;
		/* border: solid #bacfd2; */
		border: solid #d7e2e3;
		border-width: 0 0 0 1px;
		padding: 20px 17px 0;
		display: block;
		float: none;
		margin: 0;
	}

	.blog-posts .image img {
		margin: 0 0 -28px;
	}

	.blog-posts .textblock {
		font-size: 17px;
		line-height: 30px;
		padding: 60px 20px;
	}

	.blog-posts .title {
		margin: 0 0 27px;
	}

	.blog-posts .more {
		font-size: 12px;
		line-height: 15px;
	}

	.blog-posts .btn-area {
		padding: 0 0 66px;
	}

	.blog-posts .btn-area:after {
		left: 100px;
		display: block;
	}

	.blog-posts .btn-area .btn-default {
		min-width: 284px;
		margin: 0 0 65px;
	}

	.blog-posts .btn-area .btn-default:after {
		display: block;
	}

	.breadcrumbs {
		padding: 24px 20px 20px;
		font-size: 20px;
		line-height: 24px;
	}

	.breadcrumbs li {
		padding: 0 8px 0 25px;
	}

	.breadcrumbs li:after {
		top: 2px;
	}

	.help-block {
		font-size: 17px;
		line-height: 30px;
		text-align: left;
	}

	.help-block.add {
		background: #fff;
	}

	.help-block .container {
		padding-top: 60px;
		padding-bottom: 70px;
	}

	.help-block .frame {
		background: url(../images/img-frame.png) no-repeat;
		background-size: cover;
		width: 320px;
		height: 260px;
		float: left;
		margin: 0 20px 0 0;
	}

	.help-block .frame .image {
		width: 210px;
		margin: 34px 73px;
	}

	.help-block .frame .comment {
		white-space: nowrap;
		text-align: center;
		width: 70px;
		height: 70px;
		font-size: 20px;
		line-height: 20px;
		top: 107px;
		left: 37px;
	}

	.help-block .frame .comment:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 70px;
	}

	.help-block .frame .comment > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.help-block .frame .setting {
		width: 50px;
		height: 50px;
		font-size: 15px;
		line-height: 15px;
		white-space: nowrap;
		text-align: center;
		bottom: 17px;
		right: 47px;
	}

	.help-block .frame .setting:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 50px;
	}

	.help-block .frame .setting > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.help-block h3 {
		margin: 0 0 30px;
	}

	.help-block h3 span:before {
		top: 15px;
		bottom: 5px;
		display: block;
	}

	.help-block .btn-default,
	.help-block .btn-primary {
		margin: 0 10px 0 0;
		min-width: 180px;
	}

	.help-block p {
		margin: 0 0 46px;
	}


	.facilitator {
		font-size: 17px;
		line-height: 30px;
		background: #fff;
	}

	.facilitator.add .cols {
		margin: 0 -30px;
		padding: 0 0 100px;
	}

    /*
	.facilitator.inner {
		background: #f5f5f5;
	}
	*/

	.facilitator.inner .heading {
		padding-bottom: 30px;
		padding-top: 97px;
	}

	.facilitator.inner .cols {
		margin: 0 -20px;
		text-align: center;
	}

	.facilitator.inner .cols .col {
		padding: 0 40px;
		margin: 0 0 20px;
	}



    .facilitator.add .cols_indented {
        margin: 0 -30px;
        padding: 0 0 100px;
    }

    .facilitator.inner .cols_indented {
        margin: 0 -20px;
        text-align: center;
    }

    .facilitator.inner .cols_indented .col {
        padding: 0 40px;
        margin: 0 0 20px;
    }



     /* abo - reduce the padding for the heading */
	.facilitator .heading {
		padding: 50px 50px 50px 50px;
		text-align: center;
	}

	.facilitator .heading:after {
		display: block;
	}

	.facilitator h2 {
		margin: 0 0 30px;
	}

	.facilitator h3 {
		margin: 0 0 20px;
	}

	.facilitator h3 span:before {
		top: 15px;
		bottom: 5px;
	}


	.facilitator .connector {
		display: block;
		max-width: 400px;
	}

    .facilitator .connector2 {
        display: block;
        max-width: 50%;
    }


    /* abo - per justin reduce vertical spacing before and after the column lines by 20% */
	.facilitator .cols {
		padding: 15px 0 15px;
		margin: 0 -50px;
	}

	.facilitator .cols:after {
		display: block;
	}

	.facilitator .cols .col {
		display: inline-block;
		vertical-align: top;
		background: none;
		width: 47%;
		margin: 0 1%;
		padding: 0 50px;
	}

    /* abo - per justin reduce vertical spacing before and after the facilitator cols add section by 20% */
	.facilitator .cols.add {
		padding: 64px 0 38px;
	}




    /* abo - per justin reduce vertical spacing before and after the column lines by 20% */
    .facilitator .cols_indented {

        /*
        padding: 15px 0 15px;
        margin: 0 -50px;
        */

        padding-left: 0px;
        padding-right: 0px;
        margin-left: 0px;
        margin-right: 0px;
        min-width: 90%;
        max-width: 100%;

    }

    .facilitator .cols_indented:after {
        display: block;
    }

    .facilitator .cols_indented .col {
        display: inline-block;
        vertical-align: top;
        background: none;
        /*
        width: 47%;
        margin: 0 1%;
        padding: 0 50px;
        */
        max-width: 38%;
        padding: 30px 30px 0px 30px;
        left-margin: 0px;
        right-margin: 0px;
    }

    /* abo - per justin reduce vertical spacing before and after the facilitator cols add section by 20% */
    .facilitator .cols_indented.add {
        padding: 64px 0 38px;
    }

    .facilitator .cols_indented .col.seperator {
        left-margin: 0px;
        right-margin: 0px;
        padding: 40px;
        max-width: 1%;
    }


    /* abo - some elements should only be visible depending upon the column format */
	.facilitator .for_single_column {
        visibility: hidden;
        display: none;        
    }

    .facilitator .for_multi_column {
        visibility: inherit;
        display: inherit;
    }




	.facilitator .btn-primary {
		min-width: 200px;
		margin: 0;
	}

    .facilitator .btn-default {
        min-width: 200px;
        margin: 0;
    }

	.assessment {
		font-size: 17px;
		line-height: 30px;
		background: none;
		text-align: center;
	}

	.assessment:after,
	.assessment:before {
		display: block;
	}

    /* abo - per justin reduced vertical padding by 20% */
	.assessment .container {
		padding-top: 90px;
		padding-bottom: 48px;
	}

     /* abo - per justin reduced vertical padding after the heading section by 20% */
	.assessment .heading {
		text-align: center;
		margin: 0 auto 56px;
	}

	.assessment .text {
		padding: 0 70px;
	}

    /* abo - per LW and J, reduced size of heading font */
	.assessment h3 {
		margin: 0 0 25px;
		font-size: 22px;
	}

	.assessment ol {
		margin: 0 -30px;
		text-align: center;
	}

	.assessment ol:after {
		height: 62px;
		display: block;
	}

	.assessment ol li {
		font-size: 17px;
		line-height: 30px;
		padding: 150px 0 0;
		width: 27.1%;
		margin: 0 2.5% 20px;
	}

	.assessment ol li:before {
		width: 102px;
		height: 102px;
		font-size: 50px;
		line-height: 50px;
		top: 0;
		left: 50%;
		padding: 22px 5px 0;
		margin: 0 0 0 -51px;
	}

	.assessment .download-holder {
		padding: 5px 0 0;
	}

	.assessment .download-holder:after {
		display: block;
	}

	.assessment .download-holder .container {
		padding-bottom: 110px;
	}

	.assessment .download-holder .container:after,
	.assessment .download-holder .container:before {
		display: block;
	}

	.assessment .title {
		width: 27%;
		display: inline-block;
		margin: 0;
		padding: 42px 0 0;
	}

	.assessment .download {
		display: inline;
		padding: 0;
	}

	.assessment .img-holder {
		position: static;
		width: 250px;
		height: 230px;
		padding: 5px;
		max-width: inherit;
		margin: 0px 20px 20px 0;
		float: none;
		display: inline-block;
		vertical-align: middle;
	}

	.assessment .img-holder .img {
		margin: 10px auto 25px;
		width: 200px;
	}



	.details {
		font-size: 15px;
		line-height: 25px;
	}

	.details .container {
		padding-top: 20px;
		padding-bottom: 30px;
	}

	.details .heading {
		padding: 0 50px 36px;
		text-align: center;
	}

	.details .heading:after {
		display: none;
	}

	.details h2 {
		margin: 0 0 30px;
	}

	.details h3 {
		margin: 0 0 27px;
	}

	.details h3 span:before {
		top: 15px;
		bottom: 5px;
	}

	.details table {
		margin: 0 0 100px;
	}

	.details table th {
		font-size: 15px;
		line-height: 25px;
	}

	.details table th,
	.details table td {
		padding: 17px 10px;
	}

	.details .btn-area li {
		margin: 0 10px 20px;
	}

	.details .btn-area span {
		font-size: 25px;
		line-height: 30px;
	}



    /* grid2c */

    .grid2c {
        font-size: 16px;
		line-height: 24px;
    }
        
    .grid2c .post-info td {
        font-size: 18px;
        line-height: 26px;
     }

    /* abo - decreased top padding to zero and bottom padding to 10 */
    .grid2c .container {
        padding-top: 0px;
        padding-bottom: 40px;
    }

    .grid2c .heading {
        padding: 0 50px 36px;
        text-align: center;
    }

    .grid2c .heading:after {
        display: none;
    }

    .grid2c h2 {
        margin: 0 0 30px;
    }

    .grid2c h3 {
        margin: 0 0 27px;
    }

    .grid2c h3 span:before {
        top: 15px;
        bottom: 5px;
    }

    .grid2c table {
        margin: 0 0 40px;
    }

    .grid2c table th {
        font-size: 16px;
		line-height: 24px;
		letter-spacing: 2px;
    }

    .grid2c table th,
    .grid2c table td {
        padding: 17px 10px;
    }

    .grid2c .btn-area li {
        margin: 0 10px 20px;
    }

    .grid2c .btn-area span {
        font-size: 25px;
        line-height: 30px;
    }




    /* bookstore */

    .bookstore {
        font-size: 17px;
        line-height: 20px;
    }

    .bookstore .container {
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .bookstore .heading {
        padding: 0 25px 36px;
        text-align: center;
    }

    .bookstore .heading:after {
        display: block;
    }

    .bookstore h2 {
        margin: 0 0 30px;
    }

    .bookstore h3 {
        margin: 0 0 27px;
    }

    .bookstore h3 span:before {
        top: 15px;
        bottom: 5px;
    }

    .bookstore table th {
        font-size: 12px;
        line-height: 15px;
    }

    .bookstore table th,
    .bookstore table td {
        padding: 15px 10px;
    }

    .bookstore .btn-area li {
        margin: 0 10px 20px;
    }

    .bookstore .btn-area span {
        font-size: 15px;
        line-height: 20px;
    }

	.author-block {
		background: #e6ebee;
		font-size: 17px;
		line-height: 30px;
	}

    /* abo - the textblock is bottom aligned so in order to move it up we need to increase
             the bottom margin */
	.author-block.add .textblock {
		margin-bottom: 32px;
	}

	.author-block .textblock {
		padding: 30px 0 0px;
	}

	.author-block .textblock.add {
		width: 55%;
		padding: 100px 0 180px;
		margin: 0 10% 0 0;
	}

	.author-block h3 {
		margin: 0 0 30px;
	}

	.author-block .image-area {
		max-width: inherit;
		margin: 20px 0px 20px;
	}

/*
	.author-block .image-area:after,
	.author-block .image-area:before {
		height: 210px;
		top: -5%;
		display: block !important;
	}
	*/

	.author-block .image {
		width: 190px;
		height: 190px;
		white-space: nowrap;
		text-align: center;
		margin: 150px 0 0;
	}

	.author-block .image:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 190px;
	}

	.author-block .image > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.author-block .image:after {
		width: 190px;
		height: 190px;
	}

	.author-block .btn-default,
	.author-block .btn-primary {
		display: inline-block;
		min-width: 101px;
		margin: 0 15px 10px 0;
	}

	.testimonials {
		font-size: 17px;
		line-height: 30px;
	}

	.testimonials .caption {
		font-size: 17px;
		line-height: 30px;
		left: 20px;
	}

	.testimonials .head {
		padding: 28px 0 25px;
		margin: 0 0 35px;
	}

	.testimonials h3 {
		margin: 0 0 25px;
	}

	.authors {
		font-size: 17px;
		line-height: 30px;
		background: #f5f5f5;
	}

	.authors .cols {
		border: solid #c1d4d5;
		border-width: 0 1px;
		margin: 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-align: stretch;
		-webkit-align-items: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}

	.authors .cols:after {
		height: 130px;
		display: block;
	}

	.authors .col {
		border-bottom: 0;
		float: left;
		width: 50%;
		padding: 70px 0 30px;
		border-left: 1px solid #c1d4d5;

		/* abo - get rid of the margin at the bottom of the column */
		margin-bottom: 0px;
	}

	.authors .col:first-child {
		border: none;
	}

	.authors .image {
		padding: 0 20px;
		float: none;
		width: auto;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-align: end;
		-webkit-align-items: flex-end;
		-ms-flex-align: end;
		align-items: flex-end;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
	}

	.authors .image picture {
		margin: -50px auto 0;
		display: inline-block;
		vertical-align: bottom;
	}

	.authors .textblock {
		padding: 30px 25px;
		border: none;
	}

    /* abo - modified h1 size to match other heading sizes */
	.authors h1 {
		font-size: 30px;
		line-height: 35px;
		margin: 0 0 28px;
	}

	.authors .btn-primary {
		font-size: 20px;
		line-height: 25px;
		padding: 10px 15px;
		min-width: 180px;
	}

	.authors .btn-primary span {
		font-size: 12px;
		line-height: 15px;
	}

	.authors .article {
		padding: 0 20px;
		text-align: left;
		border: solid #c1d4d5;
		border-width: 1px 1px 0;
	}

    /* abo - center the overall text block contents */
    .authors .textblock {
        text-align: center;
    }

     /* abo - reduce the amount of padding on top of the article */
	.authors .article {
		padding: 50px 0;
		text-align: left;
	}

	.authors .article .text {
		float: left;
		width: 61%;
		margin: 0 14px 0 0;
	}

	.authors .article .btn-primary {
		padding: 29px 15px 0px;
	}

    /* abo - size the textblock content in proportion to the device size */
    .authors .article .textblock {
        max-width: 90%;
        padding: 0px 0 0px;
    }


	#footer {
		padding: 0 0 280px;
	}

	#footer:after {
		height: 60px;
		background-size: auto;
	}

	#footer .container {
		background: url(../images/bg-pattern4.png) repeat-x 0 100%;
		padding: 148px 120px 150px;
	}

	#footer .container:before,
	#footer .container:after {
		display: block;
	}

	#footer .logo {
		width: 284px;
		margin: 0 auto 41px;
	}

	#footer .links {
		font-size: 18px;
		line-height: 22px;
		margin: 0 0 49px;
	}

	#footer .cols {
		padding: 0 0 90px;
	}

	#footer form {
		padding: 46px 20px 52px 20px;
		margin: 0 84px 0 0;
	}

	#footer form .title {
		font-size: 25px;
		line-height: 30px;
		margin: 0 0 20px;
	}

	/* abo - modified */
	#footer form .form-control {
		font-size: 22px;
		font-weight: 200;
		line-height: 28px;
		padding: 5px 20px;
		height: 60px;
	}

	#footer form .btn-default {
		min-width: 160px;
		padding: 19px 35px;
		/* abo - change the button margins so that it will center */
		margin: 4px 40px 0 45px;
		/* margin: 4px -104px 0 0; */
	}

	/* abo - footer nav font size */
	#footer .f-nav {
		font-size: 20px;
		font-weight: 200;
		line-height: 28px;
	}

	#footer .f-nav li {
		padding: 0 0 12px;
	}

	#footer .social-networks {
		padding: 0 0 16px;
		font-size: 16px;
		line-height: 16px;
	}

	#footer .social-networks li {
		margin: 0 5px 10px;
	}

	#footer .social-networks a {
		width: 36px;
		height: 36px;
		white-space: nowrap;
		text-align: center;
	}

	#footer .social-networks a:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 36px;
	}

	#footer .social-networks a > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	#footer .social-networks .icon-social-facebook {
		font-size: 20px;
		line-height: 20px;
		margin: -2px 0 0;
	}

   /* abo - footer copyright */
	#footer .copyright {
		font-size: 14px;
		font-weight: 200;
		line-height: 22px;
		letter-spacing: 1.4px;
	}

	#footer .copyright span {
		display: inline;
	}


    .twoclm .cols {
        padding: 0 0 40px;
    }


    .twoclm_flip .cols {
        padding: 0 0 40px;
    }



    .twoclm_flip .leftclm {
        float: left;
        margin: 0 12px 0 0;
        padding: 100px 0px 0px 16px;
    }

    .twoclm_flip .rightclm {
        float: left; 
        text-align: left;
        margin: 0 12px 0 0;
        padding: 50px 0px 0px 16px;
    }


}



@media (min-width: 768px) and (min-width: 768px) {
	.post-info .form ul {
		border-width: 3px 0;
	}
}



@media (min-width: 830px) {

    .topnav {
        /* abo - slightly larger font for menu1 */
        font-size: 10px;
        line-height: 16px;
        position: static;
        padding: 6px 0 3px;
    }
	
	/* abo - over-riding nav font sizes at smaller media levels */
    #nav {
        font-size: 16px;
        line-height: 26px;
    }

}



@media (min-width: 1024px) {
    /* abo - decreased vertical padding before the footer */
	#wrapper.generic #footer .container {
		padding: 150px 150px 135px;
	}

	.container {
		padding: 20px 40px;
	}

	/* abo - padding for the header */
	#header .container {
		padding: 25px 40px 15px;
	}

    /* abo - logo position */
	#header .logo {
		position: static;
		margin: 40px 20px 0 0;
		width: 200px;
	}

	.nav-area {
		width: 75%;
	}

	.topnav {
	    /* abo - slightly larger font for menu1 */
	    font-size: 12px;
	    line-height: 16px;
		padding: 0 0 3px;
	}


	.topnav .search {
	    /* abo - slightly larger font for search */
	    font-size: 12px;
	    line-height: 18px;
    }

	.topnav ul li {
		margin: 0 0 13px 15px;
	}

	.topnav ul li.language {
		padding: 0 0 0 20px;
	}

	/* abo - font size of nav menu items */
	#nav {
		font-size: 20px;
		line-height: 28px;
		letter-spacing: 0.9px;
		
		/* abo - font weight heavier */
		font-weight: 300;
	}

	#nav ul li {
		margin: 0 0 9px 21px;
	}


    /* abo - make the header nav drop down wider at the larger device sizes */
    #nav .drop {
        position: absolute;
        right: -22px;
        width: 250px;
    }


	.visual .image {
		min-width: 1920px;
	}

	.visual .image img {
		min-width: 1920px;
	}

	.visual .container {
		padding: 20px 40px;
	}

	.visual .head {
		margin: 6px 0 20px;
		font-size: 25px;
		line-height: 28px;
	}

	/* abo - page headline font size, reduced size to match other heading areas */
	.visual h1 {
        font-size: 30px;
        line-height: 50px;
	}

	.visual .caption h1 {
		font-size: 50px;
		line-height: 55px;
		margin: 0 0 30px;
	}

	.visual .caption .text {
		margin: 0 0 50px;
		font-size: 25px;
		line-height: 30px;
	}

	.visual .caption-holder {
		font-size: 28px;
		line-height: 40px;
	}

    /* abo - reduced font size 20% per justin */
	h2 {
		font-size: 16px;
		line-height: 24px;
		margin: 0 0 35px;
		letter-spacing: 2px;
	}

    /* abo - reduced font size 20% per justin */
	h3 {
		font-size: 30px;
		line-height: 36px;
		margin: 0 0 75px;
		letter-spacing: 1.2px;
	}

	.posts .image {
		max-width: 532px;
	}

	.post-info .form ul li {
		padding: 21px 60px 20px;
	}

	.btn-default,
	.btn-primary {
		min-width: 170px;
		padding: 16px 16px;
		margin: 0 34px 0 0;
		font-size: 15px;
		line-height: 18px;
	}

	.btn-default span,
	.btn-primary span {
		font-size: 15px;
		line-height: 18px;
	}

	.intro-area .caption {
		width: 50%;
	}


    .intro-area .caption:after {
        opacity: 1;
    }


	.intro-area .caption.add h1 {
		font-size: 50px;
		line-height: 55px;
	}

	.intro-area .carousel.add .caption {
		font-size: 28px;
		line-height: 40px;
	}

	.intro-area .carousel.add .textblock {
		padding: 45px 40px 130px;
	}

	.intro-area .carousel.add p {
		margin: 0 0 40px;
	}

	.intro-area .carousel.add h1 {
		font-size: 30px;
		line-height: 50px;
		margin: 0 0 40px;
	}

	.intro-area .carousel.add .bg-stretch img {
		margin: 0 -400px 0 0;
	}

	.intro-area .carousel.right h1 {
		font-size: 30px;
		line-height: 50px;
		margin: 0 0 20px;
	}

	.intro-area .carousel.right .pagination {
		width: 50%;
		left: auto;
		right: 0;
	}

	.intro-area .carousel.right .pagination ul {
		padding-left: 87px;
	}


     /* abo - reduced the font size for the intro area text for this range*/
	.intro-area h1 {
		font-size: 30px;
		line-height: 50px;
		margin: 0 0 28px;
	}

	

	.statements .text {
		padding: 0 0 20px;
	}

	.statements .text.second {
		padding: 0 0 20px 100px;
	}

	.statements .text.third {
		padding: 0 0 20px 200px;
	}

	.statements .text-holder {
		font-size: 40px;
		line-height: 44px;
	}

	.statements .text-holder em {
		font-size: 100px;
		line-height: 100px;
	}

	.statements .text-holder em sup {
		font-size: 50px;
		line-height: 50px;
	}

	.statements .text-holder strong {
		font-size: 100px;
		line-height: 100px;
	}

	.statements .cols {
		font-size: 28px;
		line-height: 40px;
		padding: 71px 0 50px;
	}

	.statements .cols .col {
		width: 23%;
		margin: 0 .5% 35px;
	}

	.statements .cols .col:before {
		display: block;
	}

	.statements .head {
		white-space: nowrap;
		text-align: center;
		width: 115px;
		height: 115px;
		margin: 0 auto 51px;
	}

	.statements .head:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 115px;
	}

	.statements .head > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.statements .head:after {
		width: 115px;
		height: 115px;
	}

	.statements .head strong {
		font-size: 50px;
		line-height: 50px;
		padding: 7px 3px 12px;
	}

	.visual-section {
		font-size: 28px;
		line-height: 46px;
	}

	.video-area .btn-play {
		font-size: 115px;
		line-height: 115px;
		margin: -55px 0 0 -56px;
	}

	.about {
		font-size: 28px;
		line-height: 46px;
	}

	.about .textarea {
		margin: -70px 0 0 120px;
	}

	.about h3 {
		line-height: 70px;
	}

	.about .holder {
		padding: 0 0 90px;
	}

	.about .text {
		padding: 0 0 277px;
	}

	.about .text:after {
		bottom: -54px;
		height: 274px;
	}

	.about .img-holder .img {
		width: 250px;
	}

	.articles .container:after {
		left: 221px;
		right: 221px;
	}

	.articles.add .holder {
		padding: 90px 0 72px;
		margin: 0 -20px 6px;
	}

	.articles.partner .article {
		margin: 0 1.5% 170px;
	}

	.articles.partner .holder {
		margin: 0 -90px;
	}

	.articles .article {
		font-size: 22px;
		line-height: 40px;
		width: 27.1%;
		margin: 0 2.5% 70px;
	}

	.articles .image {
		width: 190px;
		height: 190px;
		white-space: nowrap;
		text-align: center;
		margin: 0 auto 87px;
	}

	.articles .image:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 190px;
	}

	.articles .image > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.articles .image:after {
		width: 190px;
		height: 190px;
	}

	.articles .image.large {
		width: 200px;
		height: 200px;
		white-space: nowrap;
		text-align: center;
		margin: 0 auto 60px;
	}

	.articles .image.large:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 200px;
	}

	.articles .image.large > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.articles .image.large:after {
		width: 200px;
		height: 200px;
	}

	.articles .image.large img {
		max-width: 80%;
	}

	.articles .image img {
		max-width: 80%;
	}

	.company-bio .textblock {
		font-size: 28px;
		line-height: 46px;
		padding: 0 40px 137px;
	}

	.company-bio h3 {
		font-size: 40px;
		line-height: 44px;
	}

	.company-bio h3 span:before {
		top: 15px;
		bottom: 5px;
	}

	.company-bio .image {
		margin: -100px 0 0 -150px;
	}

	.company-bio .head {
		width: 62%;
		margin: 0 -120px 0 6%;
	}

	.partners .heading {
		padding-top: 100px;
		padding-bottom: 50px;
	}

	.partners .slider {
		margin: 0 0 100px;
	}

	.partners .slide {
		width: 33.333% !important;
	}

	.partners .textblock {
		font-size: 28px;
		line-height: 45px;
		padding: 0 100px 100px;
	}

	.blog-posts .heading {
		padding-top: 32px;
		padding-bottom: 6px;
	}

     /* abo - reduced font size for blog posts by 20%*/
	.blog-posts .textblock {
		font-size: 20px;
		line-height: 34px;				
	}

     /* abo - reduced font size for blog posts by 20%*/
	.blog-posts .more {
		font-size: 15px;
		line-height: 18px;
	}

	.breadcrumbs {
		padding: 24px 40px 20px;
	}

	.help-block {
		font-size: 20px;
		line-height: 38px;
	}

	.help-block .frame {
		width: 540px;
		height: 480px;
		margin: 0 10px 0 0;
	}

	.help-block .frame .image {
		width: 360px;
		margin: 54px 123px;
	}

	.help-block .frame .comment {
		white-space: nowrap;
		text-align: center;
		width: 121px;
		height: 121px;
		font-size: 35px;
		line-height: 35px;
		top: 177px;
		left: 60px;
	}

	.help-block .frame .comment:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 121px;
	}

	.help-block .frame .comment > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.help-block .frame .setting {
		width: 72px;
		height: 72px;
		font-size: 25px;
		line-height: 25px;
		white-space: nowrap;
		text-align: center;
		bottom: 70px;
		right: 77px;
	}

	.help-block .frame .setting:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 72px;
	}

	.help-block .frame .setting > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.help-block .textblock {
		padding: 19px 0 0;
	}

	.facilitator {
	    /* abo - reduced font size 20% per justin */
		font-size: 18px;
		line-height: 36px;
	}

	.facilitator.add .cols .col:after {
		right: 100px;
		left: 100px;
	}


    .facilitator.add .cols_indented .col:after {
        right: 100px;
        left: 100px;
    }

	

	.facilitator.add .connector {
		max-width: 600px;
	}

	.facilitator.inner .connector {
		max-width: 600px;
	}


    .facilitator.add .connector2 {
        max-width: 600px;
    }

    .facilitator.inner .connector2 {
        max-width: 600px;
    }


    /* abo - per justing reduce the top and bottom padding for the facilitator heading by 20%*/
	.facilitator .heading {
		padding: 42px 0 42px;
	}

    /* abo - per justin reduce spacing below column headings by 20% */
	.facilitator h3 {
		margin: 0 0 15px;
	}


    /* abo - reduce the connector height by 20% */
	.facilitator .connector {
		height: 45px;
		max-width: 768px;
	}

    /* abo - reduce the connector height by 20% */
    .facilitator .connector2 {
        height: 45px;
        max-width: 50%;
    }


	.facilitator .cols {
		margin: 0 -90px;
	}

	.facilitator .cols .col {
		width: 47%;
		margin: 0 1%;
		padding: 0 64px;
	}

    /* abo - per justin reduce spacing below column paragraphs by 20% */
	.facilitator .cols p {
		margin: 0 0 24px;
	}




    .facilitator .cols_indented {
        padding-left: 0px;
        padding-right: 0px;
        margin-left: 0px;
        margin-right: 0px;
        min-width: 90%;
        max-width: 100%;                       
    }

    .facilitator .cols_indented .col {
        /*width: 47%;*/
        max-width: 38%;
        /*margin: 0 1%;
        padding: 0 64px;*/
        padding: 30px 30px 0px 30px;
        left-margin: 0px;
        right-margin: 0px;
    }

    .facilitator .cols_indented .col.seperator {
        left-margin: 0px;
        right-margin: 0px;
        padding: 50px; 
        max-width: 1%;
    }

    /* abo - per justin reduce spacing below column paragraphs by 20% */
    .facilitator .cols_indented p {
        margin: 0 0 24px;
    }




    /* abo - per justin reduced font size 20% */
	.assessment {
		font-size: 18px;
		line-height: 34px;
	}

	.assessment h2 {
		margin: 0 0 32px;
	}

    /* abo - per justin reduce the font size by 20% */
	.assessment ol li {
		font-size: 18px;
		line-height: 34px;
		margin: 0 1.2% 20px;
	}

	.assessment .btn-default {
		margin: 46px 31px 0 0;
		min-width: 210px;
		padding: 24px 35px;
	}

	.assessment .img-holder {
        position: static;

        width: 400px;
		height: 380px;
		padding: 30px;
		max-width: inherit;
		margin: 0 auto;
        float: none;
        display: inline-block;
        vertical-align: middle;
	}

	.assessment .img-holder .img {
		width: 300px;
	}




    /* abo - decreased details table font size */
	.details {
		font-size: 18px;
		line-height: 30px;
	}

	.details .heading {
		padding: 0 0 36px;
	}

    /* abo - decreased details table font size */
	.details table th {
		font-size: 18px;
		line-height: 30px;
	}

    /* abo - decreased details table font size */
	.details table i {
		font-size: 30px;
		line-height: 30px;
	}

	.details .btn-area span {
		font-size: 25px;
		line-height: 30px;
	}

	.details .btn-area em {
		margin: 0 0 22px;
	}

	.details .btn-area .btn-primary,
	.details .btn-area .btn-default {
		min-width: 167px;
	}



    /* grid2c */

    /* abo - decreased grid2c table font size */
    .grid2c {
        font-size: 16px;
		line-height: 24px;
    }

    .grid2c .post-info td {
        font-size: 18px;
        line-height: 26px;
    }

    .grid2c .heading {
        padding: 0 0 36px;
    }

    /* abo - decreased grid2c table font size */
    .grid2c table th {
        font-size: 16px;
		line-height: 24px;
		letter-spacing: 2px;
    }

    /* abo - decreased grid2c table font size */
    .grid2c table i {
        font-size: 30px;
        line-height: 30px;
    }

    .grid2c .btn-area span {
        font-size: 25px;
        line-height: 30px;
    }

    .grid2c .btn-area em {
        margin: 0 0 22px;
    }

    .grid2c .btn-area .btn-primary,
    .grid2c .btn-area .btn-default {
        min-width: 267px;
    }



    /* bookstore */

    .bookstore {
        font-size: 18px;
        line-height: 24px;
    }

    .bookstore .heading {
        padding: 0 0 0px;
        font-size: 20px;
        line-height: 38px;
    }

    .bookstore table th {
        font-size: 25px;
        line-height: 20px;
    }

    .bookstore table th,
    .bookstore table td {
        padding: 1px 1px 1px 8px;
    }

    .bookstore table i {
        font-size: 35px;
        line-height: 35px;
    }

    .bookstore .btn-area span {
        font-size: 15px;
        line-height: 18px;
    }

    .bookstore .btn-area em {
        margin: 0 0 22px;
    }

    .bookstore .btn-area .btn-primary,
    .bookstore .btn-area .btn-default {
        min-width: 40px;
    }





	.author-block {
		font-size: 18px;
		line-height: 36px;
	}

	.author-block .textblock {
		padding: 20px 0 0px;
		margin: 0px 0px 0px 0px;
	}


	/* abo - the textblock is bottom aligned so in order to move it up we need to increase
             the bottom margin */
	.author-block.add .textblock {
		margin-bottom: 22px;
	}


    /* abo - match up the heading sizes */
	.author-block h3 {
		font-size: 30px;
		line-height: 36px;
	}

	.author-block p {
		margin: 0 0 45px;
	}


/*
	.author-block .image-area:after,
	.author-block .image-area:before {
		top: -21%;
		height: 281px;
	}
	*/

	.author-block .image {
		width: 260px;
		height: 260px;
		white-space: nowrap;
		text-align: center;
	}

	.author-block .image:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 260px;
	}

	.author-block .image > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

/*	.author-block .image:after {
		width: 260px;
		height: 260px;
	}
	*/

	.author-block .image img {
		max-width: 100%;
	}

	.author-block .btn-default,
	.author-block .btn-primary {
		min-width: 170px;
	}

	.testimonials {
		font-size: 28px;
		line-height: 46px;
	}

	.testimonials .caption {
		font-size: 28px;
		line-height: 32px;
		left: 0;
		bottom: 41px;
	}

	.testimonials h3 {
		font-size: 49px;
		line-height: 55px;
	}

    /* abo - reduce the font size for this media size */
	.authors {
		font-size: 18px;
		line-height: 36px;
	}

	.authors .col {
		padding: 80px 0 30px;
	}

    /* abo - adjust the textblock padding */
	.authors .textblock {
		padding: 30px 42px 0px;
		text-align: center;
	}

    /* abo - modified h1 size to match other heading sizes */
	.authors h1 {
		font-size: 30px;
		line-height: 36px;
	}

	.authors p {
		margin: 0 0 45px;
	}

	.authors .btn-primary {
		font-size: 25px;
		line-height: 28px;
		padding: 30px 15px;
		min-width: 200px;
	}

	.authors .btn-primary span {
		font-size: 15px;
		line-height: 18px;
	}

    /* abo - set the max-width in proportion to the device size */
	.authors .article .textblock {
		/*max-width: 860px;*/
		max-width: 90%;
		padding: 0px 0 0px;
	}

	.authors .article .text {
		margin: 0 110px 0 0;
	}

	.authors .article .btn-area {
		padding: 19px 0 0;
	}

	#footer .container {
		padding: 148px 150px 150px;
	}

	#footer .cols .col {
		overflow: hidden;
		margin: 0;
	}

	#footer .cols .col:first-child {
		float: left;
		overflow: visible;
		width: 48%;
		margin: 0 120px 0 0;
	}

	#footer form {
		margin: 0;
	}

	#footer .f-nav {
		text-align: left;
	}

	#footer .f-nav ul {
		float: right;
	}


    .twoclm .cols .col {
        overflow: hidden;
        margin: 0;
    }

    .twoclm .cols .col:first-child {
        float: left;
        overflow: visible;
        width: 48%;
        margin: 0 12px 0 0;
    }

	.twoclm leftclm {
	    margin: 0;
    }

	.twoclm rightclm {
        float: right;
        text-align: left;
    }



    .twoclm_flip .cols .col {
        overflow: hidden;
        margin: 0;
    }

    /*
       since the columns are flipped in the order that they are specified within the layout,
       the right column is actually the first-child since it is specified first in the
       document
    */
    .twoclm_flip .cols .col:first-child {
        float: right;
        overflow: visible;
        width: 48%;
    }

    .twoclm_flip .leftclm {
        float: left; 
        margin: 0 12px 0 0;       
        padding: 50px 0px 0px 16px;
    }

    .twoclm_flip .rightclm {
        text-align: left;
        margin: 0 12px 0 0;
        padding: 50px 0px 0px 16px;
    }

}



@media (min-width: 1100px) {

    .about .image-area {
        padding: 108px 0 0px;
    }

}




@media (min-width: 1140px) {

	.author-block .image-area:after,
	.author-block .image-area:before {
		top: -9%;
	}


    /* abo - reduce the connector height by 20% */
    .facilitator .connector2 {
        height: 45px;
        max-width: 57%;
    }

	.cols_indented {
	    padding-left: 0px;
	    padding-right: 0px;
	    margin-left: 0px;
	    margin-right: 0px;
	    min-width: 90%;
	    max-width: 100%;
    }

    .facilitator .cols_indented .col {
        /*width: 47%;*/
        max-width: 40%;
        /*margin: 0 1%;
        padding: 0 64px;*/
        padding: 30px 30px 0px 30px;
        left-margin: 0px;
        right-margin: 0px;
    }

    .facilitator .cols_indented .col.seperator {
        left-margin: 0px;
        right-margin: 0px;
        padding: 70px; 
        max-width: 1%;
    }

}

@media (min-width: 1300px) {
	#header .logo {
	    margin: 32px 20px 0 0;
		width: 284px;
	}

	.nav-area {
		width: 72%;
	}


    /* ABO - the team requested smaller buttons at this screen width */
	.btn-default,
    .btn-primary {
		min-width: 170px;
		padding: 16px 16px;
		margin: 0 34px 0 0;
		font-size: 15px;
		line-height: 18px;
	}

	.btn-default span,
	.btn-primary span {
		font-size: 15px;
		line-height: 18px;
	}


/*
    .btn-default,
	.btn-primary {
		min-width: 221px;
		padding: 22px 30px;
		margin: 0 34px 0 0;
		font-size: 18px;
		line-height: 22px;
	}

	.btn-default span,
	.btn-primary span {
		font-size: 18px;
		line-height: 22px;
	}
*/	


	.intro-area .carousel.add .bg-stretch img {
		margin: 0;
	}

	.intro-area .carousel.add h1 {
        font-size: 32px;
        line-height: 48px;
        margin: 0 0 16px;
    }

	.intro-area .carousel.right .textblock {
		padding: 67px 50px 150px 87px;
	}

	.intro-area .carousel.right .image {
		min-width: 1920px;
	}

	.intro-area .carousel.right .image img {
		min-width: 1920px;
	}

	.intro-area .carousel.right h1 {
        font-size: 32px;
        line-height: 48px;
        margin: 0 0 16px;
    }




    /* abo - reduced the top padding for the intro area*/
	.intro-area .textblock {
		max-width: 620px;
		padding: 47px 40px 120px;
	}

    /* abo - reduced the font size for the intro area text */
	.intro-area h1 {
		font-size: 32px;
		line-height: 48px;
		margin: 0 0 16px;
	}

	.intro-area h1.large {
		font-size: 66px;
		line-height: 80px;
	}

	.intro-area .name {
		margin: 0 0 23px;
	}

	.intro-area .btn-default.add,
	.intro-area .btn-primary.add {
		padding: 22px 40px;
	}

	.intro-area .btn-default,
	.intro-area .btn-primary {
		margin: 0 15px 0 0;
		padding: 22px 40px;
	}

	.intro-area .image {
		min-width: 1920px;
	}

	.intro-area .image img {
		margin: 0 -100px 0 0;
		min-width: 1920px;
	}

	.statements .text {
		padding: 0 160px 20px 0;
	}

	.statements .text.second {
		padding: 0 0 29px 133px;
	}

	.statements .text.third {
		padding: 0 0 29px 200px;
	}

	.video-area.add {
		margin: 0 -40px;
	}

	.about .container {
		padding-left: 0;
		padding-right: 0;
	}

	.about .textarea {
		margin: -117px 0 0 120px;
	}

	.about .text {
		margin: 0 11.5% 0 0;
	}

	.articles.add .article {
		width: 23%;
	}

	.articles.partner .article {
		width: 27.2%;
	}

	.articles .holder {
		margin: 0 -39px 70px;
	}

	.articles .article {
		width: 29%;
		margin: 0 1.6% 70px;
	}

	.articles .image.large {
		width: 255px;
		height: 255px;
		white-space: nowrap;
		text-align: center;
		margin: 0 auto 107px;
	}

	.articles .image.large:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 255px;
	}

	.articles .image.large > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.articles .image.large:after {
		width: 255px;
		height: 255px;
	}

	.articles .image.large img {
		max-width: 100%;
	}

	.company-bio h3 {
		font-size: 50px;
		line-height: 54px;
	}

	.company-bio .icon-trust {
		font-size: 90px;
		line-height: 90px;
		margin: 0 0 44px 60px;
	}

	.company-bio .head {
		width: 57%;
		margin: 0 -243px 0 0;
	}

	.company-bio .head h3 {
		line-height: 60px;
	}

	.company-bio .text {
		width: 66%;
	}

	.help-block .frame {
		margin: 0 80px 0 -21px;
	}

	.help-block .btn-default,
	.help-block .btn-primary {
		margin: 0 15px 0 0;
		min-width: 211px;
	}


	.facilitator .cols {
		margin: 0 -190px;
	}

	.facilitator .cols .col {
		padding: 0 100px;
	}

    .facilitator .cols_indented {
        padding-left: 0px;
        padding-right: 0px;
        margin-left: 0px;
        margin-right: 0px;
        min-width: 90%;
        max-width: 100%;
    }

    .facilitator .cols_indented .col {
		padding: 0 100px;
	}


    .facilitator .cols_indented .col {
        /*width: 47%;*/
        max-width: 40%;
        /*margin: 0 1%;
        padding: 0 64px;*/
        padding: 30px 30px 0px 30px;
        left-margin: 0px;
        right-margin: 0px;
    }

    .facilitator .cols_indented .col.seperator {
        left-margin: 0px;
        right-margin: 0px;
        padding: 70px;
        max-width: 1%;
    }


		

	.assessment ol {
		margin: 0 -90px;
	}

    /* abo - decrease the padding for the textblock as it affects
             the positioning of the image */
	.author-block .textblock {
		width: 47%;
		margin: 0 5% 0 0;
		padding: 0px 0 0px;
	}

    /* abo - the textblock is bottom aligned so in order to move it up we need to increase
         the bottom margin */
    .author-block.add .textblock {
        margin-bottom: 52px;
    }


	.author-block h3 br {
		display: block;
	}

    /* abo - set the top padding to zero for now to account for the fact that we are not using the
             before and after style lines */
	.author-block .image-area {
	    /* padding: 65px 0 0; */
		padding: 30px 0 30px;
		margin: 0 -13px 0 0;
	}

/*	.author-block .image-area:after,
	.author-block .image-area:before {
		right: 13px;
		top: -61px;
	}
*/

	.author-block .btn-default,
	.author-block .btn-primary {
		min-width: 221px;
	}

	#footer .cols .col:first-child {
		margin: 0 140px 0 0;
	}

	.twoclm .cols .col:first-child {
        margin: 0 14px 0 0;
    }


}

@media (min-width: 1401px) {

    /* abo - decreased vertical padding before the footer */
	#wrapper.generic #footer .container {
		padding: 120px 223px 135px;
	}

	#footer .container {
		padding: 120px 223px 135px;
	}

	#footer .cols .col:first-child {
		margin: 0 149px 0 0;
	}

	#footer form {
		padding: 46px 23px 52px 58px;
	}


	.twoclm .cols .col:first-child {
      margin: 0 14px 0 0;
    }

    .twoclm leftclm {
        padding: 46px 23px 52px 58px;
    }

}

@media (max-width: 767px) {
	.articles .article {
		white-space: nowrap;
		text-align: center;
	}

	.articles .article:before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		width: 0;
		min-height: 100%;
	}

	.articles .article > * {
		white-space: normal;
		display: inline-block;
		vertical-align: middle;
		max-width: 99%;
	}

	.articles .textarea {
		max-width: 50%;
	}
}

@media (max-width: 374px) {
	.articles .textarea {
		max-width: 100%;
		display: block;
	}
}

@media print {
	* {
		background: none !important;
		color: #000 !important;
		border-color: #000;
		font-size: 18px !important;
		line-height: 30px !important;
	}

	body {
		min-width: inherit;
	}

	h1,
	h2,
	h3 {
		font-size: 30px !important;
		line-height: 40px !important;
	}

	#wrapper,
	#wrapper .generic {
	    margin: 0 !important;
	    padding: 0 !important;
    }
	#header,
	.container,
	#main,
	.visual,
	.visual .holder,
	.posts,
	.posts .container .post,
	#footer,
	#footer .container,
	.twoclm,
	.twoclm .cols,
    .twoclm_flip,
    .twoclm_flip .cols,
	.visual .container,
	.visual .text,
	.facilitator,
	.facilitator .heading,
	.facilitator .cols,
	.facilitator .cols_indented,
	.assessment,
	.assessment .container,
	.assessment .heading,
	.assessment ol,
	.blog-posts,
	.blog-posts .post-holder,
	.blog-posts .post,
	.details,
	.details .heading,
    .grid2c,
    .grid2c .heading,
	.bookstore,
    .bookstore .heading,
	.help-block,
	.articles .holder,
	.blog-posts .heading,
	.author-block .textblock,
	.details table,
	.grid2c table,
	.bookstore table,
	.statements,
	.statements .cols,
	.about .text,
	.about .textarea,
	.about .holder,
	.articles .container,
	.articles .holder,
	.company-bio,
	.company-bio .block-holder,
	.company-bio .textblock,
	.company-bio .head,
	.articles.partner .holder,
	.articles .holder,
	.articles.partner .article,
	.visual-section .caption,
	.visual-section,
	.authors,
	.authors .cols,
	.authors .textblock,
	.author-block .container,
	.authors .article,
	.authors .container,
	.authors .col {
		display: block !important;
		float: none !important;
		overflow: visible;
		clear: both;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		position: static;
		max-width: inherit;
		min-height: inherit !important;
		height: auto !important;
		opacity: 1 !important;
		border: none !important;
	}

	#wrapper:after,
	#wrapper:before,
	#header:after,
	#header:before,
	.container:after,
	.container:before,
	#main:after,
	#main:before,
	.visual:after,
	.visual:before,
	.visual .holder:after,
	.visual .holder:before,
	.posts:after,
	.posts:before,
	.posts .container .post:after,
	.posts .container .post:before,
	#footer:after,
	#footer:before,
	#footer .container:after,
	#footer .container:before,
	.twoclm:after,
	.twoclm:before,
	.twoclm .cols:after,
	.twoclm .cols:before,
    .twoclm_flip:after,
    .twoclm_flip:before,
    .twoclm_flip .cols:after,
    .twoclm_flip .cols:before,
	.visual .container:after,
	.visual .container:before,
	.visual .text:after,
	.visual .text:before,
	.facilitator:after,
	.facilitator:before,
	.facilitator .heading:after,
	.facilitator .heading:before,
	.facilitator .cols:after,
	.facilitator .cols:before,
    .facilitator .cols_indented:after,
    .facilitator .cols_indented:before,	
	.assessment:after,
	.assessment:before,
	.assessment .container:after,
	.assessment .container:before,
	.assessment .heading:after,
	.assessment .heading:before,
	.assessment ol:after,
	.assessment ol:before,
	.blog-posts:after,
	.blog-posts:before,
	.blog-posts .post-holder:after,
	.blog-posts .post-holder:before,
	.blog-posts .post:after,
	.blog-posts .post:before,
	.details:after,
	.details:before,
	.details .heading:after,
	.details .heading:before,
    .grid2c:after,
    .grid2c:before,
    .grid2c .heading:after,
    .grid2c .heading:before,
	.bookstore:after,
    .bookstore:before,
    .bookstore .heading:after,
    .bookstore .heading:before,
	.help-block:after,
	.help-block:before,
	.articles .holder:after,
	.articles .holder:before,
	.blog-posts .heading:after,
	.blog-posts .heading:before,
	.author-block .textblock:after,
	.author-block .textblock:before,
	.details table:after,
	.details table:before,
    .grid2c table:after,
    .grid2c table:before,
	.bookstore table:after,
    .bookstore table:before,
	.statements:after,
	.statements:before,
	.statements .cols:after,
	.statements .cols:before,
	.about .text:after,
	.about .text:before,
	.about .textarea:after,
	.about .textarea:before,
	.about .holder:after,
	.about .holder:before,
	.articles .container:after,
	.articles .container:before,
	.articles .holder:after,
	.articles .holder:before,
	.company-bio:after,
	.company-bio:before,
	.company-bio .block-holder:after,
	.company-bio .block-holder:before,
	.company-bio .textblock:after,
	.company-bio .textblock:before,
	.company-bio .head:after,
	.company-bio .head:before,
	.articles.partner .holder:after,
	.articles.partner .holder:before,
	.articles .holder:after,
	.articles .holder:before,
	.articles.partner .article:after,
	.articles.partner .article:before,
	.visual-section .caption:after,
	.visual-section .caption:before,
	.visual-section:after,
	.visual-section:before,
	.authors:after,
	.authors:before,
	.authors .cols:after,
	.authors .cols:before,
	.authors .textblock:after,
	.authors .textblock:before,
	.author-block .container:after,
	.author-block .container:before,
	.authors .article:after,
	.authors .article:before,
	.authors .container:after,
	.authors .container:before,
	.authors .col:after,
	.authors .col:before {
		display: none !important;
	}

	.load,
	.fade,
	.slide-left,
	.slide-right,
	.bottom-top {
		opacity: 1 !important;
		visibility: visible !important;
	}

	.statements .cols .col {
		width: 48%;
		opacity: 1;
		visibility: visible;
	}

	#header {
		position: static !important;
	}

	#header.fixed-position {
		position: static !important;
	}

	.container {
		padding: 10px !important;
	}

	.visual .container {
		max-width: 1240px;
		height: auto !important;
		padding: 0 0 50px !important;
	}

	.visual .holder {
		position: static !important;
		padding: 0 0 60px;
	}

	.articles .holder {
		padding: 30px 0 !important;
	}

	#header .logo {
		float: none !important;
		display: block !important;
		margin: 0 auto 20px !important;
	}

	.nav-area,
	.visual .image,
	#footer .logo,
	#footer .links,
	#footer .cols,
	#footer .social-networks,
	.twoclm .cols,
	.twoclm_flip .cols,
	.post-info,
	.posts .image,
	.intro-area,
	.facilitator .connector, connector2,
	.statements.inner,
	.blog-posts .image,
	.btn-default,
	.btn-primary,
	.details .btn-area,
	.grid2c .btn-area,
	.bookstore .btn-area,
	.articles .image,
	.help-block .frame,
	.blog-posts .btn-area,
	.author-block .image-area,
	.blog-posts .link,
	.about .image-area,
	.about .download-area,
	.video-area,
	.company-bio .image,
	.partners,
	.author-block .image,
	.assessment .download-holder,
	.visual-section .image,
	.testimonials,
	.authors .image,
	.visual {
		display: none !important;
	}

	.details table th {
		display: none;
	}

    .grid2c table th {
        display: none;
    }

    .bookstore table th {
        display: none;
    }

	.authors .col {
		border: none;
	}

	.details table td {
		padding: 14px;
	}

    .grid2c table td {
        padding: 14px;
    }

    .bookstore table td {
        padding: 14px;
    }

	.authors .article .textblock {
		max-width: 100% !important;
		width: 100% !important;
		clear: both;
		display: block;
		text-align: center !important;
	}

	.details table {
		page-break-inside: avoid;
	}

    .grid2c table {
        page-break-inside: avoid;
    }

    .bookstore table {
        page-break-inside: avoid;
    }

	.articles {
		text-align: center !important;
		width: 100%;
	}

	.articles.partner .article {
		margin: 0 !important;
		text-align: center !important;
		clear: both;
		display: block;
		width: 100%;
	}

	.articles h3 {
		width: 100%;
	}

	.articles h3 span {
		display: block;
		width: 100%;
	}

	.articles h3 span:after,
	.articles h3 span:before {
		display: none;
	}

	.articles p {
		clear: both;
		float: left;
		width: 100%;
	}
}

@-webkit-keyframes slideInUp {
	from {
		-webkit-transform: translate3d(0, 20%, 0);
		transform: translate3d(0, 20%, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInUp {
	from {
		-webkit-transform: translate3d(0, 20%, 0);
		transform: translate3d(0, 20%, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes fade {
	from {
		opacity: 0;
		visibility: hidden;
	}

	to {
		opacity: 1;
		visibility: visible;
	}
}

@keyframes fade {
	from {
		opacity: 0;
		visibility: hidden;
	}

	to {
		opacity: 1;
		visibility: visible;
	}
}

@-webkit-keyframes slideleft {
	from {
		-webkit-transform: translate3d(-30%, 0, 0);
		transform: translate3d(-30%, 0, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideleft {
	from {
		-webkit-transform: translate3d(-30%, 0, 0);
		transform: translate3d(-30%, 0, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes slideright {
	from {
		-webkit-transform: translate3d(30%, 0, 0);
		transform: translate3d(30%, 0, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideright {
	from {
		-webkit-transform: translate3d(30%, 0, 0);
		transform: translate3d(30%, 0, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes bottom-top {
	from {
		-webkit-transform: translate3d(0, 30%, 0);
		transform: translate3d(0, 30%, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes bottom-top {
	from {
		-webkit-transform: translate3d(0, 30%, 0);
		transform: translate3d(0, 30%, 0);
		visibility: visible;
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

