@charset "UTF-8";
/*
	CSS Document for mbaMission v3.0
	Copyright 2019 Neuro-Designs. All rights reserved.
	www.neuro-designs.com

	v1.0 - Last updated 2019/04/04

	Colors:
	#c42339 / rgba(199,32,53,1) - mbaMission Red
	#64b0ba / rgba(100,176,186,1) - mbaMission Teal
	#6e7071 / rgba(110,112,113,1) - mbaMission Grey
*/

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

/* -------------------------------- */

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

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
  }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

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

table {
	border-collapse: collapse;
	border-spacing: 0;
  }

/* -------------------------------------------------------------

  General Settings

------------------------------------------------------------- */

*,
*:before,
*:after { /* Box Sizing Settings */
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  }

::selection {
    background: rgba(100,176,186,1);
    color: #fff;
    }

html { font-size: 62.5%; }

html,
body {
  height: 100%;
  }

body {
	padding-top: 0; /* Adjust with <header> height when necessary */
	background: rgba(199,32,53,1);
	font: 10px/20px 'Barlow', sans-serif;
	color: #444;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	scroll-behavior: smooth;
	}

a:link,
a:visited {
	color: rgba(199,32,53,1);
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	}

	a:hover { color: #ccc; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 1.61em;
	color: rgba(199,32,53,1);
	font-weight: 400;
	}

	h1 {
  	margin: 0;
  	font-size: 4.7em;
  	line-height: 1em;
  	}

  	h1 a { font-weight: 400 !important; }

	h2 {
  	font-size: 3.6em;
  	font-weight: 100;
  	line-height: 1.2em;
	  }

	  h2 span { font-weight: 400; }

	h3 {
  	margin-bottom: .75em;
  	font-size: 2.7em;
  	line-height: 1.32em;
    }

  h4 {
    font-size: 1.7em;
    line-height: 1.61em;
    }

  h5,
  h6 {
    color: rgba(100,176,186,1);
    font-size: 1.7em;
    line-height: 1.61em;
    }

p,
pre,
figure,
table,
ul,
ol {
	margin-bottom: 1.61em;
	font-size: 1.7em;
	line-height: 1.61em;
	}

ul,
ol {
	padding-left: 1.5em;
	}

	ul li { list-style: square outside; }

	ol li { list-style: decimal outside; }

	  ol.lower-roman li { list-style: lower-roman; }

	ul li,
	ol li {
  	padding-left: .5em;
	  }

	ul ul,
	ul ol,
	ol ul,
	ol ol {
		margin: 0;
		font-size: 1em;
		}

		ol ul li { list-style: disc; }

img {
	max-width: 100%;
	vertical-align: middle;
	image-rendering: optimizeQuality;
	}

	figure img { width: 100%; /* inherit <figure>'s width */ }

	figcaption {
  	margin-top: .5em;
  	color: #999;
  	font-size: .8em;
  	font-style: italic;
  	text-align: center;
  	}

blockquote {
  background: rgba(100,176,186,.15) 1em -.25em url("../images/bg-blockquote.svg") no-repeat;
	margin: 0 0 1.61em 0;
	padding: 1em;
	padding-top: 2.5em;
	border-bottom: .25em solid rgba(100,176,186,1);
	color: #666;
	font-size: 2.4em;
	font-weight: 100;
	line-height: 1.4em;
	}

  blockquote p.author {
    font-size: .73em;
    font-weight: 400;
    margin: 1.5em 0 0 0;
    padding-left: 25px;
    }

    blockquote p.author::before {
      content: '\f27a ';
      opacity: 1;
      display: inline-block;
      width: 25px;
      margin-left: -25px;
      color: rgba(100,176,186,1);
      font-family: 'Font Awesome 5 Pro';
      font-weight: 300;
      }

  blockquote ul,
  blockquote ol {
    font-size: 1em;
    }

	blockquote.small {
  	background-position-x: 1.5em;
  	padding: 1.5em;
  	padding-top: 3em;
  	font-size: 2em;
	  }

	 blockquote.small p.author { font-size: .85em; }

	   blockquote.small::before { margin-top: -2px; }

strong { font-weight: 700; }

em,
cite {
	font-style: italic;
	}

small,
sup,
sub { font-size: 0.8em; }

sup {
	position: relative;
	top: -0.6em;
	}

sub {
	position: relative;
	bottom: -0.6em;
	}

hr {
	clear: both;
	width: 100%;
	height: 0;
	margin: 3rem 0;
	border: none;
	border-top: 1px solid rgba(100,176,186,.5);
	font-size: 1.8em;
	line-height: 1.61em;
	}

hr.mobile-separator { 
  margin-top: 0 !important;
}

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

  hr.mobile-separator { display: none; }
  
}


table.default td {
  background: #eee;
  margin: 1px;
  padding: .5em 1em;
  border: 1px solid rgba(255,255,255,1);
  }

  table.default thead td { background: #ccc; }

  table.default tfoot td { background: #ccc; }

/* -------------------------------------------------------------

  Default Input Settings (encapsulate with <p> when possible)

------------------------------------------------------------- */

input,
textarea,
select,
button {
	font-family: 'Barlow', sans-serif;
	}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="file"],
input[type="password"],
textarea {
	background: rgba(110,112,113,.1);
	width: 90%;
	max-width: 100%;
	padding: .75em;
	border: none;
	border-bottom: 1px solid #fff;
	color: #444;
	font-size: 1em;
	}

	input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  input[type="password"]:focus,
  input[type="file"]:focus {
    background: rgba(110,112,113,.25);
    outline: none;
    border-bottom: 1px solid rgba(100,176,186,.3);
    }

	textarea {
		max-width: 100%;
		min-height: 6em;
		}

select {
  max-width: 100%;
  padding: .75em;
  font-size: 1em;
  }

input[type="search"] { -webkit-appearance: none; }

input[type="submit"],
button[type="submit"],
button {
	display: inline-block;
	background: rgba(199,32,53,1);
	padding: .5em 1em;
	color: #fff;
	border: none;
	font-size: 1.7em;
	cursor: pointer;
	-webkit-appearance: none;
	}

  button i { margin-left: .5em; }

	input[type="submit"]:hover,
	button[type="submit"]:hover {
		background: rgba(100,176,186,1);
		color: #fff;
		box-shadow: 0 10px 20px rgba(0,0,0,.25);
		}

::placeholder { color: rgba(0,0,0,.5); }

#error_message ul { padding: 0; }

  #error_message ul li {
    display: block;
    list-style: none;
    }

    #error_message ul li span {
    display: inline-block;
    background: red;
    margin: 1px;
    padding: .5em 1em;
    border-radius: 3px;
    color: #fff;
    }

/* -------------------------------------------------------------

  Additional Classes and Overrides

------------------------------------------------------------- */

/* -------------------------------------------------------------
  Font Stylings
------------------------------------------------------------- */

.text-normal { font-weight: normal; }

.text-align-center, .textaligncenter { text-align: center; }

.text-align-right, .textalignright { text-align: right; }

.text-underline { text-decoration: underline; }

.text-linethrough { text-decoration: line-through; }

.text-uppercase { text-transform: uppercase; }

.text-monospace { font-family: monospace; }

/* -------------------------------------------------------------
  Colors
------------------------------------------------------------- */

