/*
Theme Name: Pro &ndash; Child Theme (FSL)
Theme URI: https://theme.co/pro/
Author: Themeco
Author URI: https://www.foundationsoft.com/
Description: Make all of your modifications to Pro in this child theme.
Version: 1.0.0
Template: pro
*/

/* Fixes letters like "g" or "p", etc that fall below the text baseline, from being visibly cut off on links  */
.x-anchor,
.x-anchor-content {
	overflow: initial;
}

/* default styles for header SVGs */
.page-header .left-svg {
	left: -550px;
	bottom: -250px;
	width: 1000px;
}

.page-header .right-svg {
	right: -350px;
	bottom: -250px;
	width: 850px;
}

/* adds a smooth feel for the backgrounds if there is parallax  */
.x-bg div {
	transition: all 1s ease-out !important
}

/* TEMPORARY STYLES for GoodLayers Shortcodes - Remove after Replacing */

.icon-gears:before,
.icon-cogs:before {
	content: "\f085";
}

.icon-dashboard:before {
	content: "\f0e4";
}

.icon-flag-alt:before {
	content: "\f024";
}

.icon-user:before {
	content: "\f007";
}

.fa {
	font-family: "FontAwesome";
	font-style: normal;
}


/*--- box with icon ---*/
.gdlr-box-with-icon-item {
	text-align: center;
	padding: 40px 30px 20px;
	position: relative;
}

.gdlr-box-with-icon-item>i {
	font-size: 45px;
	display: inline-block;
	margin-bottom: 22px;
	margin-right: 0;
}

.gdlr-box-with-icon-item .box-with-icon-title {
	font-size: 20px !important;
	margin-bottom: 20px;
	display: block;
}

.gdlr-box-with-icon-item.pos-left {
	text-align: left;
	padding: 30px 40px 20px;
}

.gdlr-box-with-icon-item.pos-left>i {
	float: left;
	margin: 5px 25px 0px 0px;
}

.gdlr-box-with-icon-item.type-circle .box-with-circle-icon {
	padding: 18px;
	display: inline-block;
	position: absolute;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
}

.gdlr-box-with-icon-item.type-circle .box-with-circle-icon>i {
	font-size: 22px;
	margin-right: 0;
}

.gdlr-box-with-icon-item.type-circle.pos-top {
	padding-top: 50px;
}

.gdlr-box-with-icon-item.type-circle.pos-top .box-with-circle-icon {
	top: -30px;
	left: 50%;
	margin-left: -30px;
}

.gdlr-box-with-icon-item.type-circle.pos-left {
	margin-left: 40px;
	padding-left: 50px;
}

.gdlr-box-with-icon-item.type-circle.pos-left .box-with-circle-icon {
	left: -30px;
	top: 50%;
	margin-top: -30px;
}

/* Additional Box with Icon styles - custom added for our theme */
.box-with-circle-icon {
	display: block !important;
	width: 4em;
	height: 4em;
	font-size: inherit !important;
	border-radius: 100% !important;
	line-height: 4em;
	padding: 0 !important;
}

h2.box-with-icon-title {
	font-size: 2em !important
}

.box-with-icon-caption * {
	font-size: 1em !important
}

.gdlr-box-with-icon-item {
	border: 1px solid #DDD
}

.box-with-circle-icon {
	text-align: center !important;
}


/*--- stunning-text ---*/
.gdlr-stunning-text-item {
	position: relative;
}

.gdlr-stunning-text-item.type-normal .stunning-text-button {
	position: absolute;
	right: 0px;
	top: 50%;
	margin-top: -22px;
	margin-right: 0px;
}

.gdlr-stunning-text-item.with-padding {
	padding: 35px 35px 15px;
}

.gdlr-stunning-text-item.with-padding.gdlr-button-on {
	padding-right: 180px;
}

.gdlr-stunning-text-item.with-padding .stunning-text-button {
	right: 40px;
}


.box-with-icon-caption p {
	clear: both;
}

/* Additional Stunning Text styles - custom added for our theme */
.blog-post-content .gdlr-stunning-text-ux h2 {
	font-size: 3em !important;
	margin-bottom: 30px;
}

.blog-post-content .gdlr-stunning-text-ux h3 {
	font-size: 2em !important;
	margin-bottom: 15px;
}

.blog-post-content .gdlr-stunning-text-ux h4 {
	font-size: 2em !important;
	font-weight: 300;
}

.blog-post-content .gdlr-stunning-text-ux .stunning-text-button {
	float: right;
}

