 /************************************************

  >>   Coded By:   Karen McCullough - NSF International
  >>   Website:   http://www.nsfsport.com



	TABLE OF CONTENTS
*************************************************/
/*
	1: Grid - modified version of the Skeleton grid
	2: Base Styles - include base reset of elements and single element selectors along with typograhpy, links, buttons, forms and lists.
	3: Modules - reusable parts of the design, including the header and footer, cards, callouts, etc.
	4: Pages - some specific page adjustments - try to avoid styling for a specific page unless absolutely necessary
	5: State Rules - mostly css animations and css rules for javascript and states such as hidden, visible, expanded, etc.
	6: Media Queries
	7: Print Styles
	
*/





/*======================================

/*==============================================/  
	
	1: Grid
	
=============================================

Karen McCullough Modified from Skeleton: /*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/


.container {
  position: relative;
  width: 100%;
  max-width: 1244px;
  margin: 0 auto;
  padding: 2em 20px;
  box-sizing: border-box; }
.column,
.columns {
  box-sizing: border-box;
  margin-left: 4%;
  width: 100%;
}
.container--no-padding {
    padding: 0;
}
.one-half {
  width: 50%;
}



/*==============================================/  
	
	2: Base Styles
	
==============================================*/


/* NOTE
html is set to 62.5% so that all the REM measurements throughout 
are based on 10px sizing. So basically 1.5rem = 15px :) */


*, *::after, *::before {
    box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  font-family: "Archivo Narrow", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  /*font-size: 1.6em;  currently ems cause chrome bug misinterpreting rems on body element */
  font-size: 1.8rem;
  font-weight: 400;
  background: #fff;
  color: #4c4c4e;
  line-height: 1.5;
  }
header {
  padding-top: 3rem;
}
header,
main {
  background: #fff;
}
main {
  margin: 0 auto;
  overflow: auto;
}
header .row:first-child {
    padding: 0;
}
figcaption {
  margin-top: 1rem;
}
blockquote {
 border-left: 5px solid #eaebec;
 padding-left: 2rem;
}

/* Fonts
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* archivo-narrow-regular - latin */
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/archivo-narrow-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Archivo Narrow Regular'), local('ArchivoNarrow-Regular'),
       url('../fonts/archivo-narrow-v9-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/archivo-narrow-v9-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/archivo-narrow-v9-latin-regular.svg#ArchivoNarrow') format('svg'); /* Legacy iOS */
  font-display: swap;
}

/* archivo-narrow-italic - latin */
@font-face {
  font-family: 'Archivo Narrow';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/archivo-narrow-v9-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Archivo Narrow Italic'), local('ArchivoNarrow-Italic'),
       url('../fonts/archivo-narrow-v9-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/archivo-narrow-v9-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/archivo-narrow-v9-latin-italic.svg#ArchivoNarrow') format('svg'); /* Legacy iOS */
  font-display: swap;
}

/* archivo-narrow-700 - latin */
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/archivo-narrow-v9-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Archivo Narrow Bold'), local('ArchivoNarrow-Bold'),
       url('../fonts/archivo-narrow-v9-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/archivo-narrow-v9-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/archivo-narrow-v9-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/archivo-narrow-v9-latin-700.svg#ArchivoNarrow') format('svg'); /* Legacy iOS */
  font-display: swap;
}

/* oswald-regular - latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/oswald-v23-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/oswald-v23-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/oswald-v23-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/oswald-v23-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/oswald-v23-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/oswald-v23-latin-regular.svg#Oswald') format('svg'); /* Legacy iOS */
  font-display: swap;       
}



/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
table {
  margin-bottom: 4rem;
}
caption {
 color: #888;
 font-size: 1.8rem;
 margin: 2rem 0;
}
tr {
  border-bottom: 1px solid #ebedec;
  vertical-align: top;
}
tr:nth-child(odd){
  background: #ebedec;
}
th,
td {
    color: #888;
    padding: 1rem;
}
th {
 background: #ddd;
 border-bottom: 1px solid #fff;
 vertical-align: middle;
}


/** Table Classes **/

[class^="table--rows"] {
 margin-top: 4rem;
}
.table--rows-two td {
  width: 50%;
}
.table--rows-three td {
  width: 33%;
}
.table--rows-four td {
  width: 25%;
}






/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  font-family: "Oswald", Arial, sans-serif;
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 400;
  }
h1 {
  color: #888;
  font-size: 1.8rem;
  line-height: 1.2;
  }
h2 {
  color: #888;
  font-size: 3.6rem;
  line-height: 1.25;
  }

h3 {
  font-family: "Archivo Narrow", Arial, sans-serif;
  color: #f57b07;
  font-size: 3.0rem;
  line-height: 1.3;
  }
h4 {
  font-family: "Archivo Narrow", Arial, sans-serif;
  color: #4c4c4e;
  font-size: 1.8rem; 
  line-height: 1.35;
  }
h5 {
  font-size: 1.8rem;
  line-height: 1.5;
  }
h6 {
  font-size: 1.5rem;
  line-height: 1.6;
  }
strong {
  font-weight: 700;
 }
 
 

/* Links and Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #005596;
  text-decoration: none;
}
a, button {  transition: all .6s;}
a:hover,
a:focus {
  color: #f57b07;
}
  
a[rel="external"]:after,
.button:after,
.link__more:after,
nav .menu__parent-link:after,
.search__submit-site:before,
.button--remove:before,
.button--close:before,
.button--search:after,
.button--download:after,
.link--download:after,
.card__link-more:after {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  margin: 0 .25rem 0 .5rem;
}


.link__more:after,
.button:after,
.card__link-more:after {
  content: '\f105'; /* angle icon */
  font-weight: 400;
}
a[rel="external"]:after,
.link--new-window:after,
.button--new-window:after{
  content: '\f35d'; /* external link icon */
}
.button--search:after {
  content: '\f002'; /* magnifying glass icon */
}
.button--download:after,
.link--download:after {
  content: '\f0ab'; /* down arrow icon */
  font-weight: 700;
}

.link--block {
  display: inline-block;
}

.link--fade:hover,
.link--fade:focus,
.link--fade:hover img,
.link--fade:focus img {
  color: #fff;
  opacity: .8;
}

.link--clear-all {
  display: none;
  margin-bottom: 2rem;
}
.link--clear-all:after {
  content: '\f057';
  margin-left: 1rem;
}


.link--new-window:after {
  margin-top: 2rem;
}

.button {
  color: #fff;
  background: #0072ce;
  border: 1px solid #fff;
  border-radius: 5px;
  font-family: 'Archivo Narrow', Arial, Helvetica, san-serif;
  padding: 1rem;
}
.button:hover,
.button:focus {
  cursor: pointer;
}
.button__cta,
.button__cta-ghost {
  background: #f57b07;
  display: block;
  font-size: 1.8rem;
  padding: 0 1.5rem;
  text-align: center;
  width: 100%;
}
.button__cta-ghost {
  display: inline-block;
  width: auto;
}
.button--secondary {
  background: #888;
}
.button--alternate {
  background: #7fb8e6;
}
.button--form,
.button__main-content {
  background: #0072ce;
  clear: both;
  display: inline-block;
  margin-top: 4rem;
}
.button--form:hover,
.button--form:focus {
 background: #0064b5;
 opacity: 1;
}
.button__main-content {
  margin: 2rem 0 4rem 0;
}
.button--search {
  font-size: 1.4rem;
}
.button--border {
  background: #fff;
  border: 1px solid #888;
  color: #888;
}
.button--indent {
  margin-left: 2%;
}
.button--fade-dark:hover,
.button--fade-dark:focus {
  background: #62a744;
  color: #fff;
  cursor: pointer;
  opacity: 1;
}
.button--full-width {
  display: block;
}
.button--no-icon {
  text-align: center;
}
.button--no-icon:after,
a[rel="external"].button--no-icon:after{
  content: '';
  margin: 0;
}
.button--solid:hover,
.button--solid:focus {
  background: #f57b07;
  color: #fff;
  
}
.button__search-submit {
  border-radius: 0 5px 5px 0;
  border: 0;
  background: #888;
  color: #fff;
  display: inline-block;
  outline: 0 none !important;
  padding: 1rem;
  white-space: nowrap;
}
.button__news-search {
  padding-right: 1.5rem;
 }

.button--compare {
  background: #62a744;
  float: right;
  margin: -6rem 0 2rem 0;
  padding: 1rem 3rem;
  text-align: center;  
}
#compare__added .button--compare {
  margin-top: 0;
}
.button--remove {
  padding: 2px 2rem 2px 2px;
}
.button--remove:before {
  background: #fff;
  color: #62a744;
  content: '\f00d'; /* times icon */
  font-weight: 400;
  display: inline-block;
  margin: 0 2rem 0 0;
  padding: 1rem;
  text-align: center;
  width: auto;
}
#compare__added .button--close {
 float: right;
}

.button--close:before {
 color:  #005596;
 content: '\f057'; /* close window icon */
 font-weight: 700;
 margin: 0 .5rem 0 0;
 padding: 0;
 transition: color .6s;
}

.button--close:hover:before,
.button--close:focus:before {
  color: #f57b07;
}


/** compare added display **/

#compare__added {
  background: #fff;
  border-top: 20px solid #62a744;
  position: fixed;
  bottom: 0;
  width: 100%;
  display: none;
}
#compare__added .container {
  max-width: 660px;
  padding-left: 4rem;
}
#compare__added-content {
  margin: 0 auto;
}
#compare__added-content h5 {
  color: #62a744;
  font-family: 'Archivo Narrow', Helvetica, Arial, sans-serif;
}

.circle {
  background-color: #62a744;
  border: 5px solid #62a744;
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 1.6rem;
  margin: 0 .25rem;
  text-align: center;
  transition: all 1s ease-out;
	  -webkit-transition: all 1s ease-out;
	  -moz-transition: all 1s ease-out;
	  -o-transition: all 1s ease-out;
  width: 3.3rem;
  height: 3.3rem;
  vertical-align: middle;
}
.circle-check:before {
  color: #62a744;
  content: '\f058';
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  margin-right: .75rem;
  
}


/*** Comparison Page ***/

.comparison__group {
  overflow: auto;
}

.comparison__group .half,
.comparison__group .third {
  float: left;
  width: 50%;
}
.comparison__group .third {
  width: 33%;
}
.comparison__button {
  clear: both;
  display: inline-block;
  float: none;
  margin: 2rem auto;
  width: 100%;
}
.comparison__group .button--remove {
 font-size: 1.6rem;
  max-width: 124px;
}
.comparison__group .product__label-link {
  display: block;
  margin: 0 auto 4rem auto;
  max-width: 240px;
}

.comparison__group .product__column img {
  max-width: 160px;
}

#comparison-page-title {
  float: left;
  width: 80%;
}
#remove-all {
  margin: 0;
}

.comparenone {
  display: none;
}

.compare__table td {
  padding:  1rem 5rem;
  text-align: center;
}
.compare__table tr {
  border-bottom: none;
}
.compare--two td {
  width: 50%;    
}
.compare--three td {
  width: 33.33%;    
}
.compare__table td:not(:last-child) {
  border-right: 1px solid #ebedec;
}


