/*
Theme Name: Boiling Pot Media Boilerplate
Theme URI: https://boilingpotmedia.com
Author: Boiling Pot Media
Author URI: https://boilingpotmedia.com/
Description: Custom theme with ACF, Custom Post Types and more
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bpm
*/


/* STRUCTURE */
	body {
		color:#333;
		font-family: 'Aspira Standard', Arial, Helvetica, sans-serif;
	}
	.container {
		max-width: 1140px ;
	}
	.content section,
	.content_section {
		padding: 60px 0px;
	}
	.content section:last-child {
		padding-bottom: 0px;
	}
	.page-template-template-full-width .content section:last-child div:last-child .container,
	.page-template-template-groups-sidebar .content section:last-child .container:last-child {
		margin-bottom: 80px;
	}

	section#content_blocks .padding-top {
		padding-top: 60px;
	}
	section#content_blocks .padding-bottom {
		padding-bottom: 60px;
	}

	.content {
		padding: 0px ;
	}
	.max900 {
		max-width: 900px;
		margin: 0px auto;
	}

	address {
		display: block;
		margin-left: 1.4em;
		margin-bottom: 30px;
	}
	ul {
		display: block;
		list-style-type: disc;
		margin-left: 1.4em;
		margin-bottom: 30px;
	}
	ol {
		display: block;
		list-style-type: decimal;
		margin-left: 1.4em;
		margin-bottom: 30px;
	}

	.mb0	{margin-bottom:0px !important;}
	.mb10	{margin-bottom:10px;}
	.mb20	{margin-bottom:20px;}
	.mb30	{margin-bottom:30px;}
	.mb40	{margin-bottom:40px;}
	.mb50	{margin-bottom:50px;}
	.mb100	{margin-bottom:100px;}

	img, embed, object, audio, video {
		max-width: 100%;
		height: auto;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
		.content img {
			margin: 0px auto 35px;
			max-width: 190px;
		}
		#hero-content ul {
			display: none;
		}
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}


/* TABLES */
	table td {
		padding: 0px 30px 6px 0px;
	}


/* MENU */
	.nav > ul {
		display: block;
		margin: 0 0 0 auto;
		position: relative;
	}
	ul.nav__inner li {
		display: inline-block;
		position: relative;
		font-weight: inherit;
	}
	ul.nav__inner li:first-of-type {
		padding-left: 0;
	}
	ul.nav__inner li a {
		letter-spacing: 1px;
		display: inline-block;
		position: relative;

	}
	ul.nav__inner li a:hover {
		text-decoration: none;
	}
	ul.nav__inner .menu-item-has-children:hover .sub-menu {
		display: block;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}

/* SUBMENU */

	ul.nav__inner ul.sub-menu {
	    display: none;
		position: absolute;
		margin: 0px;
		text-align: left;
		top: 23px;
		padding-top: 15px;
		z-index: 99;
		width: 230px;
		background: #fff;
		-moz-transition: all 0.5s ease-in-out;
		-o-transition: all 0.5s ease-in-out;
		-webkit-transition: all 0.5s ease-in-out;
		-ms-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
		-webkit-transition-delay: 0.15s;
		-moz-transition-delay: 0.15s;
		-o-transition-delay: 0.15s;
		transition-delay: 0.15s;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		-ms-border-radius: 2px;
		border-radius: 2px;
	}
	ul.nav__inner ul.sub-menu > li {
		display: block;
		padding-left: 0px;
	}
	ul.nav__inner ul.sub-menu a {
		text-align: left;
		padding: 10px;
		display: block;
		float: none;
		text-transform: none;
		color: #4b4d4d;
		font-size: 14px;
	}
	ul.nav__inner .sub-menu a:hover,
	ul.nav__inner .sub-menu a:visited:hover {
		background: #f1f1f1;
		color: #1a1a1a;
	}

	ul.nav__inner .current-menu-item > a {
		border-bottom: 1px solid rgba(121, 147, 169, 0.1);
	}
	ul.nav__inner ul.sub-menu .current-menu-item a {
		border-bottom: none;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}

/* Mobile Menu */
	.mobile-menu {
		z-index: 999999;
		overflow: auto;
		position: fixed
	}
	.mobile-menu ul {
		min-width: none;
	}
	.mobile-menu li {
		list-style: none;
	}
	.mobile-menu a {
		font-size: 18px;
	}
	.mobile-menu .sub-menu {
		margin-top: 8px;
		margin-bottom: 8px;
	}
	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}



/* BUTTON */
	button, .btn, .gform_wrapper .gform_footer .button.gform_button, .menu-button a, input[type="submit"] {
		border-radius: 6px;
		/*background-color: <?php echo $color_primary; ?>;*/
		border: 0px ;
		background: #21A29D;
		font-size:16px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}