a.blog-cta-image {
	display: block;
	margin: 0 auto 1.313em;
}

.gdlr-box-with-icon-item {
	margin-bottom: 30px;
}

/*--- styled box ---*/
.gdlr-styled-box-head-wrapper {
	overflow: hidden;
}

.gdlr-styled-box-head {
	overflow: hidden;
	height: 40px;
}

.gdlr-styled-box-corner {
	float: right;
	height: 0px;
	width: 0px;
	border-style: solid;
	border-width: 0px 40px 40px 0px;
	border-right-color: transparent;
}

.gdlr-styled-box-body {
	padding: 45px 40px 25px;
}

.gdlr-styled-box-body.with-head {
	padding-top: 5px;
}

.gdlr-styled-box-body .gdlr-styled-box-head-wrapper {
	overflow: hidden;
}

.gdlr-button {
	padding: 0.5em 1em;
	border-radius: 0.25em;
	display: inline-block;
}

.gdlr-stunning-text-ux div {
	padding: 10px;
}

.embedded-ao-form .ao-form-submit {
	width: 50%;
	background: #000 !important;
	border-radius: 10px !important;
	padding: 0.75em 1em !important;
	font-size: 16px !important;
}

/* Image Modal Styles */
a.ilightbox-fullscreen {
	display: none;
}

a.ilightbox-close {
	float: unset;
	display: block;
	color: #FFF;
}

a.ilightbox-close:before {
	font-size: 30px !important;
}

.ilightbox-toolbar.light {
	right: 10px;
	left: unset;
	text-align: center;
	height: unset;
	padding: 1em;
	background: #000;
	border-radius: 100%;
}

/* -------------------------------------------------------
  START:  Custom Wistia Styles for Demo Videos
  ------------------------------------------------------- */

div[data-handle="annotationOverlay"] {
	position: relative !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 100%;
	height: 100% !important;
	background: transparent !important;
	pointer-events: none !important;
}

div[data-handle="annotationOverlay"] a {
	background: transparent !important;
	color: transparent !important;
	position: absolute !important;
	margin: 0 !important;
	padding: 0 !important;
	left: -100% !important;
	right: 0 !important;
	top: 0 !important;
	height: 100vh;
}

/* -------------------------------------------------------
  END:  Custom Wistia Styles for Demo Videos
  ------------------------------------------------------- */

/* Schedule Demo Nav Modal Styles */
.embedded-ao-form {
	max-width: auto;
	margin: 0 auto;
}

.embedded-ao-form .ao-required {
	display: none
}

.embedded-ao-form label {
	color: #535353;
	font-weight: bold;
}

.embedded-ao-form .ao-form-field {
	margin-bottom: 0
}

.embedded-ao-form .ao-form-error-message {
	font-size: 0.8em;
	margin-bottom: 5px;
	color: red
}

.embedded-ao-form .ao-block-wrapper {
	padding: 5px;
}

.embedded-ao-form .ao-combo-layout input {
	display: none;
}

.embedded-ao-form .ao-combo-layout label span:before {
	content: "\f0c8";
	font-family: "FontAwesomePro";
	font-size: 23px;
	margin-right: 10px;
	display: inline-block;
	font-weight: normal;
	position: relative;
	top: 1px;
}

.embedded-ao-form .ao-combo-layout label input:checked+span:before {
	content: "\f14a"
}

.embedded-ao-form .ao-combo-layout label {
	float: left;
	clear: both;
	cursor: pointer;
}


/* fixes custom background responsive img element */
.x-bg-layer-lower-custom img {
	object-fit: cover;
}

/* 16px font fixes zoom-on-tap issue... */
select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
/* ...and other elements that need set as 16px */
.mobile-menu-toggle {
	font-size: 16px;
}

/* Basic Global Styles */
select {
	border-radius: 15px;
	border: 2px solid #535353;
}

select:focus-visible {
	outline: 0;
	border-color: #F8C01B;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: unset;
	text-transform: unset;
}


/*h1 { font-size: 80px }
h2 { font-size: 72px }
h3 { font-size: 42px } */
h1 {
	font-size: 70px !important
}

h2 {
	font-size: 50px !important
}

h3 {
	font-size: 35px !important
}

h4 {
	font-size: 28px !important
}

h5 {
	font-size: 18px !important
}

h6 {
	font-size: 16px !important
}


/* Checkmarked List */