/** Use flexbox where we can to fix alignment **/
@supports (display: flex) {
 
 .comparison__group {
  display: flex;
  justify-content: center;
  }
 .comparison__group .product__column {
   display: flex;
   flex-direction: column;
   justify-content: center;
 }
 .comparison__group  h3 {
  flex: 1 1 auto;
 }
 .comparison__group .product__column img {
   align-self: flex-start;
   flex: 0 1 auto;
   max-width: none;
   max-height: 150px;
 }
 
 
}


/* NAVIGATION */

#pull {
  display: block;
  float: right;
  font-size: 1.5rem;
  height: 44px;
  line-height: 44px;
  margin-right: 2rem;
  padding: 0 1.5rem;
  text-align: center;
}

/** hide full header on smaller screens **/
#full-header {
  display: none;
}

nav {  
    background: #005596;
	border-top: 5px solid #0072ce;
    width: 100%;
	position: relative;
}  
nav ul {
    margin: 0 auto;
    padding: 0;  
    width: auto;  
}
nav a, 
nav .current {
	box-sizing:border-box;
		-moz-box-sizing:border-box;  
		-webkit-box-sizing:border-box;
    color: #fff;  
    display: block;
	font-size: 1.8rem;
    line-height: 50px;
	padding: 0 1em;
    width: auto;  
    text-decoration: none;  
}
nav .current {
  background: #0072ce;
}

nav li:hover,
nav li:focus,
nav .js-clickable,
nav .current {
  background: #0072ce;
  border-top: 5px solid #2a93e8;
  color: #fff;
  margin-top: -5px;
}
nav .current > a {    
  cursor: text;
  font-weight: 700;
}
nav a:hover,
nav a:focus {
  color: #fff;
}



/* Hide Dropdowns by Default on Full Menu
* and giving it a position of absolute */
nav ul ul {
  display: none;
  position: absolute;
  top: 100%;
}

#mobile-header .button__cta {
  height: 66px;
  line-height: 3;
}  
#mobile-header ul li:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#mobile-header nav a {
  text-align: center;
}
#mobile-header .search__global {
  background: #0072ce;
  overflow: auto;
  padding: 2rem;
  text-align: center;
}
#mobile-header .search_global-field,
#mobile-header .search_global-button {
  display: inline-block;
}
#mobile-header .one-half:nth-child(2) {
  float: right;
  margin-left: 0;
  width: auto;
}

/** Hide Breadcrumb Navigation on Mobile **/
#breadcrumb-nav {
  display: none;
}


/** Local navigation **/

#pull-local,
#pull-filter {
  display: none;
}

.nav__local-container {
  float: none;
  margin-left: 0;
  width: auto;
}
.nav__local,
.nav__local ul {
  list-style: none;
  margin: 0;
}
.nav__local a {
  padding: .5rem 0;
}
.current__section a {
  display: block;
  padding-left: 0;
}
.current__section strong {
  display: inline-block;
  font-weight: 700;
  padding-bottom: .5rem;
  width: 100%;
}
.nav__local-parent {
  position: relative;
}
.nav__local-parent li {
  padding-left: 2rem;
}
.nav__local li:not(.current__section),
.current__section strong {
  border-bottom: 1px solid #ebedec;
}

#results-filter li {
  border-bottom: none;
  display: block;
  width: 100%;
}

#results-filter h5 {
  font-size: 1.6rem;
  margin: 0 0 1rem 0;
}
#results-filter .container--expandable {
  margin: 0;
}


#results-filter .list--form li {
  display: table;
  text-align: left;
}
#results-filter .list--form li * {
  display: table-cell;
  text-align: left;
}
#results-filter label {
  width: 200px;
}


.nav__local .current,
.nav__local li a:not(.current):hover,
.nav__local li a:focus,
.nav__local-parent a:not(.current):focus > a:before,
.nav__local-parent a:not(.current):hover > a:before {
  color: #fff;
  background: #888;
}

.nav__local .current {
	color: #4c4c4e;
	font-weight: 700;
}
.nav__local .current:not(.nav__local-parent-link) {
  cursor: text;
}
.nav__local .current,
.nav__local-sub .current {
  color: #fff;
}

.nav__local-sub {
  border-top: 2px solid #fff;
}
.nav__local-sub li:last-child {
  border: none;
}

.nav__local-sub .current {
  font-weight: 700;
}





/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select,
button {
  height: 46px;
  width: 100%;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #D1D1D1;
  box-shadow: none;
  box-sizing: border-box;
  color: #888;}
select {
  padding: 0 0 0 10px;
}
  
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 165px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
input[type="submit"] {
    min-width: 150px;
	width: auto;
}
option {
    padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
}
label,
legend {
  color: #4c4c4e;
  display: block;
  font-weight: 400;
  margin-bottom: .5rem;
  text-align: left;
  }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
input[placeholder],
select[title] {
  color: #888;
  font-size: 1.5rem;
}

form .four.columns:first-child {
	margin-left: 0;
	width: 30.6666666667%;
}

form .two.columns:first-child {
	margin-left: 3%;
	width: 46%;
}

form .three.columns:first-child {
	margin-left: 0;
	width: 23.6666666667%;
}

/*** Form Classes ***/

.form__intro-text {
  margin-bottom: 4rem;
}
.input--search {
  border-radius: 5px 0 0 5px;
}
.form__dropdowns {
  margin-bottom: 2rem;
}


.error,
.asterisk {
	color: #f57b07;
}
.error:not(label) {
	background: #fde5cd;
	border: 1px solid #f57b07;
}

.error + .error {
 margin-top: .5rem;
}

.container--checkbox:not(:first-child) {
  clear: both;
  margin-top: 2rem;
  overflow: auto;
}

.list--bullet {
	list-style-position: outside;
	margin-left: 2rem;
  }
.list--checkbox {
    column-count: 2;
	-moz-column-count: 2;
	-webkit-column-count: 2;
	margin-bottom: 0;
}

.list--form {
    list-style: outside none none;
	margin-left: 2rem;
}
.list--form li {
  margin-bottom: 1rem;
}
.list--checkbox{
    margin-bottom: 0;
}
.list--form label,
.newsletter__label {
    display: inline;
    margin-left: 0.5em;
}
.note--small {
  font-size: 1.4rem;
  margin-top: 2rem;
  padding-top: 1rem;
}
.form__note {
  margin-top: 4rem;
}
.note__search-results {
  font-size: 2.4rem;
  margin-top: 3rem;
  
}

.search__form {
  margin-top: 2rem;
}
.search__form input,
.search__form button {
  display: inline-block;
  width: auto;
}
.search__form input {
  width: 75%;
}
.form__container {
  margin: 2rem 0 0 0;
}
.dropdown__group {
  overflow: auto;
}

.form_noresults {
  display: none;
}

.form--background-light {
  background: #ebedec;
  padding: 2rem;
}
.form--button-bright {
  background: #0072ce;
  color: #fff;
}

/** on main listings pages **/
input[type="text"].keyword__input {
  width: 65%;
}

.form__block {
  display: block;
  margin-bottom: 4rem;
  overflow: auto;
}
.nav__local .form__block {
  margin-bottom: 0;
  padding-bottom: 4rem;
}
.nav__local .form__title {
  margin-bottom: 0;
}
.form__divider {
	border: none;
    border-top: 1px solid #b9b9ba;
	clear: both;
    color: #333;
	margin: 4rem 0;
	overflow: visible;
	padding: 0;
    text-align: center;
}
.form__divider:after {
    color: #f47b20;
	content: "OR";
	font-size: 2.2rem;
	display: inline-block;
	position: relative;
	top: -0.7em;
	font-size: 1.5em;
	padding: 0 0.25em;
	background: white;
}
.form__dropdowns {
  overflow: auto;
}
.form__dropdowns.row:not(:last-child) {
  margin-bottom: 4rem;
}
.button--browse {
  width: 100%;
}


#form__recaptcha {
   margin-top: 8rem;
   padding-top: 4rem;
}


/** Listing Pages **/

form .four.columns:not(:first-child) {
	margin-left: 4%;
	width: 30.6666666667%;
}

form .two.columns:not(:first-child) {
	margin-left: 3%;
	width: 46%;
}

form .three.columns:not(:first-child) {
	margin-left: 4%;
	width: 21.3666666667%;
}

.select_browse_by { margin-bottom: 10px; }

/** Sidebar Listings Search on Search Results Page **/

.search--sidebar {
  margin-left: 0;
}
.search--sidebar input.input--search[type="text"] {
  width: 75%;
}
.search--sidebar .button--search {
  width: 25%;
}
  
.nav__local .form__dropdowns .row:not(:last-child) {
  margin-bottom: 2rem;
}
.nav__local button {
  background: #888;
}


/** Listings Search Results **/

.product__contact-title {
  margin-bottom: 0;
}
.product__contact p {
  margin-top: 0;
}
.product__thumb {
  display: inline-block;
  height: auto;
  max-width: 40px;
}

.familycount {
  display: none;
}


/** Product Thumbnail Images **/
.carousel {
  border-spacing: .5rem;
}
.carousel__main {
  min-height: 166.5px;
}
.carousel__main img {
  max-width: 160px;
}

.carousel__links {
  vertical-align: middle;
  display: table;
  text-align: center;
}
.carousel__links a {
  border: 1px solid #b9b9ba;
  display: table-cell;
  overflow: auto;
  padding: 0 1rem;
  transition: none;
  vertical-align: middle;
}

.carousel__links a:before {    /* create a full-height inline block pseudo=element */
    content: ' ';
    display: inline-block;
    vertical-align: middle;  /* vertical alignment of the inline element */
    height: 100%;
}
.carousel__links a:hover,
.carousel__links a:focus {
  border-color: #0072ce;
}
.carousel__links .current,
.carousel__links .current:focus {
  border-width: 1px;
  border-color: #f47b20;
}
.carousel__links .current:hover {
  border-color: #f47b20;
  cursor: text;
}



/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */

ul {
  list-style: circle outside; }
ol {
  list-style: decimal outside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
 }
  
.list--bullet,
.list--number {
  list-style-position: outside;
  margin-left: 2rem;
}
.list--no-bullet {
  list-style: none;
  margin-left: 0;
}
.list--no-bullet li {
  padding: 1rem 0;
}


.list--alpha {
 list-style: lower-alpha;
 margin: 0 0 1.5rem 1.5rem;
 padding: 0 0 0 1.5rem;
}

.list--alpha li,
.list--alpha p {
    padding: 1rem 0 0 0;
}
  

/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.container:after,
.row:after {
  content: "";
  display: table;
  clear: both; }



/**
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    contenteditable attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that are clearfixed.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,  
.clearfix:after {  
    content: " ";   /* 1 */
    display: table; /* 2 */  
}  
.clearfix:after {  
    clear: both;  
}