/* BOUNCE */
	.hero-fa {
		width: 50px;
		display: block;
		text-align: center;
		/* color: <?php echo $color_secondary; ?>; */
		font-size: 2em ;
		font-weight: 100 ;
		padding-top: 10px;
	}
	.bounce {
		width: 50px;
		height: 50px;
		background: #ffff;
		margin: 90px auto 0px;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		-ms-border-radius: 50%;
		border-radius: 50%;
		animation: bounce 2s infinite;
		-webkit-animation: bounce 2s infinite;
		-moz-animation: bounce 2s infinite;
		-o-animation: bounce 2s infinite;
		box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
	}
	.bounce {
		position: absolute;
		z-index: 999;
		right: 50%;
	}
	@-webkit-keyframes bounce {
		0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);}
		40% {-webkit-transform: translateY(-30px);}
		60% {-webkit-transform: translateY(-15px);}
	}
	@-moz-keyframes bounce {
		0%, 20%, 50%, 80%, 100% {-moz-transform: translateY(0);}
		40% {-moz-transform: translateY(-30px);}
		60% {-moz-transform: translateY(-15px);}
	}
	@-o-keyframes bounce {
		0%, 20%, 50%, 80%, 100% {-o-transform: translateY(0);}
		40% {-o-transform: translateY(-30px);}
		60% {-o-transform: translateY(-15px);}
	}
	@keyframes bounce {
		0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
		40% {transform: translateY(-30px);}
		60% {transform: translateY(-15px);}
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}


/* TYPOGRAPHY */
	.font-white {
		color: #fff;
	}
	h1.h0 {
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
		font-size: 4.5em;
		font-weight: 600;
		line-height: 1em;
		margin-bottom: 0.5em;
	}
	h1, .h1 {
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
		font-size: 3em;
		font-weight: 600;
		line-height: 1.1em;
		margin-bottom: 0.5em;
	}
	h2, .h2 {
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
		font-size: 2.2em;
		font-weight: 600;
		margin-bottom: 45px;
	}
	h3, .h3 {
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
		text-transform: initial;
		font-weight: 600;
		font-size: 1.8em;
		line-height: 1.1em;
		margin-top: 1em;
		margin-bottom: 1em;
	}
	.paragraph {
		font-size: 18px;
	}

	blockquote {
		font-style: italic;
		line-height: 1.7;
		margin: 0px 0px 0px 15px;
		overflow: hidden;
		padding: 0;
	}
	blockquote cite {
		display: block;
		font-style: normal;
		font-weight: 600;
		margin-top: 0.5em;
	}
	.citation {
		font-family: 'Bitter', serif;
		font-size: 16px;
		color: #444;
		line-height: 2;
		text-indent: -25px;
		padding: 10px;
		padding: 10px 10px 10px 35px;
		line-height: 1.4em;
		word-wrap: break-word;	}
	b {
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
	}
	#content_blocks h1{
		font-weight: 700;
		font-size: 40px;
		padding-top: 56px;
		margin: 44px 0px 52px;
	}
	#content_blocks h2{
		font-size: 22px;
		font-weight: 400;
		line-height: 31px;
	}
	#content_blocks h3{
		font-size: 18px;
	}
	#content_blocks p{
		font-size: 14px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
		h1.h0 {
			font-size: 2.4em;
			text-align:center;
		}
		h1, .h1 {
			font-size: 3.5em;
			text-align:center;
		}
		h2, .h2 {
			font-size: 2em;
			margin-bottom: 35px;
			text-align:center;
		}
		h3, .h3 {
			font-size: 1.6em;
			line-height: 1em;
			margin-top: 0.9em;
			margin-bottom: 0.9em;
			text-align:center;
		}
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
		.center {
			text-align: center;
		}
	}


/* HEADER */
	.header {
		box-shadow: none;
		position: absolute;
		background: transparent;
	}
	.header__inner {
		background: transparent ;
	}
	a.logo {
		padding-bottom: 30px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
		.hero-subtitle{display:none;}
		section#hero .bounce {
			display: none;
		}
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}


