	/* Typography  */
	body { font-family: 'AvenirLight',sans-serif; color: #555555; }
	h1, .h1 { font-family: 'AvenirMedium',sans-serif; font-weight: 700; font-size: 40px; color: #004989; }
	.h2, h2 { font-family: 'AvenirMedium', sans-serif; font-size: 38px; margin: 0 auto; line-height: 55px; }
	.h3, .h4, .h5, h3, h4, h5 { font-family: 'AvenirMedium',sans-serif; font-weight: 500; letter-spacing: 0; margin: 0; }

	/* Top Level Elements */
	body:not(.error404) header { z-index: 10; position: fixed; background: #fff; width: 100%; top: 0; left: 0; right: 0; }
	.hero-section { margin-top: 93.5px !important; }
	section { position: relative; padding: 4rem 0; background: #fafafa; }
	section:not(.hero-section, .footer) { max-width: 1920px; margin: 0 auto; overflow: hidden; }

	/* Aux color classes */
	.dark-blue-text { color: #004989; }
	.light-blue-text { color: #0082BA; }

	.azra-bg { background: #fafafa; }
	.white-text { color: #fff !important; }

	p { font-size: 16px; line-height: 1.5; }
	p.lead { font-size: 24px; }
	p.suptitle { font-size: 18px; }

	/* Top Stripe above main Navigation */
  .top-stripe { background: #004989; color: #fff; overflow: hidden; }
  .top-stripe a,
  .top-stripe a:hover { color: #fff; }

	/* Main Navigation */
	.navbar { box-shadow: 0 3px 3px #0000001a !important; padding: 0 1rem; display: flex !important; }
	.navbar-light .navbar-nav .nav-link { font-family: 'AvenirMedium', sans-serif; color: #004989; font-size: 1.1rem; }
	.dropdown-item { color: #004989; line-height: 1.5; }
	.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus, .dropdown-item:hover, .dropdown-item:focus { color: #0082ba; }
	.dropdown-item:focus, .dropdown-item:hover { background: #fff; }
	.nav-item { position: relative; }
	.dropdown-menu.show { top: 55px; border-radius: 0 0 5px 5px; }
	.navbar-brand { padding-top: 0.6rem; padding-bottom: 0.75rem; margin-right: 0.75rem; }
	.navbar-brand img { max-width: 180px; }

	/* CTA Buttons  */
	button, button:focus { outline: none !important; }
	.cta-button-green { font-family: "AvenirBook", sans-serif; font-weight: 700; border-radius: 30px; padding: 0.5rem 2.15rem; background-color: #55951b; text-transform: uppercase !important; color: white !important; display: inline-block; border: 2px solid #55951b; line-height: 22px; padding-top: 0.65rem; white-space: nowrap; }
	.cta-button-green:hover { background-color: #93d500; border: 2px solid #93d500; color: white !important; text-decoration: none; transition: all .35s ease-in-out; cursor: pointer; }
	.cta-button-blue-transparent { font-family: "AvenirBook", sans-serif; font-weight: 700; border-radius: 30px; padding: 0.5rem 2.15rem; background-color: transparent; text-transform: uppercase !important; color: #0082BA; display: inline-block; border: 2px solid #0082BA; line-height: 22px; padding-top: 0.65rem; text-align: center; }
	.cta-button-blue-transparent:hover { background-color: #0082BA; border: 2px solid #0082BA; color: white !important; text-decoration: none; transition: all .35s ease-in-out;
	}
	.cta-button-transparent { font-family: "AvenirBook", sans-serif; font-weight: 700; border-radius: 30px; padding: 0.5rem 2.15rem; background-color: transparent; text-transform: uppercase !important; color: #FFF; display: inline-block; border: 2px solid #FFF; line-height: 22px; padding-top: 0.65rem; }
	.cta-button-transparent:hover { color: #0056b3; text-decoration: none; background: #fff; transition: all .35s ease-in-out; }

	.hero-column  { min-height: calc(100vh - 93.5px); text-align: center; }
	.hero-content { max-width: 800px; }
	.hero-content > h3 { text-transform: uppercase; font-size: 16px; -webkit-text-stroke: 0 !important; }
	.hero-section input { max-width: 400px; height: 47px; border-radius: 10px; background: transparent; border: 1px solid #828589; }
	.hero-section .container-fluid { position: relative; }

	.message-top { padding: 1rem 0.5rem; background-color: rgba(243, 243, 243, 0.8); z-index: 2; position: absolute; bottom: 0; left: 0; right: 0; }
	.message-top p { display: inline-block; margin-bottom: 0; }
	.message-top .cta-button-blue-transparent { margin-left: 1rem; }
	.message-top .message-top-close { float: right; font-size: 26px; color: #707070; margin: 10px 15px 0 0; }
	.message-top .message-top-close:hover { opacity: 0.75; }

	.billboard-headline { margin: 0 auto; color: #555555; }

	.intro-section h3 { font-family: 'AvenirLight'; font-weight: 300; font-size: 48px; line-height: 50px; color: #707070; max-width: 300px; margin: 1.8rem auto; }
	.intro-section .intro-p { font-size: 18px; line-height: 24px; margin: 1.5rem auto 3rem; }
	.intro-section h3 + p { margin: 0 auto; max-width: 440px; }

	.wistia_click_to_play { height: 100% !important; width: 100% !important; }
	.intro-video-section .col-md-6 { padding: 0; }
	.intro-video-section .wistia-video-wrapper { min-height: 350px; }
	.intro-video-section .wistia-video { display: inline-block; }
	.intro-video-section .wistia-video img { transition: all 0.5s ease; }
	.intro-video-section .wistia-video:hover img { opacity: 0.9; }
	.intro-video-section .intro-video-section-content { padding: 0 0 0 3rem; max-width: 520px; }
	.intro-video-section .intro-video-section-content .col-8 { padding-left: 0; }
	.intro-video-section .intro-video-section-content img { margin-top: 1.6rem; }
	.intro-video-section h3 { font-family: 'AvenirLight'; font-weight: 300; font-size: 25px; line-height: 1.2; color: #707070; max-width: 300px; margin: 1.8rem auto; }

	.blue-section { text-align: center; }
	.blue-section h2 { line-height: 55px; max-width: 400px; }
	.blue-section p { font-size: 16px; line-height: 24px; text-align: left; max-width: 500px; }

	.blue-section-single h2 { line-height: 55px; max-width: 550px; margin: 3rem auto 2rem!important; }
	.blue-section-single p { font-size: 16px; line-height: 24px; text-align: left; max-width: 880px; margin: 0 auto !important; }

	.quote-section p { font-size: 22px; line-height: 2; max-width: 770px; font-style: italic; margin-bottom: 3rem; }
	.quote-section p span { font-size: 22px; }

	.tcp-family-logos .hcm-logo-wrap { width: 250px; height: 120px; display: flex; flex-direction: row; justify-content: center; align-content: center; margin: 1rem 0.4rem; }
	.tcp-family-logos .hcm-logo-wrap .hov-single { padding: 0; display: grid; }
	.tcp-family-logos .hcm-logo-wrap .hov-single img { max-width: 100%; max-height: 60px; align-self: center; }

	.zigzag-content { padding: 30px; }
	.zigzag-section h3 { font-size: 26px; margin-bottom: 1.5rem; }

	.solutions-section { overflow: visible !important; }
	.solutions-section p { line-height: 24px; margin: 1.5rem auto; max-width: 550px; }

	.mobile-section { text-align: center; }
	.mobile-section h2 { max-width: 450px; }
	.mobile-section p { max-width: 450px; }
	.mobile-section .rating { margin: 0; font-size: 18px; }

	.cards-section h2 { margin: 4rem auto 2.5rem; }
	.cards-section .vanity a { display: inline-block; margin: 0 2rem; }

	.card { border-radius: 28px; background: #fff; border: 1px solid #c9c9c9; min-height: 350px; margin-top: 1.5rem; }
	.card h3 { font-size: 26px; line-height: 30px; ; }
	.card p { line-height: 24px; margin: 1rem auto; }

  .IndustrySelector-select { background: transparent; border: 1px solid #C9C9C9; border-radius: 30px; color: #FFFFFF; -webkit-appearance: none; -moz-appearance: none; appearance: none; cursor: pointer; font-size: 16px; line-height: 22px; font-family: AvenirHeavy;
  }

  .container-special { max-width: 1680px; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }

	.footer { background: #555555; color: #cbcbcb; }
	.footer h3 { font-weight: 500; font-size: 26px; text-align: left; color: #c9c9c9; margin: 0 0 1rem; font-family: 'AvenirLight',sans-serif; }
	.footer .copyright { text-align: center; margin-top: 1.5rem; }
	.footer ul li { text-align: center; }
	.footer hr { background: #93D500; margin: 20px 0; }
	.footer .social-menu a, .footer .social-menu a:hover { color: #fff; }
	.footer .social-menu img { max-width: 40px; }

	.social-menu { margin-bottom: 0; text-align: center; }
	.social-menu a:hover { opacity: 0.8; }
	.social-menu .list-inline-item:not(:last-child) { margin-right: 10px; }

	.logos-holder { flex-wrap: wrap; align-items: center; justify-content: center; }
	.hov-single { display: flex; padding: 20px; }
	.hov-single img {  -webkit-filter: grayscale(1); width: auto; max-height: 80px; }
  .hcm-logo-wrap { border: 2px solid #C9C9C9; border-radius: 15px; background: #FFF; overflow: hidden; display: inline-block; margin: 0 auto 1rem; padding: 20px; }
  .hcm-logos img { -webkit-filter: grayscale(1); height: auto; max-width: 100%; }
  .hcm-logo-wrap:hover .hcm-logos img { -webkit-filter: grayscale(0); }

	.footer ul li img { max-width: 160px; }
	.footer h3,
	.footer .col-md-4 { text-align: center; }

	.footer-logo { margin-bottom: 20px; }
	.footer a, .footer a:focus { font-size: 18px; line-height: 36px; text-align: left; color: #f3f3f3; }
	.footer a:not(.cta-button-green):hover { text-decoration: underline; color: #f3f3f3; }

	.footer-copyright { vertical-align: baseline; line-height: 1; font-size: 16px; margin-top: 50px; }
	.footer-copyright img { margin: -6px 7px 0 0; }

	/* Extra small devices (phones, 767px and down) */
	@media only screen and (max-width: 767px) {
    .take-me-to span { display: none; }
		.dropdown-menu.show { border: none; }
		.hero-column { padding-top: 20px; }
		.blue-section .cta-button-green { margin-bottom: 1rem; }
		.intro-section .row .col-md-6:last-child { padding-top: 3rem; }
		.intro-video-section .intro-video-section-content { padding: 3rem 2rem; max-width: 100%; }
		.mobile-section .my-auto { margin: 1rem auto; }
		.hcm-logos img { min-width: 230px; }
	}

	/* Medium devices (landscape tablets, 768px and up) */
	@media only screen and (min-width: 768px) {
		h1, .h1 { font-size: 60px; }
		.hero-column { height: 720px; min-height: initial; }
		.hero-content { padding-left: 15px; text-align: left; }
		.intro-video-section .wistia-video-wrapper { min-height: 650px; }
		.intro-video-section .intro-video-section-content { padding: 0 3rem; }
		.intro-video-section h3 { font-size: 30px; line-height: 40px; }
		.blue-section { text-align: left; }
		.zigzag-content-left { float: right; display: inline-block; }
		.zigzag-section p { max-width: 445px; }
		.mobile-section h2 { text-align: left; margin-left: 0; }
		.mobile-section p { text-align: left; }
		.mobile-section .my-4 ~ .row .col-lg-6 { text-align: left; }
		.mobile-section .my-4 ~ .row .col-lg-6 { text-align: left; }
		.mobile-section .my-4 ~ .row .col-sm-6:last-child * { margin-left: 0.5rem; }
		.quote-section p { font-size: 48px; line-height: 55px; }
		.quote-section p span { font-size: 30px; }
		.footer h3,
		.footer ul li,
		.footer .copyright { text-align: left; }
		.footer .legal-menu li { position: relative; }
		.footer .legal-menu li:after { content: "|"; position: absolute; right: -8px; top: 6px; }
		.footer .legal-menu li:last-child:after { display: none; }
		.footer hr { margin: 30px 0; }
		.social-menu { text-align: right; }
		.footer .btn-success { margin-bottom: 0;}
		.footer-logo,
		.footer .col-md-4 { text-align: left; }
		.footer-slogan { text-align: right; }
		.footer-logo { margin-bottom: 0; }
	}

	/* Large devices (laptops/desktops, 992px and up) */
	@media only screen and (min-width: 992px) {
		.h2, h2 { font-size: 48px; }
		.billboard-headline { line-height: 60px; }
		section { padding: 70px 0; }
		.hero-section { height: 720px; }
		.intro-video-section .intro-video-section-content { padding: 0 0 0 5rem; }
		.intro-video-section .wistia-video-wrapper { min-height: 900px; }
		.intro-video-section h3 { font-size: 48px; line-height: 50px; }
		.zigzag-content { margin-left: 3rem; }
		.zigzag-content-left { margin-left: 0; margin-right: 3rem; }
		.nav-item:hover::after, .nav-item.dropdown.show::after { content: ""; border-bottom: 7px solid #004989; border-top: none; border-left: none; border-right: none; position: absolute; width: 100%; left: 0; bottom: 0px; margin-left: unset; }
		.footer .social-menu img { max-width: auto; }
	}

	/* Extra large devices (large laptops and desktops, 1200px and up) */
	@media only screen and (min-width: 1200px) {
		#star-wrapper{ right:10%; left:10%; }
		.navbar-expand-lg .navbar-nav .nav-link { padding: 1rem; }
	}

	@media only screen and (min-width: 1440px) {
		.hero-content { padding-left: 65px; }
	}

	@media only screen and (min-width: 1650px) {
		.hero-column { clip-path: polygon(0 0, 73% 0, 100% 103%, 0% 100%); }
	}
	
	@media only screen and (min-width: 1920px) {
		.hero-section .container-fluid { background-position: right !important; max-width: 1920px; }
	}