/* Utilities and Helper Classes
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-up:not(.main__content) {
  margin-top: 5rem;
}
.u-screen-reader {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
}
.u-push-top {
  margin-top: 4rem;
}
.u-push-vertical {
  margin: 1rem 0;
}
.u-container--float {
  margin-bottom: 2rem;
  overflow: auto;
}

.s-hidden {
    display: none;
}
.s-visible {
    display: block;
}

.border--none {
  border: none;
}
.border--bottom-light {
  border-bottom: 1px solid #ebedec;
}
.border--top-light {
  border-top: 1px solid #ebedec;
}
.border--bottom-dark {
  border-bottom: 1px solid #4c4c4e;
} 
.border--bottom-light h3,
.border--bottom-light p {
  margin-bottom: .5rem;
}
.display--inline-block {
  display: inline-block;
}
.display--block {
  display: block;
}
.display--table {
  display: table;
}
.text--center {
  text-align: center;
}
.text--left {
  text-align: left;
}
.text--shadow {
  text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.2); 
 }
 
.callout--light {
  background: #ebedec;
  padding: 2rem 5rem;
 }
.bg--transparent {
  background: rgba(255,255,255, .9);
  box-shadow: 3px 3px 5px 0px rgba(102,102,102, .2);
 }
.image--cover {
  clip: rect(0px, 0, 462px, 0px);
  display: block;
  height:auto;
  width:100%;
}




/** Icons **/
.icon:before {
  margin-right: .5rem;
}
.icon:before,
.icon:after {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
}
.icon--email:before {
    content: '\f2b6'; /* envelope icon */
    font-weight: normal;
}
.icon--search:before {
  content: '\f002'; /* magnifying glass icon */
}
.icon--document:before {
  content: '\f016';  /* document icon **/
}
.icon--training:before {
  content: '\f19d'; /* training icon **/
}
.icon--phone:before {
  content: '\f095'; /** phone icon **/
  margin-right: 1rem;  
}
.icon--twitter:before {
  content: '\f099'; /** twitter icon **/
  font-family: 'Font Awesome 5 Brands';
}
.icon--send:after {
  content: '\f1d8'; /** paper airplane icon **/
  margin-left: .5rem;
}
.icon--no-external[rel="external"]:after,
#full-header nav a.arrow__none::after {
  content: none;
}

.list--menu {
  list-style: none;
}

.caption {
  color: #888;
}

/*** used on pages without hero images, such as privacy policy and copyright ***/
h2.title--no-left-padding {
  padding-left: 0;
}



/*==============================================/  
	
	3: Modules
	
============================================= */


/* Header
–––––––––––––––––––––––––––––––––––––––––––––––––– */

#mobile-header {
    display: block;
}
#mobile-header .one-half {
  float: left;
}
header .logo {
  margin: -1rem 0 0 2rem;
  text-align: center;
  width: 48%;
}
.logo__link {
  display: block;
  margin: 1rem auto;
  overflow: auto;
}
.logo__text {
  color: #888;
  display: block;
  line-height: 1;
  margin: 0 0 3rem 1rem;
  vertical-align: top;
 }
 
#full-header {
  display: none;
}
#full-header nav .menu__parent-link:after {
  color: #fff;
	content: '\f107'; /* down angle icon */
	font-size: 2.4rem;
 font-weight: 400;
	line-height: 1.8rem;
	margin-left: 1rem;
 vertical-align: middle;
  }

/*** Site Search  Button ***/

.search__submit-site {
  height: 46px;
  margin: 0;
  max-width: 46px;
  padding: 0;
  position: relative;
  width: 46px;
}
.search__submit-site:before,
#pull:before {
  font-family: 'Font Awesome 5 Pro';
  font-size: 1.5rem;
  font-weight: 900;
  content: '\f002'; /* magnifying glass icon */
  margin: 0;
}
#pull.js-open:before {
  content: "\f00d"
}
#pull:after {
  content: none;
}
#pull:before {
  margin-right: 1rem;
}

#mobile-header {
  position: relative;
}
#mobile-header .menu__dropdown {
  display: none;
  height: auto;
  background: #fff;
  position: absolute;
 	top: -255%;
  transition: top 0.5s ease-in-out;
  width: 100%;
  z-index: 2;
}
#mobile-header .js-dropdown--expanded {
  top: 100%;
  z-index: 100;
}
#mobile-header nav {
  border-top: none;
  overflow: hidden;
  width: 100%;
}
#mobile-header nav li {
  list-style: none;
  width: 100%;
}
#mobile-header .nav a {
  color: #fff;
  display: block;
  font-size: 14px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  text-transform: uppercase;
}
 
  /*  Heroes / Features with Images / Callouts
--------------------------------------------- */


.hero {
  display: table;
  margin: 0 auto;
  min-width:280px;
  position:relative;
  width: 100%;
}
.hero__img,
.hero__text-wrap {
  display: block;
}
.hero__text-wrap {
    /* positioning */
	left:0;
	top:0;
	right:0;
	bottom:0;
  overflow:auto;
}
.hero__text-wrap-inner {
  display:table;
  height:100%;
  width:100%;
}
.hero__text {
  display:table-cell;
  vertical-align:middle;
}
.feature__text,
.hero__heading {
  bottom: 0;
  color: #4c4c4e;
  float: none;
  font-size: 5vw;
  font-size: 1.8rem;
  margin-bottom: 0;
  padding: 2rem 5rem;
 }
 .feature {
  margin-bottom: .5rem;
 } 
 .feature__heading {
  font-size: 2.0rem;
 }
 
 /** Used on Homepage Feature **/
 .feature__mark {
  float: right;
  margin: 0 1rem 1rem 3rem;
 }
 .link--follows-mark {
  margin-right: calc(116px + 3rem);
 }
 

 /*** Callout areas ***/
 
.callout {
  padding: 3rem 0;
 }
 .callout--gradient {
  background: #ebedec; /* Old browsers */
  background: -moz-linear-gradient(left, #ebedec 0%, #b9b9ba 50%, #ebedec 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #ebedec 0%,#b9b9ba 50%,#ebedec 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #ebedec 0%,#b9b9ba 50%,#ebedec 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebedec', endColorstr='#ebedec',GradientType=1 ); /* IE6-9 */
  padding: 0;
 }
 .callout--bright {
  background: #0072ce;
  clear: both;
 }
 .callout__heading {
  color: #fff;
  font-family:   "Archivo Narrow", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 3.3rem;
  line-height: 1;
 }
 .callout__heading--large {
  font-size: 4.9rem;
 }
 .callout__subtext {
  display: block;
  font-size: 1.8rem;
  margin-top: .5rem;
 }
.callout__subtext--large {
  font-size: 3.5rem;
}
.callout__button {
  display: inline-block;
  line-height: 22px;
  padding: 1rem 2rem;
} 
 .callout__app-wrap  {
  background: url(../images/app-image_large_417x200.png) 25% bottom no-repeat;  
 }
.callout__content-wrap {
  background:  rgba(102, 102, 102, 0.1);
  padding: 2rem 0;
}
 .callout__app-heading:before {
  content: url(../images/nsf-sport_icon-rounded_80x80.png);

 }
 

 
   /* Cards
---------------------------------------------
  NOTE: Default card border/date color (#25bbe8 - aqua blue) is for articles since it will likely be the most common. Video and event cards styles
  override default color at bottom of this section using .card__video and .card__event classes respectively. 
*/
 
 .card {
  text-align: left;
 }
 

.column.card {
  border: 1px solid #ebedec;
  border-radius: 5px;
  height: 340px;
  margin: 0 auto 2rem auto;
  max-width: 234px;
  position: relative;
 } 
.card__image {
  border-top: 1px solid #fff;
  clip: rect(0,232px,126px,0px);
  height: auto;
  position: absolute;
  transition: opacity .6s;
  width: 100%;
 }
 .card__sidebar .card__image,
 .border--none .card__image {
  border-top: none;
 }
 .card__image:hover,
 .card__image:focus {
  opacity: .8;
 }
 .card__date {
  background: #005596;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  border-radius: 0 5px 0 0;
  color: #fff;
  font-family: 'Archivo Narrow', 'Arial', sans-serif;
  font-size: 1.434rem;
  line-height: .95;
  margin-top: 0;
  padding: .5rem 1rem;
  position: absolute;
	right: 0;
	top: 0;
  text-transform: uppercase;
  width: 50px;
  z-index: 20;
 }
 .column.card__no-date {
  border-top: none;
 }
 .card__no-image .card__date {
	top: -20px;  
 }
.card__day {
  font-size: 2.56rem;
 }

.card__link-image:hover:before,
.card__link-image:focus:before  {
	color: #f57b07;
  }
.card__link-image {
  display: block;
  height: 126px;
}
.sidebar .card__link-image {
  min-height: 116px;
  height: auto;
}
.card__text {
  font-size: 1.5rem;
  line-height: 1.2;
  margin-top: 2rem;
  padding: 0 1.5rem 1.5rem 1.5rem;
}
.card__category {
  color: #aaa;
  font-size: 1.31rem;
  margin: 1rem 0 .25rem 0;
}

.card__title {
  font-family: 'Archivo Narrow', 'Arial', sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
}
.card__title-link {
    color: #4c4c4e;
}
.card__link-more {
  display: inline-block;
  margin-top: 2rem;
  position: static;
  width: 100%;
  text-align: right;
}
.card__button {
  display: inline-block;
}


/* video cards */
.card__video {
  position: relative;
}
 .card__video .card__date {
  background: #62a744;
 }
.card__video .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #62a744;
  max-height: 147px;
  position: relative;
 }
 
 .card__feature .card__link-image {
  border-top: none;
 }
 
 /** create backround circle for play button **/
.card__video .card__link-image:after {
	background-color: #62a744;
	border: 3px solid #fff;
	border-radius: 50%;
	width: 5.2rem;
	height: 5.2rem;
	color: #fff;
	margin: 0;
	padding: 0;
	position: absolute;
	  top: 30%;
	  left: 40%;
	text-align: center;
    vertical-align: middle;
	z-index: 9; 
  }
  /** create arrow for play button **/
  .card__video .card__link-image:after {
	color: #fff;
	content: '\f04b'; /* play button icon */
	font-family: 'Font Awesome 5 Pro';
	font-size: 2.8rem;
 font-weight: 900;
	margin: 0;
	padding: 2px 0 0 5px;
	text-align: center;
    vertical-align: middle;
	transition: all .6s;
	z-index: 10; 
  }
  
  .card__video .card__link-image:hover:after,
  .card__video .card__link-image:focus:after {
	background: #F47B20;
	box-shadow: 2px 2px 3px rgba(0,0,0,.2);
  }

/* event cards */
.card__event.card__no-image,
.card__event .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #f57b07;
}
.event__date,
.event__location {
  font-weight: 400;
  display: block;  
}

/** card no image ***/
.card__no-image .card__text {
  margin-top: 0;
}

/* article cards */

.results__item.card__no-image,
.card__pr.card__no-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #b9b9ba;
}

.card__article.card__no-image,
.card__article .card__link-image {
  border-top: 20px solid #005596;
}


/* press release cards with image */

.card__pr .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #b9b9ba;
  max-height: 147px;
  position: relative;
 }


/* Twitter card */

.card__twitter {
    border-radius: 5px 5px 0 0;
}

#twitter {
  height: auto;
}
#twitter .card__title {
  background: #0072ce;
  border-radius: 5px 5px 0 0;
  padding: 1rem 2rem;
}
#twitter .card__title a:after {
    color: #fff;
  	content: '\f099'; /* twitter icon */
	font-family: 'Font Awesome 5 Brands';
	font-size: 3rem;
 font-weight: 900;
	position: absolute;
		right: 2rem;
		top: 1px;	
	vertical-align: middle;
}
.card__twitter a {
  color: #fff;
}

@supports (display: flex) {
 #twitter .card__title {
  margin-bottom: 0;
 }
 #twitter-feed {
  padding-top: 1rem;
 }
}

/** card links **/

.card .link__more:after,
.card .button:after {
	font-size: 1.5rem;
}


/* Homepage news cards (.news) and News and Events page cards (.news__cards)*/