.events ul,
.checked ul,
ul.checked {
	list-style: none;
	margin-bottom: 3em;
	margin-top: 12px !important;
	margin-left: 1em;
}

.events ul li,
.checked ul li,
ul.checked li {
	margin-bottom: 1em;
	color: #000;
	position: relative;
	margin-left: 0.5em;
}

.events ul li:before,
.checked ul li:before,
ul.checked li:before {
	content: "\f058";
	font-family: "FontAwesome";
	color: #F8C01B;
	position: absolute;
	left: -1.5em;
}

/* Starred List */

/* Checkmarked List */

.starred ul {
	list-style: none;
	margin-bottom: 3em;
}

.starred ul li {
	margin-bottom: 1em;
	position: relative;
	margin-left: 0.5em;
}

.starred ul li:before {
	content: "\f005";
	font-family: "FontAwesome";
	color: #F8C01B;
	position: absolute;
	left: -1.5em;
}


/* Blog Post Styles  */

/* Tables */
.blog-post-content table tr th {
	background-color: #f5be3b;
}

.blog-post-content table tr th {
	color: #ffffff;
}

.blog-post-content table.style-2 tr:nth-child(odd) {
	background-color: #f9f9f9;
}

.blog-post-content table.style-2 tr:nth-child(odd) {
	color: #949494;
}

.blog-post-content table.style-2 tr:nth-child(even) {
	background-color: #f3f3f3;
}

.blog-post-content table.style-2 tr:nth-child(even) {
	color: #949494;
}