.shaded { background: #eee; }

.shaded-inverse {
  background: rgba(199,32,53,1);
  color: #fff;
  }

.shaded-teal { background: rgba(199,32,53,1); }

.shaded-light-teal { background: rgba(199,32,53,.05); }

.shaded-white { background: #fff; }

/* -------------------------------------------------------------
  Box Model
------------------------------------------------------------- */

.width-full { width: 100%; }

.hidden, .hide { display: none !important; }

.overflow-hidden { overflow: hidden; }

.margin-none { margin: 0; }

.margin-auto {
  float: none !important;
  margin: 0 auto;
  }

.margin { margin: 1em; }

.margin-top { margin-top: 1em; }

.margin-bottom { margin-bottom: 1em; }

.margin-left { margin-left: 1em; }

.margin-right { margin-right: 1em; }

.margin-sides {
  margin-left: 1em;
  margin-right: 1em;
  }

.margin-top-bottom {
  margin-top: 1em;
  margin-bottom: 1em;
  }

.margin-half { margin: .5em; }

.margin-half-top { margin-top: .5em; }

.margin-half-bottom { margin-bottom: .5em; }

.margin-half-left { margin-left: .5em; }

.margin-half-right { margin-right: .5em; }

.margin-half-sides {
  margin-left: .5em;
  margin-right: .5em;
  }

.margin-half-top-bottom {
  margin-top: .5em;
  margin-bottom: .5em;
  }


/*
  Note: When considering responsive layouts that may readjust itself
  significantly and look undesireable when stacked, consider using
  individual/paired padding classes instead of .padding
*/

.padding { padding: 2rem; }

.padding-top { padding-top: 2rem; }

.padding-bottom { padding-bottom: 2rem; }

.padding-left { padding-left: 2rem; }

.padding-right { padding-right: 2rem; }

.padding-sides {
  padding-left: 2rem;
  padding-right: 2rem;
  }

.padding-top-bottom {
  padding-top: 2rem;
  padding-bottom: 2rem;
  }

.padding-double { padding: 4rem; }

.padding-double-top { padding-top: 4rem; }

.padding-double-bottom { padding-bottom: 4rem; }

.padding-double-left { padding-left: 4rem; }

.padding-double-right { padding-right: 4rem; }

.padding-double-sides {
  padding-left: 4rem;
  padding-right: 4rem;
  }

.padding-double-top-bottom {
  padding-top: 4rem;
  padding-bottom: 4rem;
  }

.padding-half { padding: 1rem; }

.padding-half-top { padding-top: 1rem; }

.padding-half-bottom { padding-bottom: 1rem; }

.padding-half-left { padding-left: 1rem; }

.padding-half-right { padding-right: 1rem; }

.padding-half-sides {
  padding-left: 1rem;
  padding-right: 1rem;
  }

.padding-half-top-bottom {
  padding-top: 1rem;
  padding-bottom: 1rem;
  }

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

.border-top { border-top: 1px solid #fff; }

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

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

.border-left { border-left: 1px solid #fff; }

.border-sides {
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  }

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

/* -------------------------------------------------------------
  Alignment & Positioning
------------------------------------------------------------- */

.image-align-left { /* For use with images in paragraphs */
  float: left;
  margin-right: 1.61em;
  margin-bottom: 1em;
  }

.image-align-right { /* For use with images in paragraphs */
  float: right;
  margin-left: 1.61em;
  margin-bottom: 1em;
  }

.clear-both { clear: both !important; }

.clear-left { clear: left !important; }

.clear-right { clear: right !important; }

.float-left { float: left !important; }

.float-right { float: right !important; }

/* -------------------------------------------------------------
  Lists
------------------------------------------------------------- */

ul.blank { padding: 0; }

	ul.blank li {
		padding: 0;
		list-style: none;
		position: relative;
		}

.column-count-2 { column-count: 2; }

.column-count-3 { column-count: 3; }

.column-count-4 { column-count: 4; }

.column-count-5 { column-count: 5; }

  .column-count-2,
  .column-count-3,
  .column-count-4,
  .column-count-5 {
    column-gap: 1.61em;
    }

/* -------------------------------------------------------------

  Components

------------------------------------------------------------- */

.note { color: #999; }

.notification {
  background: rgba(199,32,53,1);
  color: #fff;
  margin-bottom: 1.61em;
  padding: 2.5em;
  }
  
  .notification p:last-child { margin: 0; }
  
  .notification p a:link,
  .notification p a:visited {
    color: #fff !important;
    }
    
    .notification p a:hover {
      opacity: .5 !important;
      }

.red { color: rgba(199,32,53,1); }

.teal { color: rgba(100,176,186,1); }

.inset {
	background: #eee;
	margin-bottom: 1.61em;
	padding: 2.5em;
	}

	.inset.teal { background-color: rgba(100,176,186,.15); }

a.button:link,
a.button:visited {
  display: inline-block;
  background: rgba(199,32,53,1);
  margin-bottom: 2px;
  padding: .5em 1em;
  color: #fff;
  font-size: 1.7em;
  font-weight: 400;
  }

  a.button:hover {
    background: rgba(100,176,186,1);
    box-shadow: 0 10px 20px rgba(0,0,0,.5);
    }

  a.button:active {  background: #6e7071 !important; }

  a.button i { margin-left: .25em; }

  a.button.small-back i {
    margin-right: .25em;
    margin-left: 0;
    }

  a.button.teal { background: rgba(100,176,186,1); }

    a.button.teal:hover { background: rgba(199,32,53,1); }

  a.button.small:link,
  a.button.small:visited,
  a.button.small-back:link,
  a.button.small-back:visited {
    display: inline-block;
    padding: .25em .75em;
    font-size: 1em;
    font-weight: 400;
    }

.cta-banner {
  background: rgba(199,32,53,1);
  width: 100%;
  margin: 0;
  color: #fff;
  text-align: center;
  }

  .cta-banner .button { white-space: nowrap; }

  .cta-banner p {
    margin: 0;
    font-size: 2em;
    }

  .cta-banner a:link,
  .cta-banner a:visited {
    color: #fff;
    }

    .cta-banner a:hover { opacity: .5; }

  .cta-banner.bottom { background: rgba(100,176,186,1); }

    .cta-banner.bottom .plc {
      display: flex;
      align-items: center;
      }

    .cta-banner.bottom .button:hover {
      background: #6e7071;
      opacity: 1;
      }

/* -------------------------------------------------------------
  Hero Image/Video
------------------------------------------------------------- */

.hero-full-screen {
  min-width: 100%;
  height: 100vh;
  min-height: 675px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
  }

/* Note: .hero-header needs to be placed for correct flex box calculation, even if it's empty when <header> is placed outside of .hero-full-screen */

.hero-full-screen .hero-header {
  z-index: 2;
  height: 90px !important; /* Adjust with static <header> height if necessary */
  }

.hero-full-screen .hero-main {
  z-index: 2;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  text-align: center;
  }

  .hero-main .col-8 {
    margin: 0 auto;
    float: none;
    }

  .hero-main h2 {
    margin: 0 0 .5em 0;
    color: #fff;
    font-size: 6em;
    font-weight: 100;
    letter-spacing: -0.00625em;
    line-height: 1.1em;
    }

  .hero-main h3 {
    color: #fff;
    font-size: 1.8em;
    line-height: 1.6em;
    margin-bottom: 2em;
    }

  .hero-main .button {
    white-space: nowrap;
    margin: .125em;
    display: inline-block;
    }

.hero-full-screen .hero-footer {
  z-index: 2;
  width: 100%;
  text-align: center;
  }

.hero-footer svg {
  height: 4.8rem;
  width: 4.8rem;
  fill: #ffffff;
  opacity: .5;
  margin-bottom: 2em;
  }

  .hero-footer svg:hover { opacity: 1; }

.video-overlay {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  overflow: hidden;
  background: rgba(100,176,186,.9);
  }

.video-background {
  z-index: -2;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  overflow: hidden;
  }

  .video-background iframe {
    width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
    min-width: 100vw;
    height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
    min-height: 100vh;
    position: absolute;
    top: 50vh;
    left: 50%;
    transform: translate(-50%, -50vh);
    }

/* -------------------------------------------------------------
  Tabs
------------------------------------------------------------- */

.ui-tabs {
	position: relative;
	padding: 0;
	zoom: 1;
	}

.ui-tabs .ui-tabs-nav {
	margin: 0 1em -1px 1em;
	padding: 0;
	overflow: hidden;
	}

	.ui-tabs .ui-tabs-nav li {
		list-style: none;
		float: left;
		position: relative;
		padding: 0;
		margin-right: .5em;
		white-space: nowrap;
		}

		.ui-tabs .ui-tabs-nav li a {
			float: left;
			background: #ccc;
			padding: .5em 1.5em;
			border: 1px solid #ccc;
			color: #999;
			font-weight: normal;
			outline: none;
			}

			.ui-tabs .ui-tabs-nav li i {
  			margin-right: 5px;
  			opacity: .5;
			  }

		.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
			margin-bottom: 0;
			padding-bottom: 1px;
			}

			.ui-tabs .ui-tabs-nav li.ui-state-active a {
				background: #fff !important;
				color: rgba(199,32,53,1);
				border-bottom: 1px solid #fff;
				}

			.ui-tabs .ui-tabs-nav li a:hover {
				background: rgba(199,32,53,1) !important;
				border-color: rgba(199,32,53,1);
				color: #fff;
				}

				.ui-tabs .ui-tabs-nav li.ui-state-active a:hover {
  				background: rgba(199,32,53,1) !important;
  				border-color: rgba(199,32,53,1);
  				cursor: default;
				  }

			.ui-tabs .ui-tabs-nav li.ui-tabs-selected a,
			.ui-tabs .ui-tabs-nav li.ui-state-disabled a,
			.ui-tabs .ui-tabs-nav li.ui-state-processing a {
				cursor: text;
				}

			.ui-tabs .ui-tabs-nav li a,
			.ui-tabs.ui-tabs-collapsible
			.ui-tabs-nav li.ui-tabs-selected a {
				cursor: pointer;
				}

	.ui-tabs .ui-tabs-panel {
		clear: both;
		display: block;
		margin: 0;
		padding: 0;
		border-width: 0;
		border-top: 1px solid #ccc;
		}

	.ui-tabs .ui-tabs-hide { display: none !important; }

/* -------------------------------------------------------------
  Accordion
------------------------------------------------------------- */

.accordion {
	margin-bottom: 20px;
	font-size: 1em;
	}

	.accordion * { outline: none; }

	.accordion h5 {
		background: url("/assets/images/bg-plus.png") 0 11px no-repeat;
		margin: 0;
		padding: 0 0 0 20px;
		}

		.accordion h5.ui-accordion-header-active { background-image: url("/assets/images/bg-minus.png"); }

		.accordion h5 a:link,
		.accordion h5 a:visited {
			display: inline-block;
			clear: both;
			}

			.accordion h5 a:hover { color: #ccc; }

			.accordion h5.ui-accordion-header-active a:link,
			.accordion h5.ui-accordion-header-active a:visited {
  			color: rgba(100,176,186,1) !important;
  			}

	.accordion article {
		overflow: hidden;
		clear: both;
		margin-top: 1.61em;
		padding-left: 20px;
		}

/* -------------------------------------------------------------
  Lightbox
------------------------------------------------------------- */

.lightbox-set {
  display: flex;
  flex-wrap: wrap;
  }

  .lightbox-set a {
    width: calc(25%);
    margin: 0 0 1em 0;
    text-align: center;
    border-bottom-right-radius: 20px;
    }

  .lightbox-set a:hover {
    background: rgba(100,176,186,1);
    box-shadow: 0 30px 40px rgba(0,0,0,.5);
    }

  .lightbox-set a p {
    margin: .5em 0 0 0;
    font-weight: 400;
    }

    .lightbox-set a:hover p { color: #444; }

  .lightbox-set a:hover img { filter: grayscale(1); }

.ajax-popup {
	background: #fff;
	width: 80%;
	max-width: 1280px;
	position: relative;
	overflow: hidden;
	margin: 2em auto;
	padding: 3em;
	text-align: left;
	box-shadow: 0 0 20px rgba(0,0,0,.75);
	}

	.ajax-popup.welcome-video-wrapper {
  	background: #000;
  	max-width: 80%;
  	padding: 0;
  	border-radius: 0;
    }

    .ajax-popup.welcome-video-wrapper .embed-container {
      max-width: 100%;
      height: 0;
      padding-bottom: 56.25%;
      overflow: hidden;
      position: relative;
      }

      .ajax-popup.welcome-video-wrapper .embed-container iframe,
      .ajax-popup.welcome-video-wrapper .embed-container object,
      .ajax-popup.welcome-video-wrapper .embed-container embed {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        }

/* -------------------------------------------------------------

  Layout Settings - Default

------------------------------------------------------------- */

span.anchor {
  clear: both;
	display: block;
	visibility: hidden;
	height: 90px;
	margin-top: -90px;
	}

.wrapper {
  padding: 0;
  overflow: auto;
  }

header {
	background: rgba(255,255,255,1);
	width: 100%;
	height: 90px;
	position: fixed;
	top: 0;
	z-index: 10;
	}

	header .plc {
  	max-width: 1320px;
  	height: 100%;
  	margin: 0 auto;
    padding-bottom: 1rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
  	}

  	header .header-logo { max-width: 16.66666667%; }
  	
  	header .header-logo img:hover { opacity: .50; }

  	header .header-nav { width: auto; }

	header.scrolled {
  	background: rgba(255,255,255,.9);
  	box-shadow: 0 0 10px rgba(0,0,0,0.3);
  	}

  nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    position: relative;
    }

    nav ul li {
      list-style: none;
      height: 30px;
      margin-left: 1px;
      padding-left: 0;
      position: relative; /* Push Submenu ULs below */
      font-size: 16px;
      white-space: nowrap;
      }

    nav ul li a:link,
    nav ul li a:visited {
      padding: .5em;
      color: #666;
      font-weight: 400;
      }

      nav ul li a.current:link,
      nav ul li a.current:visited {
        background: rgba(100,176,186,1);
        color: #fff;
        }

      nav ul li a:hover,
      nav ul li:hover a,
      nav ul li a.current:hover,
      nav ul li:hover a.current {
        background: rgba(199,32,53,1);
        color: #fff;
        }

        nav ul li.dropdown:hover a { border-bottom: 1px solid rgba(199,32,53,1); }

/* Sub-Menus  */

nav ul li ul {
  background: rgba(199,32,53,1);
  width: auto;
	margin: 0;
	padding: 0;
	box-shadow: 0 8px 10px rgba(0,0,0,.2);
	list-style: none;
	position: absolute;
	z-index: 10;
	top: 32px; /* Positioning: Calculate with top level horizontal list height */
	overflow: auto;
	}

	nav ul ul ul {
		top: 0;
		left: 100%; /* Position the sub menus to right */
		}

		nav ul li.align-right ul {
  		text-align: right;
  		right: 0; /* Position dropdown to be right-aligned */
  		}

		nav ul li ul li {
  		height: auto;
  		display: block;
			float: none; /* Appear below the previous one. */
			margin: 0;
			padding: 0;
			font-size: 1em;
			}

			nav ul li ul li a:link,
			nav ul li ul li a:visited {
				display: block;
				float: none;
				margin: 0;
				padding: 10px 12px;
				color: #fff;
				}

			nav ul li ul li a:hover {
				background: rgba(0,0,0,.35) !important;
				color: #fff;
				}

/* Overrides for Free Consultation item */

nav ul li.consult ul { background: rgba(100,176,186,1); }

  nav ul li.consult ul li a:link,
  nav ul li.consult ul li a:visited {
 	  background: rgba(100,176,186,1);
    }

    nav ul li.consult > a:link,
    nav ul li.consult > a:visited {
      background: rgba(199,32,53,1);
      padding: .5em;
      border-bottom: none;
      color: #fff;
      }

      nav ul li.consult > a:hover,
      nav ul li.consult:hover > a,
      nav ul li.consult > a.current {
        background: rgba(100,176,186,1);
        }

      nav ul li.consult:hover a { border-bottom: 1px solid rgba(100,176,186,1); }

/* Drop-Downs */

nav ul ul,
nav ul li:hover ul ul,
nav ul ul li:hover ul ul { /* Hide all the dropdowns (submenus) */
  visibility: hidden;
	display: block;
	opacity: 0;
	transition: all .2s ease-out;
	}

nav ul li:hover ul,
nav ul ul li:hover ul ,
nav ul ul li ul li:hover ul { /* Display the submenus only when li are hovered */
  visibility: visible;
	display: block;
	opacity: 1;
	transition: all .2s ease-out;
	}

  nav .dropdown i { margin-left: .5em; }

  nav .shop i:first-of-type { margin-left: 0; }

  .nav-up { top: -100px; }

  a.logo-m,
  a.open-btn,
  a.close-btn { /* Hide responsive navigation controls on large resolution */
    display: none;
    }

.contents {
  width: 100%;
  background: #fff;
	margin: 0 auto;
	padding: 0 0 50px 0;
	overflow: hidden;
	}

	.contents.home { padding-bottom: 0; }

	.col-1,
	.col-2,
	.col-3,
	.col-4,
	.col-5,
	.col-6,
	.col-7,
	.col-8,
	.col-9,
	.col-10,
	.col-11,
	.col-1-4,
	.col-1-3,
	.col-1-2,
	.col-2-3,
	.col-3-4,
	.col-half {
		float: left;
		}

  /* Note: When nested, all column widths are counted relative to parent element */

  .col-1 { width: 8.333333%; }

  .col-2 { width: 16.66666667%; }

  .col-3,
  .col-1-4 {
    width: 25%;
    }

  .col-4,
  .col-1-3 {
    width: 33.33333333%;
    }

  .col-5 { width: 41.666665%; }

  .col-6,
  .col-1-2,
  .col-half {
    width: 50%;
    }

  .col-7 { width: 58.333333%; }

  .col-8,
  .col-2-3 {
    width: 66.666667%;
    }

  .col-9,
  .col-3-4 {
    width: 75%;
    }

  .col-10 { width: 83.333333%; }

  .col-11 { width: 91.666667%; }

  .col-12,
  .col-full {
    clear: both;
    width: 100%;
    max-width: 1320px;
    margin: auto;
    }

  .spacer { content: ' '; }

footer {
	clear: both;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 150px;
	overflow: hidden;
	}

	footer .plc {
  	max-width: 1320px;
  	margin: 0 auto;
  	overflow: auto;
		}

  footer h5 { color: #fff; }

  footer a:link,
  footer a:visited {
    color: #fff;
    font-weight: normal;
    }

    footer a:hover { opacity: .5; }

  footer .events { background: #6e7071; }

    ul.events-list {
      display: table;
      width: 100%;
      margin: 0;
      padding: 0;
      }

      ul.events-list li {
        background: rgba(255,255,255,.15);
        display: table-row;
        width: 100%;
        list-style: none;
        overflow: auto;
        }

        ul.events-list li time {
          background: rgba(100,176,186,1);
          display: table-cell;
          min-width: 140px;
          padding: .5em 1em;
          border-bottom: 1px solid #6e7071;
          }

        ul.events-list li span {
          display: table-cell;
          width: 100%;
          padding: .5em 1em;
          border-bottom: 1px solid #6e7071;
          }

          ul.events-list li a:hover { opacity: 1; }

          ul.events-list li a:hover time { background: rgba(199,32,53,1); }

          ul.events-list li a:hover span { background: rgba(0,0,0,.5); }

  footer .contact { color: #fff; }

    footer .contact .plc {
      display: flex;
      margin-bottom: 1.61em;
      padding-bottom: 1.61em;
      border-bottom: 1px solid rgba(255,255,255,.5);
      }

      footer .contact .plc .logo {
        align-self: flex-end;
        text-align: right;
        }

    footer .contact p { margin: 0; }

    footer .contact i { margin-right: .25em; }

  footer .copyright {
    color: #fff;
    font-size: .75em;
    }

    footer .tertiary-links ul {
      padding: 0;
      display: flex;
      justify-content: flex-end;
      }

        footer .tertiary-links ul li {
          margin-right: 1em;
          padding-left: 0;
          list-style: none;
          }

          footer .tertiary-links ul li:last-of-type { margin-right: 0 !important; }

    footer .copyright a:link,
    footer .copyright a:visited {
      font-weight: 700;
      }

.table-wrapper {
  min-width: 100%;
  overflow: auto;
  }

/* -------------------------------------------------------------

  Section Specifics

------------------------------------------------------------- */

.title-wrapper {
  background: rgba(100,176,186,.2);
  margin-bottom: 0;
  }

  h2.title {
    width: 100%;
    margin-bottom: .25em;
    padding-top: 3.2em;
    font-size: 4.8em;
    font-weight: 100;
    letter-spacing: -0.025em;
    }

  h2.title span {
    color: #6e7071;
    font-weight: 200;
    }

h2 i {
  margin-right: .25em;
  opacity: .5;
  }

p.preface {
  color: #6e7071;
  font-size: 2em;
  font-weight: 200;
  }

/* -------------------------------------------------------------
  Homepage
------------------------------------------------------------- */

.section-wrapper.team {
  background: url("/assets/images/graphic-home-bg-team.jpg") no-repeat;
  background-size: cover;
  }

.section-wrapper.advise {
  background: rgba(199,32,53,.05);
  overflow: auto;
  }

  .section-wrapper.bschool-content img {
    width: auto;
    max-width: 250px;
    height: auto;
    margin: 1em;
    }

.home-block {
  display: flex;
  align-items: center;
  }

  .home-block p:last-of-type { margin: 0; }

/* -------------------------------------------------------------
  Who We Are
------------------------------------------------------------- */

.about.hero {
  background: url("../images/about-hero.jpg") center center no-repeat;
  background-size: cover;
/*  height: 480px;*/
  display: flex;
  padding-top: 38.33%;
  margin-bottom: 2em;
  justify-content: center;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  }

  .about.hero h3 {
    margin: 0;
    margin-top: -38.33%;
    color: #fff;
    font-size: 4em;
    font-weight: 100;
    text-align: center;
    line-height: 1.2em;
    }

.about.primary.first {
  background: rgba(199,32,53,.05);
}

.about.primary .plc,
.about.secondary .plc {
  width: 80%;
  margin: 0 auto;
  text-align: center;
  }

.about.infographics {
  background: rgba(110,112,113,.125);
  margin-bottom: 20px;
  padding-bottom: 20px;
  color: #fff;
  }

  .about.infographics h3 { text-align: center; }

  .about.infographics ul {
    margin: 3em 0 0 0;
    padding: 0;
    font-size: 1.6em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    }

    .about.infographics ul li {
      display: block;
      width: 25%;
      margin-bottom: 30px;
      padding: 1em;
      list-style: none;
      }

.about.coverage {
  background: #fff;
  margin-bottom: 20px;
  padding-top: 0;
  padding-bottom: 20px;
  }

  .about.coverage ul {
    margin: 0;
    padding: 0;
    color: rgba(100,176,186,1);
    font-size: 1.8em;
    font-weight: normal;
    line-height: 2.4em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
    }

    .about.coverage ul li {
      display: block;
      background-size: contain;
      width: 33.33333333%;
      margin-bottom: 10px;
      list-style: none;
      text-align: center;
      }

      .about.coverage h5 { font-size: 1em; }

      .about.coverage ul li img {
        max-width: 80%;
        margin: 15px 0;
        }

/* -------------------------------------------------------------
  Who We Are - Client Profiles
------------------------------------------------------------- */

.challenge-block {
  display: inline-block;
  overflow: hidden;
  background: #f0f0f0;
  margin-left: 20px;
  margin-bottom: 4em;
  padding: 2em 2em 0 2em;
  }

  .challenge-block h4 {
    font-size: 2.7em;
    line-height: 1.2em;
    }

  .challenge-block .result {
    background: rgba(199,32,53,1) url("../images/bg-challenge.svg") right 2em center no-repeat;
    background-size: 48px 48px;
    margin: 0 -2em;
    padding: 1em 90px 2em 2em;
    color: #fff;
    }

    .challenge-block .result p { margin: 0; }

  table.challenge td {
    display: table-cell;
    background: #fff;
    padding: .5em .75em;
    border-bottom: 1px solid #eee;
    }

    table.challenge td:first-child {
      background: rgba(100,176,186,1);
      width: 150px;
      color: #fff;
      white-space: nowrap;
      }

/* -------------------------------------------------------------
  Who We Are - Team
------------------------------------------------------------- */

.team-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 1.7em;
  }

	.team-list a:link,
	.team-list a:visited {
  	width: 20%;
  	padding: 1em;
		text-align: center;
		}

		.team-list a img {
			width: 100%;
			margin-bottom: 5px;
			-webkit-filter: grayscale(100%);
      filter: grayscale(100%);
			}

			.team-list a:hover {
  			background: rgba(199,32,53,1);
  			color: #fff;
  			box-shadow: 0 1em 2em rgba(0,0,0,.35);
  			}

			.team-list a:hover img {
				-webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
        filter: grayscale(0%);
				}

.team-select .team-list a {
	width: 12.5%;
	font-size: .8em;
	line-height: 1.5em;
	}

	.team-select .team-list a img { width: 100%; }

.video-wrapper {
  margin-bottom: 3.22em;
  border: 1.5em solid #eee;
  }

  .embed-container {
    max-width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    position: relative;
    }

    .embed-container iframe,
    .embed-container object,
    .embed-container embed {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      }

.consultant-profile h3 { margin: 0; }

.consultant-profile h4 { color: rgba(100,176,186,1); }

.consultant-testimonial blockquote { margin-bottom: 0; }

/* -------------------------------------------------------------
  Who We Are - Testimonials
------------------------------------------------------------- */

.testimonial.list ul {
  columns: 4;
  column-gap: 1.61em;
  }

.testimonial-wrap {
  columns: 2;
  column-gap: 1.61em;
  }

  .testimonial-block {
    margin: 0 0 1.61em 0;
    display: inline-block;
    width: 100%;
    }

  .testimonial-block blockquote { margin: 0; }

  .testimonial-block:nth-child(even) blockquote { background-color: rgba(100,176,186,.075); }

/* -------------------------------------------------------------
  Who We Are - News
------------------------------------------------------------- */

.news.list h3 { margin: 0; }

.news.list time { color: rgba(100,176,186,1); }

  .news.list time::before {
  	content: "\f133";
  	color: #999;
  	font-family: 'Font Awesome 5 Pro';
  	font-weight: 300;
  	-webkit-font-smoothing: antialiased;
  	margin-right: .5em;
    }

.news.list {
  columns: 2;
  column-gap: 4em;
  }

  .news-block {
    background: rgba(110,112,113,.05);
    display: inline-block;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 3em;
    padding: 2em 2em 0 2em;
    }

    .news-block:nth-child(even) { background: #fff; }

/* -------------------------------------------------------------
  Who We Are - FAQ
------------------------------------------------------------- */

.faq-block {
  margin-bottom: 1.61em;
  overflow: auto;
  }

.faq-block .answer {
  padding-bottom: 0;
  border-left: 1px dotted #ccc;
  }

/* -------------------------------------------------------------
  Who We Are - Contact Us
------------------------------------------------------------- */

.section-wrapper.contact {
  display: flex;
  flex-wrap: wrap;
  }

.contact-method {
  width: 25%;
	border: 1px solid #fff;
	font-weight: bold;
	text-align: center;
	}

	.contact-method i { margin-bottom: 30px; }

	.contact-method a:link,
	.contact-method a:visited {
  	display: block;
  	padding: 1.5em;
  	}

  	.contact-method a svg {
    	width: 85%;
    	height: 85%;
    	margin-bottom: 1em;
    	}

		.contact-method a:hover svg circle { fill: rgba(100,176,186,1); }

/* -------------------------------------------------------------
  Resources
------------------------------------------------------------- */

.resource-block {
  margin-top: 3em;
  margin-bottom: 3em;
  padding-top: 2em;
  border-top: 1px solid rgba(100,176,186,.5);
  overflow: hidden;
  }

  .resource-block:last-of-type { border-bottom: none; }

.free-downloads {
  overflow: hidden;
  margin-bottom: 25px;
  }

	.free-downloads img {
		float: left;
		width: auto;
		height: 215px;
		margin: 0 10px 10px 0;
		border: 1px solid #eee;
		}

		.free-downloads a:hover img {
			-webkit-filter: grayscale(100%);
      filter: grayscale(100%);
			border-color: #21b2e7;
			}

	.logo-row img { margin: 0 1.5em 1.5em 0; }

	  .logo-row a:hover { opacity: .5; }

.resources.list .events-list li { background: #999; }

.resources.list .events-list time { border-bottom: 1px solid #fff; }

.resources.list .events-list span { border-bottom: 1px solid #fff; }

  .resources.list .events-list li a {
    color: #fff;
    font-weight: normal;
    }

/* -------------------------------------------------------------
  Resources - Application Deadlines
------------------------------------------------------------- */

table.deadlines { width: 100%; }

	table.deadlines thead tr td {
		background: #999 !important;
		border-bottom: none;
		color: #fff;
		font-weight: 700;
		text-align: center;
		vertical-align: middle;
		}

		table.deadlines thead tr:first-child td:first-child { text-align: left; }

		table.deadlines thead tr td.notification { background: #eee !important; }

	table.deadlines tr td {
		display: table-cell;
		padding: .5em 0.75em;
		border-bottom: 1px solid #eee;
		}

		table.deadlines tr:last-of-type td { border-bottom: none; }

		table.deadlines tr:nth-child(even) td { background: #eee; }

		table.deadlines tr td.notification {
  		background: none;
  		color: #999;
  		}

  		table.deadlines tr:nth-child(even) td.notification { background: #eee; }

		table.deadlines tr td.early {
			background: rgba(199,32,53,1);
			color: #fff;
			}

		table.deadlines tr td.final {
			background: rgba(100,176,186,1);
			color: #fff;
			}

	table.deadlines tbody tr td { text-align: center; }

		table.deadlines tbody tr td:first-child { text-align: left; }

span.key {
	width: .75em;
	height: .75em;
	display: inline-block;
	margin-right: .5em;
  }

  span.key.early { background: rgba(199,32,53,1); }

  span.key.final { background: rgba(100,176,186,1); }

/* -------------------------------------------------------------
  Affirm
------------------------------------------------------------- */

.affirm.hero { background: rgba(199,32,53,1); }

  .affirm.hero img { margin-bottom: 1.61em; }

  .affirm.hero h3 { color: #fff; }

.affirm.how-it-works {
  background: #f0f0f0;
  overflow: hidden;
  }

  .affirm.how-it-works .how-it-works-wrap {
    display: flex;
    flex-wrap: wrap;
    }

  .affirm.how-it-works .how-it-works-block {
    width: 25%;
    padding: 2em 2em 0 2em;
    }

  .affirm.how-it-works h4 {
    margin: 0;
    font-weight: 700;
    }

  .affirm.how-it-works img { max-width: 80%; }

/* -------------------------------------------------------------
  Corporate Partnerships
------------------------------------------------------------- */

.corporate-partnerships-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  }

  .corporate-partnerships-logos li {
    width: 16.66666667%;
    padding: 1.5em !important;
    text-align: center;
    }

    .corporate-partnerships-logos li img {
      max-width: 100%;
      height: auto;
      }

/* -------------------------------------------------------------
  Blog
------------------------------------------------------------- */

.post {
	margin-bottom: 3.22em;
	padding-bottom: 2rem;
	border-bottom: 1px solid rgba(100,176,186,.5);
	}

	.post.single {
  	margin-bottom: 1.61em;
  	border-bottom: none;
  	}

  .post h3 { margin-bottom: 0; }

    .post p time { color: #64b0ba; }

      .post p time i {
        margin-right: .5em;
        color: #999;
        }
        
  .post img { height: auto; }

	.post img[align=left],
	.post .alignleft {
		float: left;
		margin: 0 1.5em 1.5em 0;
		pointer-events: none;
		}

	.post img[align=right],
	.post .alignright {
		float: right;
		margin: 0 0 1.5em 1.5em;
		pointer-events: none;
		}

	.post cite {
		color: #64b0ba;
		font-style: italic;
		font-weight: normal;
		}

		.post cite:before { content: '— '; }

	.post .meta {
		clear: both;
		font-size: 0.8em;
		}

    .post .meta i { margin-right: .5em; }

		.post .meta p {
			display: inline-block;
			margin: 0 0 3px 0;
			}

		.post .meta a:link,
		.post .meta a:visited {
			display: inline-block;
			background: #eee;
			margin-bottom: 3px;
			padding: .25em .5em;
			color: #333;
			}

			.post .meta a:hover {
				background: #c42339;
				color: #fff;
				}

			.post .meta .tags {
				clear: both;
				display: block;
				margin-bottom: 1.61em;
				}

				.post .meta .tags a:link,
				.post .meta .tags a:visited {
  				color: #999;
  				}

					.post .meta .tags a:link:hover { color: #fff; }

    .post .meta .category { display: block; }

      .post .meta .category a::before {
        display: inline !important;
      	margin-right: .5em;
      	border-top: none !important;
        content: '\f02b ' !important;
      	color: #999;
        font-family: 'Font Awesome 5 Pro' !important;
        font-weight: 300 !important;
        }

        .post .meta .category a:hover::before { color: #fff; }

    .post .meta .comments { display: none; }

		.post a.more-link:link,
		.post a.more-link:visited {
			background: #c42339;
			display: inline-block;
			margin-bottom: 3px;
			padding: 3px 10px;
			color: #fff;
			font-weight: normal;
			}

			.post a.more-link:hover {
  			background: #64b0ba;
				box-shadow: 0 10px 20px rgba(0,0,0,.5);
  			}

		.post a.read-more:link,
		.post a.read-more:visited {
			background: #c42339;
			display: inline-block;
			padding: 0 .5em;
			color: #fff;
			font-weight: normal;
			}

			.post a.read-more:hover {
  			background: #64b0ba;
				box-shadow: 0 5px 10px rgba(0,0,0,.5);
  			}

.wp-caption {}

  .wp-caption.alignright {
    margin-left: 3rem;
  }

  .wp-caption.alignleft {
    margin-right: 3rem;
  }
  
  .wp-caption a {
    pointer-events: none;
    }

.wp-caption-text {
  margin-top: .5em;
  color: #666;
  font-size: 1.4em;
  font-style: italic;
  }

.blog-nav {
	margin-bottom: 1.61em;
	font-size: 1.7em;
	line-height: 1.61em;
	}

	.blog-nav.bottom { 
  	margin-bottom: none;
  	border: none; 
  	}

	.entry-prev {
		width: calc(50% - 1em);
		float: left;
		}

	.entry-next {
		width: calc(50% - 1em);
		float: right;
		text-align: right;
		}

		.blog-nav .entry-prev span,
		.blog-nav .entry-next span {
			display: block;
			padding-bottom: .25em;
			color: #fff;
			font-weight: bold;
			}

      .blog-nav .entry-prev span { padding-left: 1.25em; }

      .blog-nav .entry-next span { padding-right: 1.25em;	}

		.blog-nav a:link,
		.blog-nav a:visited {
			background: #c42339;
			display: inline-block;
			padding: .5em 1em;
			color: #fff;
			font-weight: normal;
			}

			.blog-nav a:hover {
  			background: #64b0ba;
				box-shadow: 0 10px 20px rgba(0,0,0,.5);
				}

.blog-ad {
	background: #fafafa;
	margin-bottom: 6em;
	padding: 1.5em;
	text-align: center;
	}

	.blog-ad img { width: 100%; }

.blog-sidebar h4 {
	color: #64b0ba;
	font-size: 2em;
  }

.blog-sidebar .events-list li {
	background: #999;
	color: #fff;
  }

  .blog-sidebar .events-list li a {
    color: #fff !important;
    font-weight: normal;
    }

.blog-sidebar .events-list time,
.blog-sidebar .events-list span {
  border-bottom: 1px solid #fff;
  }

h4#respond { margin-bottom: 5px; }

img#wpstats { display: none; }

#searchform input[type="text"] {
	width: calc(100% - 48px);
	padding: .75em;
  }

#searchform button {
	width: 48px;
	padding: .75em;
	font-size: 1em;
  }

  #searchform button i { margin: 0; }

.sharedaddy h3 { font-size: 1.7em !important; }

.sharedaddy .sd-title::before {
  display: inline !important;
	margin-right: .5em;
	border-top: none !important;
  content: '\f1e1 ' !important;
	color: #999;
  font-family: 'Font Awesome 5 Pro' !important;
  font-weight: 300 !important;
  }

/* -------------------------------------------------------------
  Shop
------------------------------------------------------------- */

span.count {
  background: #c42339;
  padding: 0 .5em;
  color: #fff;
  font-weight: 700;
  }

#cart-animation {
  background: #c42339 !important;
  display: none;
  width: 48px;
  height: 48px;
  border: 1px solid #c42339;
  border-radius: 50% 50% 50% 50%;
  box-shadow: 0 0 10px rgba(0,0,0,.25);
  color: #fff !important;
  font-size: 16px;
  font-weight: bold;
  line-height: 48px;
  text-align: center;
  position: absolute;
  z-index: 10000;
  }

/* Collection Page */

.collection-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  }

	.collection-block:link,
	.collection-block:visited {
  	display: block;
    width: 25%;
    padding: 1.5em;
    font-weight: bold;
    text-align: center;
    }

  	.collection-block img {
      display: block;
      width: 85%;
      height: auto;
      margin: 0 auto;
      margin-bottom: 1em;
      }

			.collection-block:hover img { opacity: .5; }

	.item-block:link,
	.item-block:visited {
	  background: #f0f0f0;
	  width: calc(50% - 2rem);
	  margin: 0 1rem 2rem 1rem;
	  padding: 2rem;
	  position: relative;
	  }

		.item-block:hover { background: #c42339; }

		.item-block h3 { font-size: 2.2em; }

		.item-block img { 
  		margin-bottom: 1em; 
  		}

		.item-block .item-price {
  		background: #c42339;
  		display: inline-block;
  		margin: 0;
  		padding: 0 .5em;
  		color: #fff;
  		}

			.item-block .item-price i { margin-right: .25em; }

		.item-block:hover h3 { color: #fff; }

		.item-block:hover .item-price {
  		background: #64b0ba;
  		color: #fff;
  		}

/* Single Product Page */

#buy {
  background: #f0f0f0;
  padding: 2rem;
  }

#product-price {
  color: #c42339;
  font-size: 3.6em;
  font-weight: 700;
  }

  #product-price::before {
    content: '\f02b ';
    margin-right: .5em;
    opacity: 1;
    color: #999;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 300;
    }

.product-image {
  width: 100%;
  margin: none;
  text-align: center;
  }

  .product-image img {
    width: 100%;
    height: auto;
    margin: 0 auto;
    box-shadow: 0 10px 20px rgba(0,0,0,.25);
    }

.buyNow { float: right; }

.add-to-cart {
  width: 100%;
  padding: .5em .125em !important;
  font-size: 2.4em !important;
  text-align: center;
  white-space: nowrap;
  }

  .add-to-cart i {
    margin: 0 .5em 0 0 !important;
    padding: 0;
    }

.affirm-as-low-as:hover {
  color: #444;
  opacity: 1 !important;
  }

.affirm-get-started {
  display: inline-block;
  float: none;
  width: 145px;
  clear: left;
  text-align: center;
  }

.affirm-text-block {
  width: calc(100% - 145px - .5em);
  float: left;
  }

.get-started {
  background: #c42339;
  color: #fff;
  margin-bottom: 1px;
  padding: 0 .75em;
  font-weight: normal;
  }

	.get-started:hover {
    background: rgba(100,176,186,1);
    box-shadow: 0 5px 10px rgba(0,0,0,.5);
	  }

    .get-started::before {
      content: '\f217 ';
      margin-right: .5em;
      opacity: 1;
      color: #fff;
      font-family: 'Font Awesome 5 Pro';
      font-weight: 300;
      }

.item_format {
  background: #f0f0f0;
  display: inline-block;
  padding: .25em .5em;
  }

  .item_format::before {
    content: '\f1c1 ';
    margin-right: .5em;
    color: #c42339;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 300;
    }

.product-group {
  background: #eee;
  margin-bottom: 1.5em;
	padding: 2em;
	}

  .product-group h4 {
    color: #444;
    font-weight: 700;
    }

table.product-variants {
  width: 100%;
  border-top: 1px solid #ddd;
  }

  table.product-variants td {
    padding: .5em 0;
    border-bottom: 1px solid #ddd;
    }

    table.product-variants td.name { padding-right: 1em; }

    table.product-variants td.price {
      padding-right: 1em;
      color: rgba(199,32,53,1);
      font-weight: 700;
      text-align: right;
      }

    table.product-variants td.button { 
      width: 150px;
      text-align: right;
      }

@media only screen and (min-width: 319px) and (max-width: 639px) {

table.product-variants tr {
  display: flex;
  flex-wrap: wrap; 
  justify-content: space-between;
  border-bottom: 1px solid #ddd;
  }
  
table.product-variants td { border: none; }
  
  table.product-variants td.name {
    width: 100%;
    padding-bottom: 0;
    }
  
table.product-variants td.price { text-align: left; }
  
table.product-variants td.button { width: auto; }
  
}

/* Shopping Cart */

.noscript-checkout span {
  display: block;
  background: red;
  margin-bottom: 1.61em;
  color: #fff;
  font-size: 2.2em;
  text-align: center;
  }

.shopping-cart-wrapper { overflow-x: auto !important; }

table.cart {
  width: 100%;
  min-width: 640px;
  margin-bottom: 0;
  }

  table.cart th,
  table.cart td {
    background: #f0f0f0;
    padding: .5em 1em;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    }

    table.cart th {
      background: #666;
      color: #fff;
      font-weight: 700;
      text-align: left;
      }

    table.cart .price,
    table.cart .quantity,
    table.cart .total {
      text-align: right !important;
      white-space: nowrap;
	    }
	    
    table.cart .total { 
      border-right: none;
      font-weight: bold;
      }

    table.cart td.remove {
      padding-right: 0 !important;
      border-right: none;
      text-align: center;
      }
      
      table.cart td.remove a:link,
      table.cart td.remove a:visited {
        background: #c42339;
        color: #fff;
        padding: .25em .5em;
        }
        
        table.cart td.remove a:hover {
          background: #64b0ba;
          }

      table.cart .quantity input {
        background: #fff;
        width: 40px !important;
        padding: .25em;
        text-align: right;
        }

.grand-total {
  margin-top: 1.61em;
  margin-bottom: 1.61em;
  font-size: 2.4em;
  text-align: right;
  }

	.grand-total span {
    background: #c42339;
    margin-left: .25em;
    padding: .25em .5em;
    color: #fff;
    font-weight: bold;
    }

  .grand-total i {
    margin-right: .25em;
    color: #999;
    }

label.login {
  display: inline-block;
  width: 120px;
  }
  
#customer input,
#recover-password input,
#create-account input,
.customer_address_table input {
  width: auto;
  margin-bottom: 5px;
  }

.forgot-cancel {
  display: inline-block;
  white-space: nowrap;
  }

div.errors {
  display: inline-block;
  background: red;
  margin: 0 0 1.61em 0;
  padding: .5em 1em;
  color: #fff;
  }

div.errors ul {
  margin: 0;
  padding: 0;
  }

div.errors ul li {
  list-style-type: none;
  padding: 0;
  }

div.errors ul li a:link, div.errors ul li a:visited {
  color: #fff;
  text-decoration: underline;
  }

div.errors ul li a:hover { color: #eaeaea; }

table.account-summary i { margin-right: .5em; }

.address {
  width: 100%;
  display: inline-block;
  background: #f0f0f0;
  overflow: hidden;
  border-bottom: 1em solid #ccc;
  }

  .address .default {
    background: rgba(100,176,186,1);
    padding: .25em;
    color: #fff;
    font-size: 0.6em;
    }

.edit_address {
  background: #fff;
  margin-top: 1.61em;
  }

.customer_address_table { max-width: 100% !important; }

  .customer_address_table input { max-width: 100% !important; }

.customer_address_table .label {
  min-width: 120px;
  white-space: nowrap;
  }

.consultants-list label {
  color: #c42339;
  font-weight: 700;
  }

/* -------------------------------------------------------------
  Contract
------------------------------------------------------------- */

body.contract {
	background: #fff;
	border-top: 10px solid rgba(199,32,53,1);
	}
	
	body.contract h1,
	body.contract h2 {
		margin-bottom: 1.61em;
		font-size: 2em;
		}

	body.contract h3 {
		font-size: 1.8em;
		text-decoration: underline;
		}

	body.contract table.services { width: auto; }

	body.contract p.float {
		float: left;
		margin-right: 20px;
		}

	body.contract p.clear { clear: both; }

	.contract-wrap {
		min-width: 320px;
		max-width: 960px;
		margin: 1.61em auto;
		padding: 1.61em;
		}

table.services {
	width: 100%;
	background: #eee;
	}

	table.services td,
	table.services th {
		padding: 15px;
		border-bottom: 1px solid #fff;
		vertical-align: middle;
		}

		table.services th {
			background: #666;
			color: #fff;
			font-weight: bold;
			}

table.contract td { text-align: center; }

	table.contract.full { width: 100% !important; }

/* For Shopify contract use only */

body.contract.shopify { border-top: none !important; }

.confirm-terms-of-service-panel { 
  background: #c42339;
  width: 80%;
  margin-left: -40%;
  padding: 1em;
  color: #fff;
  font-size: 2em;
  text-align: center;
  position: fixed;
  right: 0;
  bottom: 2em;
  left: 50%;
  cursor: pointer;
  box-shadow: 0 10px 20px rgba(0,0,0,.5);
  }

  .confirm-terms-of-service-panel:hover { background-color: #64b0ba; }

/* -------------------------------------------------------------

  Animations

------------------------------------------------------------- */

a, input, header, button, i, svg, svg *, time, span, img, .get-started, .confirm-terms-of-service-panel { /* general animation */
	-webkit-transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
	}

@-webkit-keyframes fadeIn {
	0% {
  	opacity: 0;
  	-webkit-transform: translateY(5em);
  	}
	100% {
  	opacity: 1;
  	-webkit-transform: translateY(0);
  	}
	}
@-moz-keyframes fadeIn {
	0% {
  	opacity: 0;
  	-moz-transform: translateY(5em);
  	}
	100% {
  	opacity: 1;
  	-moz-transform: translateY(0);
  	}
	}
@-o-keyframes fadeIn {
	0% {
  	opacity: 0;
  	-o-transform: translateY(5em);
  	}
	100% {
  	opacity: 1;
  	-o-transform: translateY(0);
  	}
	}
@keyframes fadeIn {
	0% {
  	opacity: 0;
  	transform: translateY(5em);
  	}
	100% {
  	opacity: 1;
  	transform: translateY(0);
  	}
	}

.an-fader-1,
.an-fader-2,
.an-fader-3,
.an-fader-4 {
  opacity: 0;
  -webkit-animation: fadeIn .5s forwards;
	-moz-animation: fadeIn .5s forwards;
	-o-animation: fadeIn .5s forwards;
	animation: fadeIn .5s forwards;
	}

.an-fader-1 { animation-delay: .5s; }
.an-fader-2 { animation-delay: .75s; }
.an-fader-3 { animation-delay: 1s; }
.an-fader-4 { animation-delay: 1.25s; }

/* -------------------------------------------------------------

  Media Queries

------------------------------------------------------------- */

@media only screen and (min-height: 1px) and (max-height: 500px) {
  
  .video-background {
    background: #fff url("../images/graphic-home-video.jpg");
    background-size: cover;
    background-position: center center;
    }
    
  .video-background iframe { display: none !important; }

  }

@media only screen and (min-width: 1px) and (max-width: 639px) {

  .video-background {
    background: #fff url("../images/graphic-home-video.jpg");
    background-size: cover;
    background-position: center center;
    }

  .video-background iframe { display: none !important; }

  }

/* -------------------------------------------------------------
  media-query-320-1023 (Settings for Responsive Menu)
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 1023px) {

a.open-btn:link,
a.open-btn:visited {
  display: block;
  width: 48px;
  height: 48px;
  font-size: 32px;
  text-align: center;
  padding-top: 8px;
  position: absolute;
  top: 0;
  right: 0;
  }

  a.open-btn:hover {
    background: rgba(100,176,186,1);
    color: #fff;
    }

a.close-btn:link,
a.close-btn:visited {
  background: #eee;
  display: block;
  width: 48px;
  height: 48px;
  padding: 8px;
  color: #999;
  font-size: 32px;
  line-height: 32px;
  text-align: center;
  position: absolute;
  top: 10px;
  right: 0;
  }

  a.close-btn:hover {
    background: rgba(0,0,0,.3) !important;
    color: #fff !important;
    }

/* Responsive Menu Overlay */

.overlay {
  background-color: #fafafa;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  position: fixed;
  top: 0;
  right: -100%;
  z-index: 1000000000;
  transition: 0.3s;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  }

.overlay-wrapper {
  width: 100%;
  height: auto;
  min-height: 100%;
  }

nav ul {
  width: 100%;
  flex-direction: column;
  padding: 0 0 100px 0;
  font-size: 2.4em;
  }

  nav ul > li {
    height: auto;
    overflow: auto;
    margin-left: 0;
    padding-left: .5em;
    padding-bottom: .5em;
    border-bottom: 1px solid rgba(0,0,0,.1);
    }

    nav ul li a:link,
    nav ul li a:visited {
      color: #666;
      }

      nav ul li a:hover { color: rgba(199,32,53,1) !important; }

      nav ul li:hover a { background: none !important; }

      nav a:hover,
      nav a.current:link,
      nav a.current:visited {
        color: rgba(199,32,53,1) !important;
        background: none !important;
        }

    nav ul li ul { /* Override dropdowns on responsive menu */
      background: none;
      display: block;
      position: relative;
      top: 0;
      box-shadow: none;
      visibility: visible;
      opacity: 1;
      }

      nav ul li ul li {
        margin: 0;
        padding: 0 1em;
        border-bottom: none !important;
        font-size: 16px;
        line-height: 1.4em;
        text-align: left;
        white-space: normal;
        }

        nav ul li ul li a:link,
        nav ul li ul li a:visited {
          display: inline-block;
          color: #666;
	        }

			nav ul li ul li a:hover { background: none !important; }

      nav ul li.dropdown:hover a { border: none; }

nav ul li ul li a br { display: none; }

nav ul li.consult {
  background: rgba(199,32,53,1);
  padding-top: .5em;
  }

  nav ul li.consult ul { background: none; }

  nav ul li.consult ul li a:link,
  nav ul li.consult ul li a:visited {
    background: rgba(199,32,53,1);
    color: #fff;
    }

    nav li.consult a:hover { color: rgba(255,255,255,.5) !important; }

.cta-banner.bottom .plc {
  display: block;
  padding-bottom: 1.5em;
  }

.cta-banner.bottom div.cta-text {
  width: 100%;
  clear: both;
  padding-bottom: 0;
  }

.cta-banner.bottom div.cta-button {
  width: 100% !important;
  clear: both;
  }

footer .copyright .copyright-year { padding-bottom: 0; }

footer .copyright-text {
  width: 100%;
  float: none;
  padding-bottom: 0;
  }

footer .tertiary-links {
  width: 100%;
  float: none;
  padding-top: 0;
  }

footer .tertiary-links ul {
  flex-direction: column;
  justify-content: flex-start;
  }

  footer .tertiary-links ul li { margin-left: 0; }

  .testimonial-wrap { columns: 1; }

} /* End of 320px-1023px Media Query */

/* -------------------------------------------------------------
  media-query-320-479
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 479px) {

.padding { padding: 1.5rem; }

.padding-top { padding-top: 1.5rem; }

.padding-bottom { padding-bottom: 1.5rem; }

.padding-left { padding-left: 1.5rem; }

.padding-right { padding-right: 1.5rem; }

.padding-sides {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  }

.padding-top-bottom {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  }

.padding-double { padding: 3rem; }

.padding-double-top { padding-top: 3rem; }

.padding-double-bottom { padding-bottom: 3rem; }

.padding-double-left { padding-left: 3rem; }

.padding-double-right { padding-right: 3rem; }

.padding-double-sides {
  padding-left: 3rem;
  padding-right: 3rem;
  }

.padding-double-top-bottom {
  padding-top: 3rem;
  padding-bottom: 3rem;
  }

.padding-half { padding: .75rem; }

.padding-half-top { padding-top: .75rem; }

.padding-half-bottom { padding-bottom: .75rem; }

.padding-half-left { padding-left: .75rem; }

.padding-half-right { padding-right: .75rem; }

.padding-half-sides {
  padding-left: .75rem;
  padding-right: .75rem;
  }

.padding-half-top-bottom {
  padding-top: .75rem;
  padding-bottom: .75rem;
  }

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-1-4,
.col-1-3,
.col-1-2,
.col-2-3,
.col-3-4,
.col-full,
.col-half {
	width: 100%;
  float: none;
  }

.ui-tabs .ui-tabs-nav li {
  float: none;
  display: block;
  margin: 0;
  white-space: normal;
  }

.ui-tabs .ui-tabs-nav li a {
  width: 100% !important;
  float: none;
  display: block;
  margin-top: 1px;
  }

.cta-banner.bottom div.cta-button {
  width: 100% !important;
  clear: both;
  font-size: .8em;
  }

header .header-logo { display: none; }

footer .contact .contact-us,
footer .contact .social {
  width: 100%;
  }

.team.video {
  padding-top: 0;
  padding-bottom: 0;
  }

.team.list { padding-top: 0; }

.team-list a { width: 50% !important; }

.testimonial.list ul { columns: 1; }

 .contact-method { width: 100% !important; }

.affirm.how-it-works .how-it-works-block { width: 100%; }

	} /* End of 320px-479px Media Query */

/* -------------------------------------------------------------
  media-query-320-639
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 639px) {

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"] {
  padding-left: .5em;
  padding-right: .5em;
  }

.image-align-left { /* For use with images in paragraphs */
  width: 100%;
  float: none;
  margin-right: 0;
  }

.image-align-right { /* For use with images in paragraphs */
  width: 100%;
  float: none;
  margin-left: 0;
  }

header {
  width: 96px;
  height: 48px !important;
  background: #fff;
  top: 10px;
  right: 0;
  }

  header .plc {
    padding: 0;
    position: relative;
    }

a.logo-m {
  background: #fff;
  display: block;
  width: 48px;
  position: absolute;
  top: 0;
  left: 0;
  }

.hero-full-screen { height: auto; }

  .hero-main h2 { font-size: 5em; }

  .hero-main h3 { font-size: 1.8em; }

  .hero-footer svg { display: none; }

footer .contact .plc { flex-direction: column; }

footer .contact .logo {  text-align: left !important; }

.column-count-2,
.column-count-3,
.column-count-4,
.column-count-5 {
  column-count: 1;
  }

.about.hero { height: 300px; }

.about.primary .plc,
.about.secondary .plc {
  width: 100%;
  text-align: left;
  }

.about.infographics {
  padding: 1em;
  padding-top: 2.5em;
  }

  .about.infographics h3 { text-align: left; }

.about.infographics ul,
.about.coverage ul {
  margin: 0;
  flex-direction: column;
  }

.about.infographics ul li,
.about.coverage ul li {
  width: 100%;
  margin-bottom: 0;
  }

.about.secondary { padding-bottom: 0; }

  .corporate-partnerships-logos li { width: 50%; }

.collection-wrapper { flex-direction: column; }

 .item-block,
 .collection-block {
   width: 100% !important;
   margin: 0 0 2rem 0 !important;
   }

.post img,
.post .alignleft,
.post .alignright {
  width: 100% !important;
  float: none;
  margin: 0 0 1.61em 0;
  }

.entry-prev,
.entry-next {
  width: 100%;
  float: none;
  margin-bottom: 1px;
  }
  
  .blog-nav .entry-prev span,
  .blog-nav .entry-next span {
    padding: 0;
  }

.blog-nav a:link,
.blog-nav a:visited {
  width: 100%;
  text-align: center;
  }


} /* End of 320px-639px Media Query */

/* -------------------------------------------------------------
  media-query-320-767
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 767px) {

h2.title { padding-top: 1em; }

.home-block { flex-direction: column; }

  .home-block .home-block-graphic {
    order: 0;
    padding-bottom: 1em;
    }

  .home-block .home-block-text { order: 1; }

.team.text { padding-bottom: 0; }

.team.video { padding-top: 0; }

.news.list { columns: 1; }

.address-wrap { columns: 1; }

.product-image img { max-width: 50%; }

} /* End of 320px-767px Media Query */

/* -------------------------------------------------------------
  media-query-480-639
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 639px) {

.home-block .home-block-graphic img { max-width: 65%; }

.testimonial.list ul { columns: 2; }

} /* End of 480px-639px Media Query */

/* -------------------------------------------------------------
  media-query-480-767
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 767px) {

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-1-4,
.col-1-3,
.col-1-2,
.col-2-3,
.col-3-4,
.col-full,
.col-half {
	width: 100%;
  float: none;
  }

.home-block .home-block-graphic img { max-width: 65%; }

.team-list a { width: 33.33333333% !important; }

 .contact-method { width: 50% !important; }

.affirm.how-it-works .how-it-works-block { width: 50%; }

	} /* End of 480px-767px Media Query */

/* -------------------------------------------------------------
  media-query-640-767
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 767px) {

h2.title { padding-top: 1.5em; }

.hero-full-screen { min-height: 620px; }

  .hero-main h2 { font-size: 4em; }

  .hero-main h3 { font-size: 1.8em; }

  .hero-footer svg { display: none; }

footer .contact .plc { flex-wrap: wrap; }

footer .contact .logo {
  text-align: left !important;
  flex-grow: 2;
  }

.about.hero { height: 300px; }

.about.infographics ul { flex-direction: row; }

.about.infographics ul li { width: 50%; }

.about.coverage ul { justify-content: center; }

.about.coverage ul li { width: 50%; }

.testimonial.list ul { columns: 3; }

  .corporate-partnerships-logos li { width: 33.33333333%; }

} /* End of 640px-767px Media Query */

/* -------------------------------------------------------------
  media-query-640-1023
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 1023px) {

header { height: 70px; }

  header .plc { padding-bottom: 0; }

    header .plc .header-logo { max-width: 33.33333333%; }

.hero-full-screen .hero-header { height: 70px; }

a.open-btn:link,
a.open-btn:visited {
  top: 11px;
  right: 11px;
  }

footer .contact .contact-us,
footer .contact .social {
  width: 50%;
  }

} /* End of 640px-1023px Media Query */

/* -------------------------------------------------------------
  media-query-768-959
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 959px) {

.team.text,
.team.video {
  width: 100%;
  }

.affirm.how-it-works .how-it-works-block { width: 50%; }

.account-your-account,
.account-your-orders,
.login-account,
.login-register,
.collection-item-list {
  width: 100%;
  }

.shop-service-info,
.shop-service-buy {
  width: 100%;
  }

.collection-description { width: 100%; }

.collection-description blockquote { 
  width: calc(50% - 1rem) !important;
  float: left;
  }
  
  .collection-description blockquote:first-child { margin-right: 2rem; }

.col-6 .mobile-separator { display: none; }

} /* End of 768px-959px Media Query */

/* -------------------------------------------------------------
  media-query-768-1023
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 1023px) {

h2.title { padding-top: 2em; }

.hero-full-screen { min-height: 600px; }

  .hero-main .col-8 { width: 90%; }

  .hero-main h2 { font-size: 4em; }

  .hero-main h3 { font-size: 1.8em; }

.home-block { align-items: flex-start; }

.cta-banner.bottom .plc { display: block; }

.cta-banner.bottom div.cta-text {
  width: 100%;
  clear: both;
  padding-bottom: 0;
  }

.cta-banner.bottom div.cta-button {
  width: 100% !important;
  clear: both;
  }

footer .contact .contact-us,
footer .contact .social,
footer .contact .logo {
  width: 33.33333333%;
  }

footer .copyright .copyright-year { padding-bottom: 0; }

footer .copyright .legal {
  width: 100%;
  padding-top: 0;
  text-align: left;
  }

.overlay {
  width: 50% !important;
  box-shadow: -5px 0 10px 20px rgba(0,0,0,.25);
  }

.about.hero { height: 300px; }

.team-list a { width: 20% !important; }

.corporate-partnerships.text { width: 100%; }

  .corporate-partnerships-logos li { width: 20%; }

.collection-block { width: 33.33333333% !important; }


	} /* End of 768px-1023px Media Query */

/* -------------------------------------------------------------
  media-query-1024-1280
------------------------------------------------------------- */

@media only screen and (min-width: 1024px) and (max-width: 1279px) {

.about.hero { height: 360px; }

.team-list a { width: 16.66666667% !important; }

  } /* End of 1024px-1279px Media Query */

/* -------------------------------------------------------------
  media-query-1024-1366
------------------------------------------------------------- */

@media only screen and (min-width: 1024px) and (max-width: 1365px) {

h2.title { padding-top: 2em; }

	} /* End of 1024px-1365px Media Query */