/*** Homepage featured news ***/
.news--home {
  width: 100%;
}
.news__heading-content {
  line-height: 3;
  margin-bottom: 3rem;
  overflow: auto;
  text-align: center;
}
.news--home .column.card {
  background: #fff;
  display: inline-block;
  min-width: 180px;
  text-align: left;
  width: 100%;
}
.news--home .card__text {
  padding-top: .5rem;
}

@supports (display: flex) {

 .news--home .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
 }
 .news--home .column.card,
 #twitter {
   margin: 1.6rem;
   width: 265px;
  }
 }



/*** News 'read more' links ***/
.news__link-more {
  margin-bottom: 1rem;
  position: absolute;
	bottom: 0;
	right: 10px;
}


/*** Feature cards - content pages ****/

.card.category__feature,
.column.card__sidebar {
  display: inline-block;
  float: none;
  height: auto;
  vertical-align: top;
  width: 100%;
}
.category__features {
  margin-top: 3rem;
}



.card__feature-title {
  margin-top: 1.5rem;
}


/*** Feature/Sidebar cards - content pages ***/

.card__feature-title,
.sidebar .card__title {
  font-family: "Archivo Narrow", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.9rem;
  font-weight: normal;
}
.sidebar .card__title-link,
.card__feature-title a {
  color: #005596;
}
.card__feature-title a:hover,
.card__feature-title a:focus,
.sidebar .card__title-link:hover,
.sidebar .card__title-link:focus
{
  color: #f57b07;
}

/*** cards with icons instead of image ***/
.card__icon {
  padding: 1rem;
}
.card__icon > * {
  text-align: center;
}
.card__icon-title {
  line-height: 1.2;
}
.card__icon-title .card__title-link {
  color: #f57b07;
  font-family: "Oswald", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.card__icon-title .card__title-link:hover,
.card__icon-title .card__title-link:focus {
  color: #005596;
}

.card__link-icon {
  background: #f57b07;
  border-radius: 60px;
  box-shadow: 0px 0px 1px rgba(102,102,102,.2);
  color: #fff;
  display: block;
  font-family: 'Font Awesome 5 Pro';
  font-size: 2.2rem;
  font-weight: 900;
  line-height: 1.7;
  margin: 1rem auto 0 auto;
  height: 40px;
  position: relative;  
  vertical-align: middle;
  width: 40px;
}
.card__link-icon:hover,
.card__link-icon:focus {
  background: #005596;
}
.card__blurb {
  color: #888;
  margin-bottom: 0;
  text-align: left;
}
.card__link-icon + .card__text {
  margin-top: 1rem;
}
.card__icon .card__blurb {
  text-align: center;
}
.card__blurb-subtext {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.2;
  margin-top: .5rem;
}
/*** Cards with only text (no icons or image) ***/

.card--text-only {
  margin: 0 0 1rem 0;
  padding: 2rem;
}




  /*  Footer
--------------------------------------------- */

footer {
  background: #ebedec;
  padding: 5rem;
  text-align: center;
} 
.menu__container {
  max-width: 1200px;
}
.menu__footer {
  float: left;
  font-size: 1.5rem;
  list-style: none;
}
footer .menu--secondary {
    font-size: 1.5rem;
}
.menu__utility {
  margin: 0;
}
footer .menu__footer-sub {
  display: none;
  margin: 0 0 1rem 1rem;  
}
#footer-bar__top {
  margin-bottom: 1rem;
}
#footer-bar__bottom {
  display: block;
  text-align: center;
}


.address {
  margin-top: 0;
}
.copyright {
  font-size: 1.2rem;
  width: auto;
}



/*** Videos ***/

.video__wrapper {
	margin: 4rem 0;
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
}
.video__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}



  
  
   
/*==============================================/  
	
	4: Pages
	
============================================= */

  /*  Homepage adjustments
--------------------------------------------- */
   
.home h2:not(.mission__heading),
.home h3  {
  color: #005596;
  font-weight: 700;
}
.mission__heading {
  color: #fff;
  font-family: "Oswald", Arial, sans-serif;
  font-size: 2.0rem;
  max-width: 650px;
}

.hero__heading-subtext {
  display: block;
  font-size: 2.7rem;
}
.home h3 {
  color: #62a744;
  font-family: "Oswald", Arial, sans-serif;
  font-size: 3.0rem;
}
.home h4 {
  color: #62a744;
}

 
 /** Homepage Listings Search Callout **/
 
 .listings__search-bar {
  background: #f47b20;
  border-top: 4px solid #fff;
  border-bottom: 4px solid #fff;
  display: table;
  padding: 2rem 5rem 1.5rem 2rem;
  overflow: auto;
  width: 100%;
 } 
.listings__search-bar-wrap {
  display: inline-block;
}
input[type="text"].listings__search-bar-input {
  width: 280px;
}
.listings__search-bar-button {
  border: 1px solid #d1d1d1;
  font-size: 1.5rem;
  line-height: 1;
  margin-left: -.5rem;
  padding: 0 2rem;
}
.listings__search-bar-blurb {
  color: #fff;
  font-size: 1.9rem;
  line-height: 4.8rem;
  margin: 0 3rem 0 4rem;
  vertical-align: middle;
 }
.link__app-badge {
  display: inline-block;
  margin-bottom: 3rem;
 }
 
 /** Homepage App Promo **/
.home h2.callout__app-heading {
  color: #fff;
  font-weight: 500;
 }

/** Homepage Testimonials **/

#testimonials {
  margin-top: 8rem;
  width: 90%;
}
#testimonials:before {
  color: #62a744;
  content: '“';
  font-size: 15rem;
  position: absolute;
  text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.2);
  top: -65px;
  left: 0;   
 }
.testimonials:before {
  color: #62a744;
  content: '”';
  font-size: 15rem;
  margin-bottom: 3rem;
  position: absolute;
  text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.2);
  bottom: -170px;
  right: -15px; 
  }
.testimonial:not(:last-child) {
	border-bottom: 1px solid #ebedec;
	}
.testimonial__quote,
.feature__heading {
  color: #4c4c4e;
  font-size: 1.8rem;
  font-family: "Oswald", Arial, sans-serif;
 }


 .news--home {
  clear: both;
 }


  /*  Main content pages
--------------------------------------------- */

.title__container {
  position: relative;
}
.title__heading,
.news__title {
  color: #888;
  font-size: 2.6rem;
  font-family: "Oswald", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  margin: 0;
  padding: 1rem 5rem;
  text-align: center;
  transition: all;
  width: 100%;
  z-index: 20;
}

.main__text {
  padding-bottom: 4rem;
}
.main__text h3 {
  font-family:   "Archivo Narrow", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.main__text section:not(:first-child) {
  margin-top: 4rem;
}
.main__text p:first-child {
  margin-top: 0;
}
.main__text img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
}
.main__text .image--align-left {
  margin: 0;
  text-align: left;
}
.main__text .image--float-right img {
    margin: 0 0 2rem 0;
}
.main__text .image--push-top-bottom {
  margin: 4rem 0;
}
.main__text .image--app-icon {
  margin-bottom: 2rem;
}

/** use this class for small images floated in content (such as cert marks) **/
.main__text .image--float-right {
  float: right;
  margin: 1rem;
}
.main__text .image--float-left {
  float: left;
  margin: 1rem 1rem 1rem 0;
}


/*** application steps ***/

.step-counter {
  	margin-bottom: 4rem;
}
.step {
    display: table-cell;
	padding: 2rem;
	font-weight: 300;
	line-height: 1.2;
	vertical-align: top;
	width: 100%;
}
.step-counter > li {
  box-shadow: inset 0px 1px 5px 3px rgba(0,0,0,0.3);
  color: #fff;
  counter-increment: step-counter;
  display: table;
  line-height: 1;
  margin: 1rem 0;
  padding: 0 1rem;
}
.step-counter > li:nth-child(1) {
  background-color: #09834f;
}
.step-counter > li::before {
  border-right: 10px solid #fff;
  display: table-cell;
  padding: 2rem .5rem 0 1rem;
  vertical-align: top;
}
.step-counter > li:nth-child(1)::before {
  content: url('../images/step-1.png');
}
.step-counter > li:nth-child(2) {
  background-color: #62a744;
}
.step-counter > li:nth-child(2)::before {
  content: url('../images/step-2.png');
}
.step-counter > li:nth-child(3) {
  background-color: #8dc63f;
}
.step-counter > li:nth-child(3)::before {
  content: url('../images/step-3.png');
}
.step-counter > li:nth-child(4) {
  background-color: #6caddf;
}
.step-counter > li:nth-child(4)::before {
  content: url('../images/step-4.png');
}
.step-counter > li:nth-child(5) {
  background-color: #005596;
}
.step-counter > li:nth-child(5)::before {
  content: url('../images/step-5.png');
}
.step__name {
  font-size: 2.4rem;
  font-weight: 700;
  text-transform: uppercase;
}





/*** Listings Pages ***/

.filter__intro {
  margin-bottom: 2rem;
}

.results__intro {
  overflow: auto;
}
.form__block-description + form {
  margin-top: 2rem;
}
.results__filter {
  padding-top: 1rem;
}
.results__container {
  clear: both;
  overflow: auto;
}
.results__list {
  clear: both;
  list-style: none;
  margin-top: 3rem;
}
.results--border-all-sides li {
  border: 1px solid #005596;
  margin-bottom: 2rem;
}
.listng-results__item {
  border-bottom: 1px solid #b9b9ba;
  clear: both;
  /*overflow: auto;*/
  overflow: hidden;
  padding: 1rem 0;
  vertical-align: middle;
}
.results__family .results__item-last {
  border-bottom: none;
}
.listng-results__item p {
  margin: 0 0 0 1rem;
}

.main__text .results__image {
  clear: both;
  display: inline-block;
  height: auto;
  max-width: 70px;
  vertical-align: middle;
  width: 70px;
}
.listng-results__item.image--none a:before {
  content: '';
  display: inline-block;
  width: 70px;
}
.listing__product-text {
  display: inline-block;
  vertical-align: middle;
}

.results__item-link {
  color: #4c4c4e;
  display: block;
  padding: 2rem;  
}

.result__product {
  font-size: 3.6rem;
}
.listng-results__item a {
  position: relative;
  width: 100%;
}
.results__product-name {
  font-size: 2rem;
  margin-bottom: 0;
  transition: color .6s;
}
.results__company-name {
  color: #4c4c4e;
  margin-top: 0;
}
.results__product-date {
  color: #4c4c4e;
}
.listng-results__item .results__product-total {
  display: inline-block;
  float: right;
  font-size: 2rem;
  margin: 2rem 0 0 5rem;
}
.listng-results__item .results__product-total:after,
#results-filter h5:before {
  content: '\f107';
  font-family: 'Font Awesome 5 Pro';
  margin-left: 2rem;
}
#results-filter h5:before {
 font-weight: 400;
  margin: 0 1rem 0 0;
}
.listng-results__item .minus .results__product-total:after,
#results-filter .minus h5:before {
  content: '\f106';  
}

.listng-results__item .results__dateadded {
  display: inline-block;
  float: right;
  margin: 2rem 0 0 5rem;
  color: #4c4c4e;
}


#results-filter a {
  padding: 0;
}
#results-filter h5 {
  margin-top: 1rem;
  padding: .5rem 0;
  width: auto;
}
#results-filter ul {
  margin: 0 0 0 2rem;
}



.product__page-title {
  box-shadow: none;
  margin-bottom: 4rem;
  padding: 0;
  position: static;
}