/* HERO */
	section#hero {
		text-align: left;
		padding: 70px 0px 0px;
	}
	section#hero #hero-content {
		position:relative;
	}

	section#hero .container {
		min-height: 450px;
	}
	section#hero .container.standard {
		min-height: 480px;
	}
	section#hero .container.wave {
		min-height: 320px;
	}
	.wave-image {
		display: block;
		position: relative;
		width: 100%;
		height: 270px;
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: cover;
	}
	#hero #hero-content ul {
		list-style: none;
		margin: 0px;
	}
	#hero-content span {
		font-size: 1.26em;
		font-family: 'Aspira Bold', Arial, Helvetica, sans-serif;
	}
	#hero #hero-content ul li span {
		min-width: 58px;
		display: inline-block;
		position: relative;
		padding-bottom: 15px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
		.page-template-template-full-width #upload-widget-root {
			position: absolute;
			z-index: 999;
		}
		.page-template-template-groups-sidebar div#upload-widget-root {
			margin-bottom: 25px;
		}
	}

/* FOOTER CREDITS */
	footer section.footer-credits {
		background: #f5f8fa;
		padding: 30px 0;
		width: 100%;
	}
	footer .credits {
		font-size: 14px;
		margin-bottom: 0px;
		color: #666;
	}



/* TABS */
	div#tabs ul {
		border-bottom: 1px solid #ccc;
		margin-bottom: 30px;
		padding-bottom: 1px;
	}
	div#tabs ul li a {
		padding-bottom: 6px;
		/* color:  <?php echo $color_primary; ?>; */
		font-size: 1.2em;
		font-weight: 300;
	}
	div#tabs ul li.active a {
		/* border-bottom: 2px solid <?php echo $color_secondary; ?>; */
		/* color: <?php echo $color_secondary; ?>; */
		font-weight: 600;
		position: relative;
	}
	div#tabs ul li.active a:after {
		content: '';
		width: 250px;
		height: 2px;
		position: absolute;
		bottom: -1px;
		margin-left: auto;
		margin-right: auto;
		left: -80px;
		right: 0;
	}
	div#tabs ul li {
		display: inline-block;
		text-align: center;
		border-bottom: 1px solid white;
	}
	div#tabs img {
		max-width: 630px;
		max-height: 430px;
		margin: 0px auto;
		display: block;
	}
	div#tabs ul li a {
		color: #333;
		border-bottom: 2px solid transparent;
	}


	@media only screen and (max-width: 64rem) { /*1024px*/
		div#tabs ul li {
			display: block;
			text-align: left;
			width: 100%;
		}
		div#tabs img {
			max-width: 100%;
			margin: 0px;
		}
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}


/* TESTIMONIALS */
	section#testimonials img {
		max-width: 125px;
		display: block;
		position: relative;
		margin: 0px auto 35px;
	}
	section#testimonials p {
		text-align: center;
		margin-bottom: 10px;
	}
	section#testimonials p:last-child {
		color: #777777;
		font-weight: 900;
		font-size: 0.9em;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
		section#testimonials p.testimonial-name{margin-bottom:30px;}
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}



/* PRICING TABLE */
	section#pricing_table {
		background: #f8f8f8;
		padding-bottom: 60px;
	}
	section#pricing_table .row.pricing_table_header,
	section#pricing_table .row.pricing_table_row {
		margin-bottom: 20px;
	}
	section#pricing_table .row.pricing_table_header > div,
	section#pricing_table .row.pricing_table_row > div {
		position: relative;
	}
	section#pricing_table .row.pricing_table_header > div:after,
	section#pricing_table .row.pricing_table_row > div:after {
		content: '';
		width: 95%;
		left: 4%;
		bottom: 0px;
		display: block;
		position: absolute;
		height: 1px;
		/* background: <?php echo $color_primary; ?>; */
	}
	section#pricing_table .row.pricing_table_header > div:after {
		height: 3px;
	}
	section#pricing_table .row.pricing_table_row > div:after {
		height: 1px;
	}
	section#pricing_table .row.pricing_table_row:last-child > div:after {
		display:none;
	}
	section#pricing_table p {
		font-size: 0.95em;
		margin: 3px 0px 6px;
	}
	.pricing_table_row .fa {
		/* color: <?php echo $color_secondary; ?>; */
		float: left;
		padding-bottom: 10px;
		padding-right: 10px;
	}
	a.terms-link {
		font-size: 0.8em;
		font-style: italic;
	}
	thead th {
		text-align: left;
		border-top: 0px;
		padding: 0px 0px 15px 5px;
	}
	section#pricing_table table {
		border-spacing: 5px;
		border-collapse: separate;
		width: 100%;
	}
	#pricing_table .table th {
		vertical-align: top;
	}
	#pricing_table .table th,
	#pricing_table .table td {
		padding: .75rem;
	}
	#pricing_table .table-column-header {
		/* border-bottom: 3px solid rgb(42, 142, 179); */
	}
	#pricing_table th:last-child,
	#pricing_table th:nth-child(2) {
		text-align: center;
	}
	#pricing_table th:last-child {
		padding: 0px;
	}
	#pricing_table tr td {
		vertical-align: middle;
		text-align: center;
		/* border-top: 1px solid rgb(42, 142, 179); */
	}
	#pricing_table tr:first-child td {
		border-width: 0px;
		border-style: initial;
		border-color: initial;
		border-image: initial;
	}
	#pricing_table td:first-child {
		text-align: left;
	}
	#pricing_table .highlight {
		background: rgb(255, 255, 255);
		padding: 0px 5px;
	}
	#pricing_table img {
		width: 17px;
		height: 17px;
		margin: 0px 7px 0px 0px;
	}
	#pricing_table td span {
		padding: 15px 0px 10px;
		display: inline-block;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}