/* Headlines */
.blog-post-content h1 {
	font-size: 72px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h2 {
	font-size: 63px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h3 {
	font-size: 54px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h4 {
	font-size: 45px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h5 {
	font-size: 36px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h6 {
	font-size: 27px !important;
	line-height: 1;
	margin-bottom: 0.3em;
}

.blog-post-content h1 strong,
.blog-post-content h2 strong,
.blog-post-content h3 strong,
.blog-post-content h4 strong,
.blog-post-content h5 strong,
.blog-post-content h6 strong {
	font-weight: 900
}

.blog-post-content p,
.blog-post-content blockquote,
.blog-post-content li {
	color: #535353;
	font-size: 23px;
	line-height: 1.4;
}

.blog-post-content li {
	margin-bottom: .5em;
}

.blog-post-content ol>li>ol {
	list-style: lower-alpha;
}


/* Page Header: Base SVG styles */

.page-header .right-svg,
.page-header .left-svg {
	z-index: -1;
	pointer-events: none;
	position: absolute;
}

/* Posts SVG */
.single-post .page-header .left-svg {
	left: -550px;
	bottom: -350px;
	width: 850px;
}

.single-post .page-header .right-svg {
	right: -500px;
	bottom: -500px;
	width: 850px;
}

/* Events SVG */
.single-event .page-header .right-svg {
	right: -492px;
	bottom: -350px;
	width: 850px;
}




/* Single Post: Header Styles */
.page-header {
	padding: 90px
}


/* Single Post: Table of Contents Widget Styles  */

.table-of-contents ul {
	border: none;
	overflow: visible;
}

.table-of-contents ul li a {
	border: 0;
	font-size: 16px;
	color: #0C92D0 !important;
}

.table-of-contents li.active>a,
.table-of-contents ul li a:hover {
	color: #535353 !important;
}


.table-of-contents li.active>a {
	position: relative;
}

.table-of-contents li.active>a:before {
	content: " ";
	position: absolute;
	left: -10px;
	background: #FAC017;
	opacity: 1;
	width: 1px;
	display: block;
	height: 100%;
}


.table-of-contents ul li a:hover {
	text-decoration: underline !important;
}

.table-of-contents ul li,
.widget ol li {
	border-bottom: none;
}

.table-of-contents li.active>a {
	color: #535353 !important;
}

.table-of-contents li>a {
	position: relative;
}

.table-of-contents li>a:before {
	content: " ";
	position: absolute;
	left: -10px;
	background: #EEE;
	opacity: 1;
	width: 1px;
	display: block;
	height: 100%;
}

.table-of-contents .ez-toc-list>li:not(.active)>a:before {
	background: transparent
}


.table-of-contents .widget li {
	padding: 15px 0 0 10px;
	line-height: 1.4;
}

/* adds vertical scrollbars if ToC is taller than viewport */
.table-of-contents .x-widget-area {
	overflow: hidden auto;
	max-height: calc(100vh - 200px);
	padding: 0 10px 0 0;
	scrollbar-color: #ccc #eee;
	scrollbar-width: thin;
	margin: 10px 0;
}


.table-of-contents .x-widget-area::-webkit-scrollbar {
	width: 10px;
}


.table-of-contents .x-widget-area::-webkit-scrollbar-track {
	background-color: transparent;
}

.table-of-contents:hover .x-widget-area::-webkit-scrollbar-track {
	border-radius: 100px;
}

.table-of-contents .x-widget-area::-webkit-scrollbar-thumb {
	border-radius: 100px;
	border: 1px solid transparent;
	background-clip: content-box;
	background-color: transparent;
}

.table-of-contents:hover .x-widget-area::-webkit-scrollbar-thumb {
	background-color: #DDD;
}

/* Single Post: Share Styles */
.x-entry-share {
	border: none;
	text-align: left;
}

.x-entry-share p {
	text-transform: none;
	font-size: 27px;
	font-family: "proxima-nova", sans-serif;
	font-weight: 800;
	color: #000;
}

.x-entry-share {
	border: none;
	text-align: left;
}

.x-entry-share a {
	font-size: 35px !important;
	color: #535353;
	margin: 0 !important;
}

.x-entry-share a:hover {
	background: none !important;
	color: #A9A8A8 !important;
}

.x-share-options .tooltip {
	width: fit-content;
}

.newsletter-wrap {
	color: #535353;
}

.newsletter-wrap input {
	font-size: 14px !important;
	font-family: 'Open Sans' !important;
}

.newsletter-wrap button {
	background: #000 !important;
	border-radius: 15px !important;
	width: 100%;
	font-family: "proxima-nova", sans-serif !important;
	font-weight: bold !important;
	font-size: 18px !important;
}

.newsletter-wrap button:hover {
	background: #535353 !important
}



/* Hides Fullscreen, Street View and Satellite View on Google Maps */

.gm-style-mtc,
.gm-svpc,
.gm-fullscreen-control {
	display: none;
}



/* Link Styles */

/* Links in a Blog Post */
.blog-post-content a {
	color: #0C92D0
}

.blog-post-content a:hover {
	color: #535353;
	text-decoration: underline;
}

/* Links for CTA "button" elements */
a.cta:hover,
.cat-link a:hover,
.x-anchor.cta:hover .x-anchor-text {
	text-decoration: underline;
}

a.cta:not(.x-anchor):after,
.x-anchor.cta span.x-anchor-text-primary:after {
	content: "\f054";
	font-family: "FontAwesome";
	margin-left: 10px;
	display: inline-block;
}

/* Rounded corners for inline blog images */
.category-blog-category p>img {
	border-radius: 20px;
}

/* fixes post content font size & color if outside <p> */
.x-the-content {
	font-size: 23px;
	color: #535353 !important;
}



/* Premium "Continue Reading" button */
a.gatedShowMoreCTA,
a.gatedShowMoreCTA:hover {
	color: #FAC017;
}


/* CPA Directory */


#facetwp-map {
	border-radius: 25px;
}

.facetwp-facet-number_of_cpas_found,
.stateName {
	display: inline;
}

/* Map Bubble Styles on click of CPA */
.gm-style-iw-d h3,
.gm-style-iw-d p {
	margin-top: 0;
	font-family: 'Open Sans';
}

.gm-style-iw-d p {
	font-size: 16px;
	font-weight: 400;
	color: #535353
}

.gm-style-iw-c {
	border-radius: 14px !important
}

.gm-style-iw button[title="Close"] {
	display: none !important;
}



/* Product Styles */
.product-shapes {
	pointer-events: none;
}

/* hides modal toggle for demo video modal */
.x-anchor-toggle[data-x-toggle-hash="watch-demo-video"] {
	display: none
}

/* (TODO) TEMPORARY STYLES FIX for the multiple modals bug */
/*.x-modal.x-active:not(.live-demo-btn){ display: none }*/
/*footer + .x-modal.x-active:not(.live-demo-btn) { display: initial }*/




/* Styles for any Events block */
a[data-event-type] {
	border-top: 30px solid #CCC;
	border-radius: 25px;
}

a[data-event-type="Webinars"] {
	border-top-color: #47C0B7 !important
}

a[data-event-type="Webinars"] .x-text h3.x-text-content-text-primary {
	color: #47C0B7
}

a[data-event-type="Speaking Events"] {
	border-top-color: #EE3279 !important
}

a[data-event-type="Speaking Events"] .x-text h3.x-text-content-text-primary {
	color: #EE3279
}

a[data-event-type="Industry Events"] {
	border-top-color: #F5A822 !important
}

a[data-event-type="Industry Events"] .x-text h3.x-text-content-text-primary {
	color: #F5A822
}

a[data-event-type="Product Demos"] {
	border-top-color: #7BBA42 !important
}

a[data-event-type="Product Demos"] .x-text h3.x-text-content-text-primary {
	color: #7BBA42
}

a[data-event-type="For CPAs"] {
	border-top-color: #CC7999 !important
}

a[data-event-type="For CPAs"] .x-text h3.x-text-content-text-primary {
	color: #CC7999
}

.sales_author .x-col:last-child {
	padding: 10px 0;
}

.sales_author a,
.sales_author a:hover {
	text-decoration: none;
}

.sales_author img {
	border-radius: 50%;
	height: 90px;
	width: 90px;
	margin-right: 20px;
	object-fit: cover;
	object-position: 100% 0%;
}

.sales_author .x-text-content-text-subheadline {
	font-family: inherit;
	font-size: 18px;
	font-style: italic;
	font-weight: inherit;
	line-height: 1.4;
	letter-spacing: 0em;
	text-transform: none;
	color: #535353;
}

.sales_author .x-text-content-text-primary {
	font-family: "Open Sans", sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: #000;
	line-height: 1.1;
}

/* hides admin bar for hr on front-end */
body.user-HR #wp-admin-bar-edit,
body.user-HR #wp-admin-bar-new-content,
body.user-HR #wp-admin-bar-wpseo-menu,
body.user-HR #wp-admin-bar-user-info,
body.user-HR #wp-admin-bar-edit-profile {
	display: none;
}

body.user-HR #wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li {
	margin-left: 0;
}

/* New scrollable table styles */
.scrollable-container {
	overflow-x: auto;
}

table.scrollable {
	min-width: 900px;
}

.infographic-panel {
	max-height: 405px;
	overflow: hidden;
	position: relative;
	transition: max-height 0.5s ease-in-out;
}

.infographic-panel::before {
	content: '';
	background: #ffffff;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, rgba(241, 241, 241, 1) 95%);
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.infographic-panel::after {
	content: 'See Full Image';
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	z-index: 2;
	color: black;
	border-radius: 5px;
	padding: 0.5em 2em;
	background: #ffd240;
	margin: 0 auto;
	width: 250px;
	text-align: center;
	font-weight: 700;
}

.infographic-panel.expand {
	max-height: 10000px;
	overflow: visible;
	margin-bottom: 4em;
}

.infographic-panel.expand::before {
	display: none;
}

.infographic-panel.expand::after {
	content: 'Click to Collapse';
	bottom: -3em;
}

/* Responsive Styles */


/* LG */
@media (min-width: 979px) and (max-width: 1199.98px) {

	h1 {
		font-size: 69px !important
	}

	h2 {
		font-size: 60px !important
	}

	h3 {
		font-size: 32px !important
	}

	.blog-post-content h1 {
		font-size: 69px !important
	}

	.blog-post-content h2 {
		font-size: 60px !important
	}

	.blog-post-content h3 {
		font-size: 32px !important
	}

}

/* MD (and under) */
@media (max-width: 978.98px) {

	/*    .live-demo-btn,*/
	.page-header .right-svg,
	.page-header .left-svg {
		display: none;
	}

	.table-of-contents .widget li {
		padding: 5px 0 0 10px;
	}

}

/* MD */
@media (min-width: 767px) and (max-width: 978.98px) {

	h1 {
		font-size: 59px !important
	}

	h2 {
		font-size: 48px !important
	}

	h3 {
		font-size: 30px !important
	}

	.blog-post-content h1 {
		font-size: 59px !important
	}

	.blog-post-content h2 {
		font-size: 48px !important
	}

	.blog-post-content h3 {
		font-size: 30px !important
	}

	.page-header {
		padding: 60px
	}



}

/* SM and XS (removed min-width: 480px) */
@media (max-width: 766.98px) {

	h1 {
		font-size: 48px !important
	}

	h2 {
		font-size: 36px !important
	}

	h3 {
		font-size: 27px !important
	}

	.blog-post-content h1 {
		font-size: 48px !important
	}

	.blog-post-content h2 {
		font-size: 36px !important
	}

	.blog-post-content h3 {
		font-size: 27px !important
	}

	.page-header {
		padding: 30px
	}

}

/* XS */
@media (max-width: 479.98px) {}