/*** Resource Library ***/
.intro__text {
  padding-bottom: 3rem;
}
.results--border-bottom li {
  padding: 2rem 0;
}
.results--border-bottom li:first-child {
  padding-top: 0;
}
.results--border-bottom li:not(:last-child) {
  border-bottom: 1px solid #d7e6b6;
}
.result__title {
  margin: 0;
}

.result__subtitle {
  color: #888;
}
.results__pipe {
  color: #f57b07;
  display: inline-block;
  padding: 0 .5rem;
}

.results__sidebar {
  margin-top: 3rem;
}

/*** Listing Detail ***/

.section__listing {
  padding-bottom: 3rem;
}
.details__container {
  margin-top: 3rem;
}
.details__company span {
  color: #4c4c4e;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
}
.details__company {
  color: #f57b07;
}
.details__address {
  font-size: 1.8rem;
}


/** Product Detail Table **/
.results__product-details th {
  width: 20%;
}
.results__product-details td {
  width: 80%;
}




/*** News and Events ***/

.search__intro {
  padding: 0 2rem 3rem 3rem;
}
.search__intro .button {
  border-radius: 5px;
}
.select__group:not(:last-child) {
  margin-bottom: 2rem;
}
.news__cards {
  padding-top: 3rem;
}
.news__cards .card__text {
  padding-top: 1.5rem;
}


/*** News PR template ***/
.news__subtitle-container {
  background: #eef0ef;
}
.news__subtitle-container .container {
  padding: 0;
}
.news__subtitle {
  color: #888;
  font-size: 2.9rem;
  margin: 0;
  padding: 1.5rem 0;
  text-align: center;
}
.subtitle--left {
  color: #888;
  text-align: left;
}
.news__media-container {
  margin: 5rem 0;
}
.news__media-container figure {
  margin: 0;
}
.news__text .news__feature-image {
  margin: 0;
}


/*** Contact Us ***/

.contact__address {
  margin-top: 0;
}
.phone__toll-free {
  margin-left: 2.25rem;
}
.checkbox {
  line-height: 1;
  margin-top: 3rem;
}


/*** 404 Page Styling ***/

.error__subtitle {
  color: #888;
  font-size: 2.9rem;
  padding: 0;
}
.error__text {
  font-size: 2.4rem;
}

/*** Search Results Page ***/

.search__result:not(:first-child) {
    margin-top: 2rem;
}
.search__result {
  padding-bottom: 2rem;
}



.result_pages {
  padding-top: 2rem;
}

/*** Staff Bios ***/

.bios {
  position: relative;
}
.bio * {
  outline: none;
}
.bio:first-child,
.bio:nth-child(5) {
  margin-left: 0;
}
.bio.columns.three {
  display: inline-block;
  float: none;
  height: auto;
  max-width: 196px;
  margin-bottom: 4rem;
  width: 21%;
  vertical-align: top;
}
.bio__name {
  font-size: 1.8rem;
  line-height: 1;
  margin: 1rem 0 0 0;
}
.bio__title {
  color: #888;
  font-size: 1.6rem;
  margin: 0;  
}
.bio__link {
  font-size: 1.3rem;
}
.bio__text {
  color: #4c4c4e;
}
.bio:hover,
.bio:focus {
  opacity: .9;
}
.bio p {
  color: #005596;
  margin-top: .5rem;
  transition: color .6s;
}
.bio:hover p,
.bio:focus p {
  color: #f57b07;
}



/*** Individual Bio Pages ***/
.bio__individual-name {
  margin-bottom: 0;
}
.bio__individual-title {
  color: #888;
}
.main__text .bio__individual-image {
  margin-left: 2rem;
}
.bio__individual-text {
  margin-top: 0;
}


/*** Sitemap ***/

.sitemap ul ul {
  font-size: 100%;
  margin: 0 2rem;
}







/*==============================================/  
	
	5: State Rules
	
============================================= */


/*=========== EXPANDABLE (SHOW/HIDE) CONTENT =========== */

.content__show-hide {
  display: none;
  margin: 0;
  padding: 0;  
}
.container--expandable .plus,
.container--expandable .minus {
  position: relative;
}
.expandable--small-link {
  margin: 2rem 0 0 -1rem;  
}

.container--expandable .listng-results__item:last-child {
  border-bottom: none;
}










/*=========== STICKY HEADER  =========== */
/* For devices larger than main grid */


@media (min-width: 1244px) {
  
	  main {
		padding-top: 165px; /* componsates for height of fixed header */
		position: relative;
	  }

	  header {
		background: #fff;
		position: fixed;
		width: 100%;
		z-index: 200;
	  }
	  header,
	  .logo__image,
	  .logo__text{
		transition: all .6s;
	  }
	  header.js-sticky {
		padding-top: 1rem;
	  }
	  header.js-sticky .logo.five {
		margin: -1rem 0;
	  }
	  header.js-sticky .logo__link {
		margin-bottom: 0;
	  }
	  header.js-sticky .logo__image {
		height: auto;
		margin-bottom: 2rem;
		width: 200px;
		}
	  header.js-sticky  .logo__text {
		line-height: 50px;
	  }
	  header.js-sticky .search__submit-site {
		width: 36px;
	  }
	  header.js-sticky .seven.columns {
		margin-top: .5rem;
	  }
	  
	  .button__cta-ghost {
		margin-right: 4rem;
	  }
	  

	  
	  
}

/*==============================================/  
	
	6: Media Queries
	
============================================= */


/*=========== LARGER THAN =========== */


/* Larger than Mobile */
@media screen and (min-width: 450px) {
 
  @supports (display: flex) {
   #twitter {
     height: 466px;
     overflow: hidden;
   }
   #twitter-feed {
    overflow-x: hidden;
    overflow-y: scroll;
    height: 100%;
   }
  }
 
}



/* Larger than a Phablet */
@media (min-width: 550px) {
 
 
	    /*** Base style adjustments ***/		
		
		h2 { font-size: 3.2rem; }
		h3 { font-size: 2.6rem; }
		h4 { font-size: 2.1rem; }
		h5 { font-size: 1.8rem; }
		h6 { font-size: 1.3rem; }
		
		
		/*** Grid adjustments ***/		
		
		.column,
		.columns {
		  float: left;
		}
		.columns.column--single-centered {
		  float: none;
		}
		.column.card:nth-child(even) {
		  margin-left: 4%;
		}
		
		/** Homepage adjustments **/
		
		.listings__search-bar-button:before {
		  content: 'Search Products ';
		}
  
    @supports (display: flex) {
    .news--home .column.card,
    .news__cards .card {
      margin: 1.6rem;
      min-height: 0;
    }
  }
		
		
		/*** Card adjustments ***/		
		
		.news--home {
		  width: 100%;
		}		
		.card.category__feature:nth-child(2n) {
		  margin-left: 0;
		}
		.card.category__feature,
		.card.news__feature {
		  width: 46%;
		}		
		.column.card.news__feature:not(:first-child) {
		  margin-left: 2%;
		}
		
		
		/*** News Landing Page adjustments ***/
		
		.news--home .column.card:not(.card__icon),
		.news__cards .card {
		  height: auto;
		  min-height: 450px;
		}		
		.news--home .card__icon {
		  height: auto;
		}	   
	   .column.card.news__feature:nth-child(1) {
		  margin-left: 2%;
	   }
		
		/*** Search form adjustments ***/
		
		.search__form input {
		  display: inline-block;
		  width: 60%;
		}
		

		
		/** add aditional text to search button on larger screens **/
		.button__news-search:before {
		  content: "Search News & Resources";
		}		
		.button__listings-search:before {
		  content: "Search NSF Certified for Sport Listings";
		}		
		button:not(.search__submit-site) {
		  width: auto;
		}
		button.width--full {
		  width: 100%;
		}
		button.keyword__button {
		  width: 35%;
		}
		

		/*** main content buttons ***/
		
		.button__main-content + .button__main-content {
		  margin-left: 2rem;
		}
		
		.main__text-container.width--full {
		  margin-left: 0;
		}
		
	
		#results-filter .list--form {
		  column-count: 2;
		  column-gap: 5rem;
		}
		
		
		.product__column .button--remove {
		  padding: 0 2rem 0 .25rem;
		}
		

}