/* Groups Template Hero Features */
	ul.hero-list-items {
		display: table;
		width: 100%;
		max-width: 500px;
		padding-left: 0px;
	}
	ul.hero-list-items li {
		display: table-row;
		width: 100%;
	}
	ul.hero-list-items li span {
		vertical-align: middle;
		display: table-cell;
	}
	ul.hero-list-items li img {
		max-width: 44px;
		height: auto;
		margin-right: 10px;
	}
	ul.hero-list-items li span:first-child {
		width: 60px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}



/* Groups Template Accordion */
	.groups-accordion .accordion {
		border: 1px solid rgba(0,0,0,.1);
		border-radius: 2px;
	}
	.groups-accordion .accordion dt {
		position: relative;
		border-bottom: 1px solid rgba(0, 0, 0, 0.15);
	}
	.groups-accordion dt a {
		display: block;
		position: relative;
		background-color: #f4f4f4;
		color: #444;
		cursor: pointer;
		padding: 18px;
		width: 100%;
		text-align: left;
		border: none;
		color: #000;
	}
	.accordion__arrow {
		display: inline-block;
		position: relative;
		width: 24px;
		height: 12px;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -6px;
	}
	.groupSelector.active .accordion__arrow .fa {
		transform: rotate(-180deg);
	}
	.groups-accordion dd {
		padding: 20px;
		display: block;
		animation: fadein .35s ease-in;
	}
	.groups-accordion dd a {
		padding-bottom: 13px;
		font-weight: 400;
		display: block;
	}
	.groups-accordion dd a:last-child {
		padding-bottom: 0px;
	}

	@media only screen and (max-width: 64rem) { /*1024px*/
	}
	@media only screen and (min-width: 64rem) { /*1024px*/
	}

/* IE Warning Styling */
#ie-warning {
	display: none;
	text-align: center;
	padding: 12px 0;
	font-weight: bold;
	font-size: 18px;
}

#ie-warning.visible {
	display: block;
}

/* CLS Fixes */
@media only screen and (max-width: 64rem) { /*1024px*/
	.page-template-template-full-width #upload-widget-root {
		height: 686px;
	}
}
@media only screen and (min-width: 64rem) { /*1024px*/
	.page-template-template-full-width #upload-widget-root {
		height: 595px;
	}
}

section#hero {
	height: 655px;
}

@media only screen and (max-width: 425px) { /*1024px*/
	section#hero {
		min-height: 1000px;
	}
}

/* FAQs */
.faqs {
	border: solid 1px #f2f2f2;
	border-radius: 4px;
}

.faq {
	padding: 20px 25px;
	padding-right: 25px;
	position: relative;
	overflow: hidden;
}

.faq__question {
  position: relative;
  cursor: pointer;
  margin: 0;
  letter-spacing: 1.2px;
  padding: 8px 0;
}

.faq__answer {
	height: 0px;
	transition: all .4s ease;
	overflow: hidden;
	opacity: 0;
  margin: 0;
}


.faq__indicator {
  position: absolute;
  right: 35px;
  top: 57%;
  transform: translateY(-50%);
}

.faq__indicator::before {
  border-style: solid;
  border-color: #228eb5;
	border-width: 3px 3px 0 0;
	content: '';
	display: inline-block;
	height: 13px;
	left: 10px;
	position: relative;
	top: 0px;
	transform: rotate(45deg);
	vertical-align: top;
	width: 13px;
  transition: all .2s ease-in-out;
}

.faq__question:hover {
  color: #228eb5;
}

.faq[data-open="true"] {
	background: #f4f4f4;
  padding-bottom: 16px;
}

.faq[data-open="true"] .faq__question {
	border-bottom: 1px solid lightgray;
  color: #228eb5;
  margin-bottom: 24px;
}

.faq[data-open="true"] .faq__answer {
	opacity: 1;
}

.faq[data-open="true"] .faq__indicator::before {
	transform: rotate(135deg);
}
