/****************************************************************************************
* 
* Generic
* 
****************************************************************************************/

.l-page-wrap {
	max-width: 820px;
	margin: 0 auto;
	padding: 6em calc(1em + 1.33vw) 10em;
}

.l-page-wrap--narrow {
	max-width: 1020px;
}

/****************************************************************************************
* 
* List
* 
****************************************************************************************/

.partner-list-page {
	background-image: url(https://www.employerpass.com/hubfs/Graphics/EmployerPass-Request-a-Quote-Page-v4-Plane.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: repeat-x;
	background-attachment: fixed;
}

.partner-list {
	display: grid;
	gap: 2.33em 1.66em;
	padding: 2em;
	padding-bottom: 22em;
}

@media (min-width: 690px) {

	.partner-list {
		grid-template-columns: repeat(2, 1fr)
	}

}

@media (min-width: 960px) {

	.partner-list {
		grid-template-columns: repeat(3, 1fr)
	}

}

.partner-card {
	display: flex;
	border: 8px solid #28ace2;
	border-right: 0;
	border-left: 0;
	border-radius: 9px;
	text-decoration: none;
	color: #444;
	padding: 1.33em;
	text-align: center;
	box-shadow: 0 2px 17px -7px rgb(51 51 51 / 0.33);
	transition: all 0.25s ease-in-out;
	background-color: #fff;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
}

.partner-card:hover,
.partner-card:focus {
	text-decoration: none;
	box-shadow: 0 6px 26px -9px rgb(51 51 51 / 0.66);
}

.partner-card__image {
	max-width: 15em;
	height: 9em;
	position: relative;
	padding-top: 1rem;
}

.partner-card__image-tag {
	display: block;
	height: 100%;
	width: 100%;
	object-fit: contain;
}

.partner-card__details {
    flex: 1;
	display: grid;
	grid-template-rows: auto auto 1fr;
	text-wrap: balance;
}

.partner-card__button {
    align-self: end;
}

.partner-card--best-in-class,
.partner-card--preferred,
.partner-card--standard {
	position: relative;
	padding-top: 2em;
}

.partner-card--best-in-class:before,
.partner-card--preferred:before {
	font-size: 0.88em;
	text-transform: uppercase;
	font-weight: bold;
	border-radius: 2em 6px 6px 2em;
	display: block;
	padding: 0.33em 0.66em;
	padding-left: 3.33em;
	background-position: left 0.22em center;
	background-repeat: no-repeat;
	background-size: contain;
	border-right: 0;
	position: absolute;
	top: 1em;
	right: -0.66em;
	z-index: 0001;
}

.partner-card--best-in-class {
	border-color: #F2C83B;
}

.partner-card--best-in-class:before {
	content: 'Best-in-Class';
	background-color: #F2C83B;
	background-image: url(https://www.employerpass.com/hubfs/Graphics/gold-stamp.png);
	border: 6px solid #F2C83B;
}

.partner-card--preferred {
	border-color: #E2E2E2;
}

.partner-card--preferred:before {
	content: 'Preferred';
	background-color: #E2E2E2;
	background-image: url(https://www.employerpass.com/hubfs/Graphics/silver-stamp.png);
	border: 6px solid #E2E2E2;
}

.partner-list-page {
	display: grid;
}

.partner-list-page {
	grid-template-areas: "hero" "options" "filters" "body";
}

@media (min-width: 960px) {

	.partner-list-page {
		grid-template-columns: 1fr 3fr;
		grid-template-areas: "hero    hero" 
			"options filters"
			"options body";
	}

	.partner-list-page__options {
		max-width: 360px;
	}

}

.partner-list-page__hero {
	grid-area: hero;
}

.partner-list-page__options {
	grid-area: options;
	min-width: 20vw;
}

.partner-list-page__active-filters {
	grid-area: filters;
}

.partner-list-page__list {
	grid-area: body;
}

.partner-list-hero {
	color: #fff;
	background-color: #28ACE2;
	padding: 3vw;
	text-align: center;
}

.partner-list-hero__title {
	color: #fff;
	margin: 0;
}

.option-list {
	background-color: #F3F3F3;
	padding: calc(0.88em + 1vw);
}

.active-filters {
	padding: 3vw 1.66em 1vw;
}

.filter-button {
	background-color: #3BAEDE;
	border: 0;
	border-radius: 6px;
	color: rgb(255 255 255 / 80%);
	font-size: 0.88em;
	padding: 0.125em 0.88em 0.33em;
	font-weight: bold;
	margin-right: 1.33em;
	margin-bottom: 1.33em;
	cursor: pointer;
}

.filter-button__close {
	display: inline-block;
	padding-left: 0.66em;
	font-size: 1.66em;
	opacity: 0.66;
	transform: translateY(0.05em);
}

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


.option-list h2 {
	margin-bottom: 0.66em;
}

.option-item__title {
	color: #444;
	margin-bottom: 0.33em;
}

.option-item {
	display: block;
}

.option-item__select {
	width: 100%;
	background-color: #33ADE0;
	color: #fff;
	font-size: 1.33em;
	padding: 0.33em;
	border: 0;
	border-radius: 5px;
}

.option-item__select option {
  background-color: #fff;
  color: #333;
}

.option-item + .option-item {
	margin-top: 1.33vw;
}





/****************************************************************************************
* 
* Search
* 
****************************************************************************************/

.search-form-page {
	background-image: url(https://www.employerpass.com/hubfs/Graphics/EmployerPass-Request-a-Quote-Page-v4-Plane.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: repeat-x;
	background-attachment: fixed;
}

.form-group {
	background-color: #33ADE0;
	border-radius: 9px;
	padding: 1.66em;
	color: #fff;
}

.hs-form-checkbox input[type=checkbox] {
	display: none;
}


.hs-form-checkbox span {
	color: #fff;
	background-color: rgb(255 255 255 / 30%);
	display: block;
	padding: 0.33em;
	padding-left: 3em;
	border-radius: 2em;
	position: relative;
	transition: all 0.25s ease-in-out;
	cursor: pointer;
  min-height: 100%;
  display: flex;
  align-items: center;
}

.hs-form-checkbox input[type=checkbox]:checked ~ span {
	background-color: #fff;
	color: #444;
}

.hs-form-checkbox input[type=checkbox] ~ span:before {
	content: '';
	display: block;
  height: 1.33em;
  width: 1.33em;
  background-color: #76C7E8;
  position: absolute;
  left: 0.66em;
  border-radius: 100%;
  outline: 2px solid #fff;
}

.hs-form-checkbox input[type=checkbox]:checked ~ span:after {
  content: '';
  border: 3px solid #fff;
  border-top: 0;
  border-left: 0;
  position: absolute;
  font-size: 1.33em;
  left: 0.88em;
  height: 13px;
  width: 8px;
  transform: translateY(50%) rotate(45deg);
  top: calc(50% - 15px);
}

/* OLD CHECKS
.hs-form-checkbox input[type=checkbox]:checked ~ span:before,
.hs-form-checkbox input[type=checkbox]:checked ~ span:after {
	content: '';
	display: block;
	width: .55em;
	height: 4px;
	background-color: #3BADDC;
	position: absolute;

}

.hs-form-checkbox input[type=checkbox]:checked ~ span:before {
	top: 51%;
	left: 1.1em;
	transform: rotate(45deg);
}

.hs-form-checkbox input[type=checkbox]:checked ~ span:after {
	width: 1.33em;
	top: 46%;
	left: 1.33em;
	transform: rotate(-45deg);
}
END OLD CHECKS */

form h2 {
	color: #fff;
	text-align: center;
	margin-bottom: 0;
}

[id=form-group-4] span,
.hs-fieldtype-text span {
	color: #fff;
}


.inputs-list.multi-container {
	display: grid;
	gap: 0.66em;
}

@media (min-width: 500px) {

	[id=form-group-2] .inputs-list.multi-container {
		grid-template-columns: repeat(4, 1fr);
	}

}

@media (min-width: 700px) {

	[id=form-group-1] .inputs-list.multi-container,
	[id=form-group-3] .inputs-list.multi-container {
		grid-template-columns: repeat(2, 1fr);
	}

	[id=form-group-2] .inputs-list.multi-container{
		grid-template-columns: repeat(6, 1fr);
	}

}

@media (min-width: 800px) {

	[id=form-group-2] .inputs-list.multi-container{
		grid-template-columns: repeat(7, 1fr);
	}

}

.search-form-navigation {
	margin-top: 1.66em;
	display: flex;
	justify-content: space-between;
	gap: 1em;
}

.button--next {
	background-color: #000;
}

.button--prev {
	background-color: transparent;
	color: #000 !important;
}

.hs-input[type=number] {
	background: 0 !important;
	border-bottom: 7px solid rgb(255 255 255 / 50%) !important;
	border-radius: 0 !important;
	max-width: 9ch;
	font-size: 4em !important;
	margin: 0 auto !important;
	display: block !important;
	text-align: center;
	color: #fff !important;
}

.hs-input[type=number]::placeholder {
	color: rgb(255 255 255 / 25%);
}


.search-form-navigation button[disabled] {
	opacity: 0;
	cursor: not-allowed;
}

form .hs-button {
	background-color: #000;
}

.hs-error-msgs {
  background-color: #76C7E8;
  color: #fff;
  border-radius: 4em;
  padding: 0.33em 1em;
}

.hs-error-msg {
  color: #fff;
  padding: 0.33em 1.33em;
  font-weight: bold !important;
}

.search-form-page__intro {
	padding: 1.33em 0 0.66em;
}

.search-form-page__title {
	text-align: center;
}

.search-form-progress {
	position: relative;
	z-index: 0001;
}

.progress {
	height: 3em;
	border-radius: 3em;
	border: 1px solid #28ACE2;
	margin-bottom: 2.33em;
	position: relative;
	overflow: hidden;
	transition: all 0.25s ease-in-out;
}

.progress-fill {
	width: calc(var(--fill) * 1%);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	background-image: linear-gradient(to right, rgba(40,172,226,1) 0%,rgba(57,187,176,1) 100%);
	transition: all 0.25s ease-in-out;
}

.progress::before {
	content: attr(data-count);
	color: #333;
	position: absolute;
	z-index: 0001;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	font-size: 1.33em;
	mix-blend-mode: color-dodge;
}





/****************************************************************************************
* 
* Single
* 
****************************************************************************************/

.partner-single-page {
	background-image: url(https://www.employerpass.com/hubfs/Graphics/EmployerPass-Request-a-Quote-Page-v4-Plane.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: repeat-x;
	background-attachment: fixed;
}

.partner-logo {
	width: 50%;
	margin: 0 auto 1.88em;
	display: block;
}

.single-partner-card {
	color: #444;
	padding: 1.33em;
	box-shadow: 0 2px 17px -7px rgb(51 51 51 / 0.33);
	transition: all 0.25s ease-in-out;
	background-color: #fff;
	border-radius: 9px;
	position: relative;
	margin-top: 1.33em;
}

.single-partner-card--1 {
	border: 10px solid #FDD038;
	border-right: 0;
	border-left: 0;
}

.single-partner-card--2 {
	border: 10px solid #E2E2E2;
	border-right: 0;
	border-left: 0;
}

.single-partner-card--1,
.single-partner-card--2 {
	position: relative;
	padding-top: 2em;
}

.single-partner-card--1:before,
.single-partner-card--2:before {
	font-size: 0.88em;
	text-transform: uppercase;
	font-weight: bold;
	display: block;
	border-bottom: 0.66em solid transparent;
	padding: 0.66em 1em;
	padding-left: 5.66em;
	background-position: left 1.33em center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: -2.33em -1.55em 2.33em;
	text-align: left;
}

.single-partner-card--1 {
	border-color: #F2C83B;
}

.single-partner-card--1:before {
	content: 'Best-in-Class';
	background-color: #F2C83B;
	background-image: url(https://www.employerpass.com/hubfs/Graphics/gold-stamp.png);

}

.single-partner-card--2 {
	border-color: #E2E2E2;
}

.single-partner-card--2:before {
	content: 'Preferred';
	background-color: #E2E2E2;
	background-image: url(https://www.employerpass.com/hubfs/Graphics/silver-stamp.png);
}

.single-partner__page-title {
	font-size: 1.88em;
}

.single-partner-card__subtitle {
	font-weight: 900;
	margin-top: 1.33em;
	margin-bottom: 0.25em;
}

.single-partner-card__list {
	padding-left: 0.88em;
	column-width: 21ch;
}

@media (min-width: 690px) {

	.single-partner {
		display: flex;
		gap: 1.66em;
	}

	.single-partner__primary {
		flex: 5;
	}

	.single-partner__secondary {
		flex: 7;
	}

}

.primary-contact__label {
	font-size: 1em;
	margin: 0;
}

.primary-contact__name {
	font-size: 1.66em;
	margin: 0;
}

.primary-contact__desc {
	font-size: 0.88em;
	margin-bottom: 0.88em;
}

.primary-contact__photo {
	margin-bottom: 1.33em;
	border-radius: 100%;
	overflow: hidden;
}

.primary-contact {
	display: flex;
	gap: 1.33em;
	flex-wrap: wrap;
	align-items: flex-start;
}

.primary-contact__photo {
	width: 80px;
	height: 80px;
}

.primary-contact__body {
	flex: 5;
}

.primary-contact__photo-img {
	object-fit: cover;
	display: block;
	width: 100%;
	height: 100%;
}

.button--contact {
	min-width: 100%;
}

.main-quote form .hs-button {
	background-color: #28ace2;
}

.secondary-quote {
	background-color: #28ace2;
	border-radius: 7px;
	padding: 1.33em;
	margin-top: 1.66em;
}

.secondary-quote form .hs-button {
	background-color: #fff;
	color: #333;
}

.secondary-quote h3 {
	color: #fff;
	text-align: center;
	font-size: 1.88em;
	margin: 0;
}

.tab-container__tab {
	border: 0;
	font-size: 1em;
	display: inline-block;
	background-color: #F3F3F3;
	font-weight: bold;
	padding: 0.88em 1.66em;
	border-radius: 6px 6px 0 0;
	cursor: pointer;
	transition: all 0.25s ease-in-out;
}

.tab-container__tabs {
	transform: translate(1em, 1.33em);
}

.tab-container__tab--is-active {
	color: #fff;
	background-color: #33ADE0;
}


/* ADL reviews */
.review {
	margin-top: 1.33em;
}

.review__title {
	font-size: 1.25em;
	font-weight: bold;
	margin: 0;
}

.review__stars {
	color: #BEBEBE;
}

.star1 .fa-star:nth-child(-n+1) {
	color: #F1C74A;   
}

.star2 .fa-star:nth-child(-n+2) {
	color: #F1C74A;   
}

.star5 .fa-star:nth-child(-n+5) {
	color: #F1C74A;   
}

.star4 .fa-star:nth-child(-n+4) {
	color: #F1C74A;   
}

.star5 .fa-star:nth-child(-n+5) {
	color: #F1C74A;   
}


/* Review Plugin */
#google-reviews {
	display: flex;
	flex-flow: column nowrap;
	/*display: grid;*/
	/*grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));*/
}

.review-item {
/* 	border: solid 1px rgba(190, 190, 190, .35); */
	margin: 0 auto 1rem;
/* 	padding: 1em; */
	flex: 1 1 50%;
	display: flex;
	flex-direction: column;
	align-content: stretch;
}

@media ( max-width:1200px) {
	.review-item {
		flex: 1 1 50%;
	}
}

@media ( max-width:450px) {
	.review-item {
		flex: 1 1 90%;
	}
}

.review-item-long {
/* 	border: solid 1px rgba(190, 190, 190, .35); */
/* 	padding: 1em; */
	margin: 0 auto 1rem;
	flex: 1 1 90%;
	display: flex;
	flex-direction: column;
	align-content: stretch;
}

@media ( max-width:1200px) {
	.review-item-long {
		flex: 1 1 90%;
	}
}

@media ( max-width:450px) {
	.review-item-long {
		flex: 1 1 90%;
	}
}

#google-reviews > div:not(:last-of-type) {
	border-bottom: solid 1px rgba(190, 190, 190, .35); */
	padding: 0 0 1em 0;
}

.review-header{
	display: flex;
}

.review-picture{
	width: 5em;
	height: auto;
	align-self: center;
	margin-right: 1em;
}

.review-usergrade{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.review-meta, .review-stars {
	text-align: center;
	font-size: 115%;
}

.review-author {
	text-transform: capitalize;
	font-weight: bold;
}

.review-date {
	opacity: .6;
	display: block;
}

.review-text {
	line-height: 1.55;
	text-align: left;
	max-width: 100%;
	text-align: justify;
}

.review-stars ul {
	display: inline-block;
	list-style: none !important;
	margin: 0;
	padding: 0;
}

.review-stars ul li {
	float: left;
	list-style: none !important;
	margin-right: 1px;
	line-height: 1;
}

.review-stars ul li i {
	color: #ffd200;
	/* Google's Star Orange in Nov 2017 */
	font-size: 1em;
	font-style: normal;
}

.review-stars ul li i.inactive {
	color: #c6c6c6;
}

.star:after {
	content: "\2605";
}


.buttons {
	margin: 20px 0 0 0; 
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.more-reviews {
	text-align: center;
}

.write-review {
	text-align: center;
}

/* .more-reviews a,
.write-review a {
margin: 5px;
border: 1px #eb6e00 solid;
border-radius: 40px;
padding: 10px;
background-color: #eb6e00;
color: #FFF;
text-decoration: none;
}
*/