/* Larger than  a Tablet */
@media (min-width: 769px) {
 
 
		/*** Header grid adjustments ***/
		header .row:first-child {
		  padding: 0;
		}  
		header .five.columns,
		header .seven.columns {
		  width: auto;
		}
		
		
		#search-section {
		  width: 30%;
		}
  header .search-msg .error {
   background: #fff;
   border: none;
  }
		 
		/**** Full Header Navigation ****/
		
		#mobile-header {  
			display: none;
		}
		#full-header,
		nav,
		.menu, 
		#search-section {
		  display: block;
		}
		#site-search input {
		  width: 280px;
		}
		.search__submit-site {
		  margin: 0 4rem 0 -1px;
		}
	   #full-header nav {
		  line-height: 10px;
		  text-align: center;
		}
		#full-header .menu {
		  display: inline-block;
		  float: none;
		  margin: 0;
		}
		#full-header .menu__sub {
		  text-align: left;
		 }
		#full-header nav ul {
		  margin-right: 5rem;
		}
		nav li {  
		  display: inline;  
		  float: left;
		}

		.menu > li {
		  margin-right: 2rem;
		}
		.menu li:last-child {
		  margin-right: 0;
		}
		nav .menu__parent {
		  position: relative;
		}		
		nav .current {
		  cursor: text;
		}
	  
		/* Display Dropdowns on Hover */
		#full-header  nav .menu__parent:hover > ul,
		#full-header  nav .menu__parent:focus > ul,
		nav .menu__parent:hover > ul,
		nav .menu__parent:focus > ul {
			display: block;
		  }	
		  /* Fisrt Tier Dropdown */
		#full-header nav ul ul li {
			float: none;
			display: list-item;
			margin-right: 0;
			padding-right: 0;
		  }
		#full-header nav ul ul li:hover,
		#full-header nav ul ul li:focus {
			background: #0072ce;
		   }
		#full-header nav .current,
		#full-header nav .js-clickable {
			background: #0072ce;
		}
		#full-header nav .js-clickable:hover,
		#full-header nav .js-clickable:focus {
			background: #888;
		}
		
		.menu__sub {
			background: #888;
			box-shadow: 3px 3px 5px 0px rgba(102,102,102,.2);
			float: none;
			height: auto;
			list-style: none;
			margin: 0;
			position: absolute;
			  top:  48px;
			  left: 0;
			width: 500px;
			z-index: 2000;
		}
		  
		  
		/** Show Breadcrumb Navigation **/
		#breadcrumb-nav {
		  display: block;
		}
		.menu--breadcrumb {
		  background: #ebedec;
		  color: #888;
		  list-style: none;
		  margin: 0;
		  overflow: auto;
		  padding: 1rem 0 1rem 5rem;
		}
  .menu--breadcrumb ol {
    list-style: none;
  }
		.menu--breadcrumb li {
		  float: left;
		  margin-right: 1rem;
		}
		.menu--breadcrumb li a:after {
		  color: #888;
		  content: " >";
		  margin-left: 1rem;
		}
		.menu--breadcrumb .current {
		  color: #4c4c4e;
		  font-weight: 700;
		}
		

		
	  /*** Homepage adjustments ***/
	  
		.listings__search-bar-button:before {
		  content: 'Search Certified Products';
		}
	  
		.mission__heading {
		  padding: 0 5rem;
		}
		#mission .hero__text {
		  position: absolute;
			top: 30%;
		  vertical-align: middle;
		  width: 100%;
		}
					  
		#testimonials:before {
		  font-size: 30rem;
			top: -155px;
			left: -20px;   
	   }
	   /** IMPORTANT: even though this quote comes after must use :before due to bug in IE - works in all browsers **/
		.testimonials:before {
		  font-size: 30rem;
		  margin-bottom: 3rem;
		  bottom: -255px;
		  right: -50px; 
		}	 
  @supports (display: flex) {
      #testimonials .row {
       display: flex;
      }
  }
		.testimonials {
		  padding: 1rem 20px;
		}
		.testimonials .testimonial {
		  border-bottom: none;
		  border-right: 1px solid #ebedec;
		  padding-right: 2%;
		  margin-left: 2%;
		}
		.testimonial:last-child {
		  border-right: none;
		 }

		 
	   .hero__img,
	   .hero__text-wrap {
		  display: block;
		}		
	   .hero__heading,
	   .hero__text-wrap,
	   .feature__text,
	   .news--home .column.card {
		  width: 100%;
	   } 		

		
		/*** Card Adjustments ***/
		
		.card {
		  display: inline-block;
		  float: none;
		  text-align: left;
		  vertical-align: top;
		}		
		.column.card:not(:first-child) {
		  margin-left: 2%;
		}
		.column.card {
		  padding: 0;
		}
		
			
		
		/*** Footer Adjustments ***/
		footer {
		  text-align: left;
		}
		footer .menu__parent {
		  float: left;
		  width: 48%;
		}		
		footer .menu li {
		  display: inline-block;
		}
		footer .menu__footer-sub {
		  display: block;
		}
		.copyright {
		  float: left;
		  margin-top: .5rem;
		}
		
		
		/*** Main Content Page Adjustments ***/
		
		/*** Page title adjustments ***/
		
		.title__heading {
		  position: absolute;
			top: 0;
		  text-align: left;
		}		
		.title--no-image {
		  padding: 0;
		  position: static;
		}
		
		/*** Navigation adjustments ***/
		
		.nav__local a {
		  padding: .5rem 0 .5rem 2.75rem;
		}
		.current__section > a,
		.current__section strong {
		  padding: 0 0 .5rem 1rem;
		}
		.current__section > a,
		.current__section .current > a,
		.nav__local .js-clickable {
		  font-weight: 700;
		}
		.current__section .current > a {
		  color: #4c4c4e;
		}
		.nav__local .current,
		.nav__local li a:not(.current):hover,
		.nav__local li a:focus,
		.nav__local-parent a:not(.current):focus > a:before,
		.nav__local-parent a:not(.current):hover > a:before {
		  color: #f57b07;
		  background: #fff;
		}
		.nav__local .current {
		  color: #4c4c4e;
		}
		.nav__local li a {                                    
		  transition: color .3s;
		}
		.nav__local-sub {
		  border-top: 1px solid #ebedec;
		}

				
		/*** Grid Adjustments ***/
		
		.filter__container.columns,
		.search--sidebar.columns,
		.nav__local-container.columns,
		.news__sidebar,
		.contact {
		  margin-left: 0;
		  width: 25%;
		}	
		.main__text-container.columns,
		.search__intro.columns {
		  width: 67%;
		  margin: 0 0 0 4%;		  
		}
		
		
		.width--full,
		.width--full.columns {
		  margin-left: 0;
		  width: 100%;
		}

		.main__text.columns {
		  margin-left: 0;
		}
		
		.six.column--single-centered {
		  transition: all .6s;
		  width: 85%;
		}
		
		/* exception for form columns */
		
		form .six.columns {
		  width: 48%;
		}
		form .six.columns:not(:first-child) {
		  margin-left: 4%;
		}
		



		/*** Listings adjustments ***/
		

		#results-filter .list--form li {
		  display: table;
		  text-align: left;
		}
		#results-filter .list--form li * {
		  display: table-cell;
		  text-align: left;
		}
					
		#results-filter {
		  padding-left: 2rem;
		}
		  #results-filter .list--form {
		  column-count: 1;
		  column-gap: 5rem;
		}
		
		
		
		/*** compare ***/
		
		.product__column:not(:last-of-type) {
		  padding-right: 2rem;
		}
		
		.product__column .button--remove {
		  padding: .25rem 2rem .25rem .25rem;;
		}
		
		
		
		
		
		
		.menu__sort li {
		  font-size: 1.8rem;
		}
		.menu__alpha li {
		  font-size: 1.4rem;
		}
	  
	  
		/** Form adjustments **/
		
		.select__group,
		.filter__container .button {
		  width: 100%;
		}

		.filter a {
		  padding: 1rem;
		}
		.dropdown__group {
		  margin-bottom: 2rem;
		}
	  
	  
	

	  /*** News Item Pages ***/
	  
	.search__intro .button {
		  width: auto;
		}
		
	  
		#news-results-filter {
		  padding-bottom: 0;
		}

	  	#news-results-filter select,
		#news-results-filter .button {
		  display: inline-block;
		  width: auto;
		}
		#news-results-filter .four.columns:first-child {
		  width: auto;
		}
		
		.news__card-container {
		  float: right;
		}
	  
		
		.news__title {
		  position: static;
		}	  
		.main__text-container-news.columns {
			margin: 0 2%;
		}
		.news__sidebar {
		  float: right;
		}
		.news-heading__container {
		  padding: 3rem;
		}
		.news__subtitle-container h3 {
		  padding-left: 2rem;
		}
		
	  
		
	  /** Listings pages **/
	  
		.results__filter {
		  display: block;
		}
		
		carousel__links  {
		  margin-top: 1rem;
		}
		
  
   /* Site Search Results Adjustments */
  
  .search__results-page .main__content {
   padding-left: 0;
  }
		
		

}


@media (min-width: 835px) {  

	/** Grid adjustments **/
	
 .news--home .column.card {
	  width: 22%;
	}
	.column.card:not(:first-child) {
	  margin-left: 2%;
	}
 
 @supports (display:flex) {
  .news--home .column.card {
	  width: auto;
	}
 }
	
	/*** Cards with only text (no icons or image) ***/  
	.card--text-only {
	  padding: 2rem;
	}

	
	
}

/* Larger than Main Grid */
@media (min-width: 1244px) {
  
		/*** Instate utility functions when main content area is larger than grid width ***/
  
		.u-pull-right {
		  float: right;
		}
		.u-pull-left {
		  float: left;
		}
		.u-pull-up {
		  background: #fff;
		  margin-top: -10rem;
		}		
		.u-pull-up:not(.main__content) {
		  margin-top: -5rem;
		}
		
		/*** Instate main column functions when main content area is larger than grid width ***/
		.column,
		.columns {
		  margin-left: 4%;
		}
		.column:first-child,
		.columns:first-child,
		.form__container {
		  margin-left: 0;
		}
		
		.one-third.column             { width: 30.6666666667%; }
		.one-fourth.column 			  { width: 23.5%; }
		.one-fifth.column 			  { width: 16.6666666667%; }
		.two-thirds.column            { width: 65.3333333333%; }
		.one-half.column              { width: 48%; }
		

		
		
	  /*** Header adjustments ***/
		header .row:first-child {
		  padding: 0 5rem;
		}
		header .logo.five {
		  margin: -2rem 0 1rem 0;
		}
		.logo__text {
		  line-height: 75px;
		}    
		.button__cta {
		  display: inline-block;
		  height: 48px;
		  line-height: 43px;
		  width: auto;
		}		
		#full-header .menu {
		  float: right;
		  margin-right: 5rem;
		}
		#search-section {
		  width: auto;
		}
		  
		  
		/** Homepage adjustments **/
	   
		#mission {
			margin-bottom: 0;
		}		
		#mission .hero__text {
			display: table-cell;
			position: static;
			vertical-align: middle;
		}
		.hero {
		  position: relative;
		}		
		.hero__heading,
		.feature__text,
		.hero__page-title {
		  position: absolute;
		 }
		.hero__heading,
		.feature__text {
		  padding: 5rem;
			top: 50%;
			bottom: auto;
		  transform: translateY(-50%);
		 }
		 .hero__heading {
		  font-size: 2.6rem;
		  padding: 0 0 0 8rem;
		  top: 40%;
		  width: 60%;
		 }
		.feature__heading {
		  font-size: 3.6rem;
		 }
		.feature__text {
		  font-size: 2.2rem;
		  max-width: 1000px;
		  padding: 3rem 5rem 3rem 3rem;
		  width: 69%;
		} 
		.feature .u-pull-right {
		 border-radius: 5px 0 0 5px;
		 right: 0;
		}				
		.image--cover {
		  clip: rect(0px, 3000px, 462px, 0px);
		}
		
		

		/*** Footer Adjustments ***/
		
	    footer .menu__parent {
		  width: 23.5%;
		}
		footer .menu__parent.last {
		  margin-right: 4%;
		}
		.menu__utility a {
		  padding-right: 0;
		}
/*		*/
		
		/*** Main Content Adustments ***/
		
		.title__heading,
		.news-heading__container {
		  font-size: 2.9rem;
		  padding: 2rem 5rem;
		}		
		.title--no-image {
		  padding: 0;
		}
		.main__text-container.columns,
		.search__intro.columns {
		  margin-right: 0;		  
		}
  

		

		
		.news-heading__container {
		  padding: 5rem 0 2rem 2rem;
		}
		.news__title {
		  padding: 0;
		}
		.news-details__date-category {
		  color: #888;
		  font-size: 1.8rem;
		}
		.news-details__date {
		  padding-right: .5rem;
		}
		.news-details__category {
		  padding-left: .5rem;
		}
		
		
  }


@media (min-width: 1200px) {
  
  
		/*** Column width adjustments on larger screens ***/
		.one.column,
		.one.columns                    { width: 4.66666666667%; }
		.two.columns                    { width: 13.3333333333%; }
		.three.columns                  { width: 22%;            }
		.four.columns                   { width: 30.6666666667%; }
		.five.columns                   { width: 39.3333333333%; }
		.six.columns                    { width: 48%;            }
		.seven.columns                  { width: 56.6666666667%; }
		.eight.columns                  { width: 65.3333333333%; }
		.nine.columns                   { width: 74.0%;          }
		.ten.columns                    { width: 82.6666666667%; }
		.eleven.columns                 { width: 91.3333333333%; }
		.twelve.columns                 { width: 100%; margin-left: 0; }
		
		.six.column--single-centered {
		  width: 52%;
		}
		
		
		header .five.columns {
		  width: 39.3333%;
		}
		header .seven.columns {
		  margin-left: 4%;
		  width: 56.6667%;
		}
	  
		/*** Hompepage adjustments ****/
		.search__submit-site {
		  margin-right: 6rem;
		}
		
		.mission__heading {
		  font-size: 6rem;
		}
		.hero__heading {
		   font-size: 2.5rem;
		   line-height: 1.2;
		   max-width: 650px;
		}		
		.hero__heading-subtext {
		  font-size: 3.7rem;
		}
		
		
		
		#breadcrumb-nav .current {
		  display: inline-block;
		  overflow: hidden;
		  text-overflow: ellipsis;
		  width: 900px;
		  white-space: nowrap; 
		}
		
		/*** sidebar card adjustments ***/
		
		.sidebar .card__link-image + .card__text {
		  margin-top: 0;
		}
		
		
		
		/** Listings **/
		
		.results__content-area {
		  margin-left: 4%;
		}		
		.product__contact {
		  padding: 4.5rem 0 0 4rem;
		}
		
	

}

@media screen and (min-width: 1360px) {
 .menu--breadcrumb {
   padding-left: 0;
  }
}



/*=========== SMALLER THAN =========== */

@media screen and (max-width: 450px) {
  

  
	/** Header adjustments **/
	header .logo {
	  padding: 0 1rem;
	}
	header .logo,
	header .logo__text {
	 line-height: 1.2;
	 margin-top: .75rem;
	 width: 50%;
	}
	header .logo,
	header #pull, .logo__link {
	   display: inline-block;
	   float: none;
	   margin: 0 auto;
	   text-align: center;
	 }
	 
	 #mobile-header .one-half:nth-child(2) {
	  float: none;
	  width: 100%;
	  text-align: center;
	}
	 
	
	
	/** Homepage adjustments **/
	
	.listings__search-bar {
	  padding: 2rem;
	}	
	input.listings__search-bar-input[type="text"] {
	  min-width: 150px;
	  width: 80%;
	}
	input.listings__search-bar-input[placeholder] {
	  font-size: 1.3rem;
   vertical-align: top;
	}
	
	.mission__heading {
	  padding: 2rem;	  
	}
	
	.testimonials {
	  padding: 1.5rem;
	}

	/** Search results button **/
	.results__menu .button {
	  padding: 1rem;
	}
	
	.bio p {
	  height: auto;
	}
 
 /**  Listings Detail **/
#compare__added .button--close {
  display: block;
  float: none;
  margin: 0 0 2rem 0;
 }
 

 

	

}

@media screen and (max-width: 550px) {
  
  .listings__search-bar-blurb {
	line-height: 1.2;
	margin: 2rem 0;
	}
  .listings__search-bar-button {
	min-width: 0;
	padding: 0 2rem 0 1.5rem;
	width: auto;
  }
  
  .product__column .button--remove::before {
	  display: none;
	}
	.product__column .button--remove {
	  padding: 1rem;
	  text-align: center;
	}
	
	.compare__table td {
	  padding: 1rem 2rem;
	}
 
  .product__column .button--remove,
 .comparison__button {
  max-width: 100%;
 }
 
  .compare__title-container + .main__text-container .main__text p {
   padding: 0 2rem;
 }
 
 @supports (display: flex) {
  .comparison__group .product__column {
    padding: 0 1rem;
    padding-right: 0 1rem;
   }
 }
  
}


/* Smaller than Tablet */
@media screen and (max-width: 769px) {
  
	  /** Base style adjustments **/
	  h3 {
		color: #f57b07;
		font-size: 2.1rem;
		line-height: 1.3;
		}
	  h4 {
		font-size: 1.9rem; 
		line-height: 1.35;
		}
	  h5 {
		font-size: 1.7rem;
		line-height: 1.5;
		}
	  h6 {
		font-size: 1.4rem;
		line-height: 1.6;
		}  

	    /*** Card adjustments ***/  
		.link__more,
		.news__link-more {
		  background-color: #fff;
		  border: 1px solid #d1d1d1;
		  border-radius: 5px;
		  box-shadow: none;
		  box-sizing: border-box;
		  display: inline-block;
		  float: none;
		  height: 46px;
		  line-height: 23px;
		  margin: 2rem 0 1rem 0;
		  padding: 1rem;
		  position: static;
		  width: auto;
		}		
		.news--home {
		  background: #f5f6f6;
		}
		.news__cards .card {
		  height: auto;
		  text-align: center;
		}
		
		
		
		
		/*** Header adjustments ***/
		header .five.columns,
		header .seven.columns {
		  margin: 0;
		  width: 100%;
		}		
		.logo__image {
		  float: left;
		  height: auto;
		  width: 200px;
		}	  
		.logo__text {
		  font-size: 1.4rem;
		  float: left;
		  line-height: 50px;
		  width: auto;
		}
		header .logo {
		  width: 68%;
		}
    header .search-msg .error {
   margin: 1rem auto;
   padding: 1rem;
   width: 87%;
  }
		
		#mobile-header .button__cta {
		  border-radius: 0 0 0 0;
		  line-height: 66px;
		  width: 100%;
		}
		
		#search-section {
		  width: 100%;
		}
		
		.listings__search-bar,
		.button__cta-ghost {
		  background: #0072ce;
		}
		

		footer {
		  padding: 0 0 2rem 0;
		}
		
		/*** Menu adjustments ***/

		.menu__footer,
		.nav__local-container {
		  background: #62a744;
		  width: 100%;
		}
		.menu__footer li,
		.nav__local li {
		  width: 100%;
		}
		.menu__footer li:not(:last-child),
		.nav__local li:not(:last-child),
		.current__section > a {
		  border-bottom: 2px solid #fff;
		}	
		.menu__footer a,
		.nav__local a {
		  color: #fff;
		  display: block;
		  font-size: 1.8rem;
		  line-height: 55px;
		  text-align: center;
		  text-transform: capitalize;
		}
		.nav__local .plus,
		.nav__local .minus,
		.nav__local .link--clear-all {
		  color: #005596;
		}
		
		.menu__footer .js-clickable,
		.menu__footer  .current {
		  background: #888;
		  color: #fff;
		  font-weight: 700;
		}
		.menu__footer  .current {
		  cursor: text;
		}
		.menu__footer li:hover,
		.menu__footer li:focus {
		  background: #888;
		  color: #fff;
		}

		.nav__local,
		.nav__local .current__section strong,
		.results__filter {
		  display: none;
		}
		.nav__local-sub li {
		  background: #d7e6b6;
		  padding-left: 0;
		}
		.nav__local-sub a {
		  color: #888;
		  transition: all;
		}
		.nav__local-parent.plus > a::before,
		.nav__local-parent.minus > a::before {
		  color: #fff;
		  margin-left: -1rem;
		  margin-right: 1rem;
		  position: static;
		}		

		#pull-local {
		  border-radius: 0;
		}
		#pull-local,
		#pull-filter {
		  border-left: none;
		  border-right: none;
		  display: block;
		  font-size: 1.8rem;
		  height: 66px;
		  line-height: 50px;
		  margin: 0;
		  padding: .5rem 1rem;
		  text-align: center;
		  width: 100%;
		}
		#pull-local:after,
		#pull-filter:after {
		  content: "\f107"
		}
		#pull-local.js-open:after,
		#pull-filter.js-open:after {
		  content: "\f106"
		}
		
		#pull-filter {
		  background: #62a744;
		  margin-bottom: 4rem;
		}
		
				/*** Filter adjustments ***/
				
				
		
		.filter__container {
		  background: #ebedec;
		  margin: 0;
		  padding: 0;
		  width: 100%;		  
		}
		.filter,
 		.form__container {
		  overflow: auto;
		  padding: 2rem;
		}
		.form__container {
		  padding-bottom: 0;
		}
		.select__group,
		.filter__container .button {
		  float: left;
		  width: 48%;
		}
		.filter__container .button {
		  clear: both;
		  font-size: 1.4rem;
		  line-height: 2.3;
		  padding: 0 1rem;
		  width: auto;
		}
		
		
		/* adjust for news page */
		.search__intro #pull-filter {
		  margin-bottom: 0;
		}
		
		
		nav li:hover,
		nav li:focus,
		nav .js-clickable,
		nav .current {
		  border-top: 0;
		  margin-top: 0;
		}
		
		/*** Homepage adjustments ***/
		
		header .row:first-child {
		  padding: 0 0 2rem 0;
		}
		.mission__heading {
		  background: #62a744;
		  border-bottom: 4px solid #fff;
		  color: #fff;
		  max-width: 100%;
		  text-align: center;
		  width: 100%;
		}
		
		.callout__content-wrap {
		  background: #fff;
		}
	  	.testimonials__heading {
		  margin-bottom: 0;
		}
		.feature__text {
		  padding: 2rem;
		}
		
		.callout__app-wrap {
		  background-image: none;
		}
		.link__app-badge {
		  margin-bottom: 0;
		}
  .callout__heading--large {
    font-size: 3.9rem;
}
		
	

		
		/*** Main content page adjustments ***/
		.main__content {
		  padding: 0;
		}
		.main__text-container {
		  margin: 0;
		  padding: 2rem 20px 0 20px;
		}
		.main__text-container .columns {
		  margin-left: 0;
		}
		
		
		/*** Lisitngs Keyword Search Field ***/
		
		.button--search {
		  content: '';
		}
		
		.results__intro h3 {
		  margin-bottom: 2rem;
		}
		.results__content-area {
		  padding: 2rem;
		}

		
		
		
		/*** Filter adjustments ***/
		
		.search__intro .button {
		  width: 100%;
		}
		.filter__container {
		  background: #ebedec;
		  margin: 0;
		  padding: 0;
		  width: 100%;		  
		}
		.filter,
 		.form__container {
		  overflow: auto;
		  padding: 2rem;
		}
		.form__container {
		  padding-bottom: 0;
		}
		.select__group,
		.filter__container .button {
		  float: left;
		  width: 48%;
		}
		
		.filter__container .button {
		  clear: both;
		  font-size: 1.4rem;
		  line-height: 2.3;
		  padding: 0 1rem;
		}
		.search__intro .button {
		  line-height: 44px;
		  height: 44px;
		  width: 100%;
		}
		.select__group:nth-child(2) {
		  margin-left: 4%;
		}
		.search__intro {
		  margin: 0;
		}
		
		.form__container .six {
		  margin-bottom: 2rem;
		}
		.button__resources-search {
		   max-width: 30rem;
		   min-width: 50%;
		}
		
		

	
		#results-filter .container--checkbox {
		  display: table;
		  text-align: center;		  
		  width: 100%;		  
		}		
		#results-filter .list--form {
		  display: inline-block;
		  width: auto;
		}
		
		
		
		
		/*** temp styling while 'type' group hidden (currently only have articles) ***/
		
		#news-keyword-search {
		  margin-bottom: 2rem;
		}
		#news-filter .select__group {
		  width: 100%;
		}
		#news-results-filter {
		  padding-bottom: 0;
		}
		#news-results-filter a {
		  border-radius: 5px;
		  margin-top: 1rem;
		}
		
		/** listings form adjustments **/
		
		.results__intro {
		  border-bottom: none;
		}
		.three.columns:not(:last-child),
  .four.columns:not(:last-child),
  .two.columns {
		   margin-bottom: 2rem;
		}
		
		.search--sidebar.columns {
		  background: #ebedec;
		  margin-left: 0;
		  padding: 0 2rem;
		}		
		.search--sidebar .form__block:last-child button {
		  margin-bottom: 2rem;
		}
		#compare__added .button--compare {
		  display: inline-block;
		  float: none;
		  margin: 2rem 0 4rem 0;
		}
		
	  /*** News detail page adjustments ***/
		.news-details__date-category {
		  text-align: center;
		}
		.news__subtitle {
		  font-size: 2.3rem;
		}
		.news__text {
			padding: 1rem;
		}
		.news__sidebar {
		  border-top: 1px solid #ebedec;
		  margin: 0;
		  padding-top: 3rem;
		}
		
		
		/*** Resources library adjustments ***/
		.result__type,
		.form__category {
		  font-size: 1.4rem;
		}
		.result__title {
		  font-size: 2.3rem;
		}
		.result__subtitle {
		  font-size: 1.8rem;
		}
		
		
		/*** Contact us ***/
		
		.contact {
		  background: #f5f6f6;
		  margin: 0;
		  padding: 2rem 0 1rem 0;
		  text-align: center;
		}
  

		
		
		
		.bios {
		  text-align: center;
		}		
		.bio.columns.three {
		  width: 50%;
		}
  
		
		/*** Individual Bio Pages ***/
		.bio__individual-name,
		.bio__individual-title {
		  text-align: center;
		}
		
		.main__text .bio__individual-image {
		  max-width: 194px;
		  width: 50%;
		  
		}
  

		
		/** Listing search pages **/
		
		#results-filter section:not(:last-of-type) {
			border-bottom: 1px solid #b9b9ba;
		}
		
		#sidebar-search h4 {
		  text-align: center;
		}
		
		.results__list {
		  margin-top: 0;
		}
		
		form {
		  display: table;
		  text-align: center;
		  width: 100%;
		}
		.form__elements-wrap,
		form .four.columns:first-child,
		form .four.columns:not(:first-child),
  form .three.columns:first-child,
  form .three.columns:not(:first-child),
  form .two.columns {
		  display: inline-block;
		  margin-left: 0;
		  width: 100%;
		}
		
		.form__dropdowns.row:not(:last-child) {
		  margin-bottom: 2rem;
		}
		
		
		.title--no-image {
		  margin-top: 2rem;
		}
		
		#sidebar-search {
		  padding-top: 4rem;
		}
		
  .carousel {
   margin: 0 auto;
  }
		.carousel__container {
		  background: #fff;
		}
		.carousel__links {
		  margin-bottom: 4rem;
		}

		
		
		
		.results__product-details th {
		  width: 30%;
		}
		.results__product-details td {
		  width: 70%;
		}
		.main__content {
		  padding-bottom: 4rem;
		}

	  /** Comparison Page adjustments **/
	  
		.comparison__group h3 {
		  font-size: 1.6rem;
		}
		.product__column:not(:last-child) {
		  padding-right: 2rem;
		}
		.comparison__group .product__column img {
		  width: 50%;
		}
		.comparison__group .product__label-link {
		  width: 100%;
		}
		.compare__title-container {
		  text-align: center;
		}
		#comparison-page-title {
		  float: none;
		  width: 100%;
		}
		#remove-all {
		  display: inline-block;
		  float: none;
		}
		.product__column .button--remove {
		  line-height: 44px;
		  min-height: 44px;
		}
		.product__column .button--remove::before {
    line-height: 40px;
		  margin: 2px 2rem 2px 0;
		  min-height: 44px;
    vertical-align: middle;
		}
  
  
  /** Use flexbox where we can to fix alignment **/
  @supports (display: flex) {
   
    .comparison__group .product__column img {
     flex: 1 1 auto;
     max-height: 100px;
     width: auto;
     }
     
     .compare__title-container + .main__text-container {
      padding: 2rem 0;
     }
     
     .product__column:not(:last-child) {
       padding-right: 1rem;
     }
     
  }
 
  

  
}


@media (max-width: 875px) {
  
	  /*** News card adjustments ***/
  
		.news--home {
		  margin: 0 auto;
		} 
		.news--home .column.card,
		.news__cards .column.card {
		  display: inline-block;
		  float: none;
		  height: auto;
		  vertical-align: top;
		}
		
		#full-header nav a,
		#full-header nav .current {
		  margin-left: .5rem;
		  padding: 0 .5rem;		  
		}
		#full-header nav .menu__parent-link::after {
		  font-size: 1.8rem;
		}
		
		.mission__heading {
		  font-size: 2.2rem;
		}
		.hero__heading-subtext {
		  display: block;
		  font-size: 3.5rem;
		  		}
		.callout--heading-large {
		  font-size: 3.9rem;
		}
		.callout__subtext--large {
		  font-size: 2.5rem;
		}
		
		
		
		
		
}


/* Smaller than Main Grid */
@media (max-width: 1244px) {
  
       /*** Header adjustments ***/
		#full-header  nav a,
		#full-header .current {
		  font-size: 1.5rem;
		}  
		header .five.columns,
		header .seven.columns {
		  margin-left: 0;
		  text-align: center;
		  width: 100%;
		}
		.menu > li {
		  margin-right: 0;
		}
		
		.logo__link {
                  height: 90px;
                }
		
		#search-section {
		  display: inline-block;
		  line-height: 48px;
		  margin: 0 4rem 2rem 0;
		  text-align: center;
		}
		#site-search input,
		.search__submit-site {
		  display: inline-block;
		  margin: 0;
		  width: 80%;
		  vertical-align: top;
		}
		.search__submit-site {
		  margin-left: -1rem;
		}
		
		.button__cta:not(.button__cta-ghost) {
		  display: inline-block;
		  height: 46px;
		  line-height: 44px;
		  width: auto;
		}
		.button__cta-ghost {
		  height: 44px;
		  line-height: 44px;
		}
		
		/*** homepage ***/
		
		.button__cta-ghost {
		  margin-right: 0;
		}
				/*** app promo adjustments ***/
		
		
		.callout__app-wrap {
		  background-position: 10% bottom;
		}
		.callout__content-wrap {
		  background: rgba(102,102,102,.3);
		  padding: 2rem 0;
		  transition: opacity;
		}
		
		
		.feature__text {
		  box-shadow: none;
		}

		.feature__heading {
		  font-size: 3rem;
		}
		.feature .hero__text-wrap-inner {
		  display: block;
		}
		
		.news__cards {
		  text-align: center;
		}
		
		
		
		/*** News item page adjustments ***/
		
		.news__title {
		  padding: 0;
		}
		.news__subtitle {
		  padding: 1.5rem 3rem;
		}
		
		#breadcrumb-nav .current {
		  display: inline-block;
		  overflow: hidden;
		  text-overflow: ellipsis;
		  width: 400px;
		  white-space: nowrap; 
		}
		

		footer .menu {
		  float: none;
		  text-align: center;
		}
		footer .menu li {
		  padding: 0 1rem;
		}	
		.copyright {
		  float: none;
		  text-align: center;
		}
		
		#results-filter label {
		  padding-left: 1rem;
		}
		
		
}
		
  

@media (max-width: 1200px) {
  
	    /*** when main content sidebar moves below content adjust styling ***/
		
  		.main__text-container .sidebar__container {
		  border-top: 1px solid #ebedec;
		  margin: 0;
		  padding-top: 3rem;
		}		
		.sidebar {
		  text-align: center;
		}
		
		.results__content-area {
		  margin-left: 0;
		}	   


}

@media (min-width: 550px) and (max-width: 1000px) {
  
  
	  /***  adjust sizing for play button on video cards ***/
	  .news__cards .card__video .card__link-image::before {
		top: 0;
	  }
}





/*==============================================/  
	
	7: Print Styles
	
============================================= */


@media print {
  
  
  body,
  .logo__link,
  .callout-text {
      background: #fff !important;
      color: #000;
      font: 13pt Georgia, "Times New Roman", Times, serif;
      letter-spacing: normal;
      line-height: 1.3;
    }
	
	h1, h2, h3, h4, h5, h6 {
	  font-weight: bold;
	} 
	h2, h3, h4 {
	  color: #000;
	  font-size: 14pt;
	  margin: 25px 0;
	}
	
	h3 + p {
	  margin-top: 50px;
	}

	ul li {
	  margin: 0;
	}
	
	* {
	  float: none;
	  font-size: 10pt;
	  letter-spacing: normal;
	  line-height: 20pt;
	}
	
    
    img {
	  max-width: 100% !important;
	}
  
  
  /*** font sizes ***/
    h1,
	.logo__link {
	  font-size: 16pt;
	}
  
	h3 {
	  font-size: 13pt;
	}

	h4 {
	  font-size: 12pt;
	}	
	.result__product {
	  font-size: 16pt;
	}	
	.result__company-name {
	  font-size: 14pt;
	}
	.news__subtitle {
	  font-size: 14pt;
	}
  
  
  /* Displaying link color and link behavior */
	a:link, a:visited, a,
	.button {
	  background: transparent;
	  border: none;
	  box-shadow: none;
	  color: #005596;
	  text-align: left;
	  font-weight: bold;
	}
	
	h1 a:link {text-decoration: none;}
	
	a[href^="http"]:after,
	a.button:after
	{
	  content: " (" attr(href) ") ";
	  font-size: 90%;
	}
	
	a[href^="#"]:after {
	 content: "";
   }
   
/* Defining all page breaks */
  a, img, blockquote,
   h1, h2, h3, h4, h5, h6,
   form {
	  page-break-inside: avoid;
  }
  
  h1, h2, h3, h4, h5, h6,
  img {
	   page-break-after:avoid;
	}
	
	
  	a, .button {
	  page-break-inside:avoid
	}
	table, pre { page-break-inside:avoid }
	ul, ol, dl  { page-break-before:avoid }
	
	
	/*** hiding unecessary elements for print ***/
	#full-header,
	#breadcrumb-nav,
	footer,
	.listings__search-bar,
	.nav__local-container,
	.title__image,
	.category__features,
	main + .callout--bright,
	.sidebar,
	.step-counter li:nth-child(1)::before,
	.step-counter li:nth-child(2)::before,
	.step-counter li:nth-child(3)::before,
	.step-counter li:nth-child(4)::before,
	.step-counter li:nth-child(5)::before,
	.timeline ul li:nth-child(2n+1) div::before,
	.timeline ul li:nth-child(2n) div::before,
	#keyword-search {
	  display: none;
	}

	.container::after, .row::after {
	  display: block;
	}
	
	.container,
	.step,
	.news-heading__container,
	.news__subtitle-container h3 {
	  padding: 0;
	}
	
	.main__content {
	  margin: 25px 0;
	  padding: 0;
	}
	


      
  /*** fix organic steps css "graphic" for print ***/
	
	.step__name {
	  font-size: 12pt;
	  text-transform: capitalize;
	}
	.bg--transparent,
	.step-counter li {
	  box-shadow: none;
	}  
	main-content .step-counter li:before {
	  content: '';
	}
 
  
  /*** columns and floats ***/
  .column, .columns {
	margin: 25px 0;
	float: none;
  }
  .main__text-container,
  .nine.columns,
  .container,
  .one-half.column,
  .one-third.column,
  .two-thirds.column,
  .nine.columns
  {
	width: 100%;
  }  
  .u-full-width {
	max-width: 90%;
  }
  .main__text .image--float-right,
  .main__text .image--float-left {
	  max-width: 40%;
	}

  
  
  /*** show hidden content ***/
	.content_show-hide {
	  display: block;
	}
	
	.results--border-all-sides li {
	  border: none;
	  padding: 0;
	}
	
	 
	 .title__heading,
	 .news-heading__container {
	  padding-left: 0;
	 }


	
	
	
	
  
  
  /*** form print styles ***/
  
	input[type="email"],
	input[type="number"],
	input[type="search"],
	input[type="text"],
	input[type="tel"],
	input[type="url"],
	input[type="password"],
	textarea,
	select {
	  border-bottom: 1px solid #d1d1d1;
	  border-top: none;
	  border-left: none;
	  border-right: none;
	  color: #000;
	  height: auto;
	  padding: 0;
	  width: 90%;
	}
	
	
	

 
/** Setting margins */       
@page { margin: 2cm }
	
	
	
}










