/* 
Theme Name: Thompson Flaherty
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Theme for Thompson Flaherty built on Hello Elementor.
Author: Team WPValet
Author URI: https://wpvalet.co/
Template: hello-elementor
Version: 1.0.0
Text Domain: thompsonflaherty
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* General */
p:last-child {
	margin-bottom: 0 !important;
}

p a {
	text-decoration: underline !important;
	transition: all 0.3s ease;
}

p a:hover {
	text-decoration: none !important;
}

p {
	overflow-wrap: anywhere;
}

.tfc-white-icon svg {
	filter: brightness(100);
}

.tfc-bg-blur {
	backdrop-filter: blur(25px);
}

.red-text {
	color: #A42223 !important;
}

@media (max-width: 767px) {
	.tfc-icon-list ul.elementor-icon-list-items  {
		gap: 14px;
	}	
}

/* Header */
.tfc-header-menu ul.sub-menu {
	padding: 10px !important;
	width: 200px !important;
	background-color: #FFFFFF !important;
}

.tfc-header-menu a.elementor-sub-item:hover {
	border-radius: 8px !important;
}

.tfc-header {
	transition: background-color 0.3s;
}

.tfc-header.sticky-active {
	background-color: #FFFFFF !important;
	box-shadow: 0 8px 20px -10px rgba(0, 0, 0, 0.1);
}

.tfc-header.home.sticky-active {
	background-color: #595656 !important;
}

.tfc-header.sticky-active .e-con-inner {
	padding: 16px 0px !important;
}

.tfc-header .tfc-header-logo img {
	transition: all 0.3s ease;
}

@media (min-width: 1025px) {
	.tfc-header.sticky-active .tfc-header-logo img {
		width: 80px;
	}
}

@media (max-width: 1024px) {
	.tfc-header-menu ul.sub-menu {
		width: 100% !important;
		box-shadow: none !important;
	}
	
	.tfc-header-menu ul li.menu-item a {
		display: flex !important;
		justify-content: space-between;
	}
}

/* Contact Form */
.gform_required_legend {
	display: none !important;
}

.tfc-contact-form .gform_wrapper.gravity-theme .gform_fields{
	grid-row-gap: 8px !important;
}

.tfc-contact-form.white-form .gform_wrapper.gravity-theme .gform_fields{
	grid-column-gap: 8px !important;
	grid-row-gap: 24px !important;
}

.tfc-contact-form #gform_fields_1  {
	display: flex !important;
	flex-direction: row;
	gap: 24px;
	align-items: center;
}

.tfc-contact-form #gform_fields_1 #field_1_1 {
	width: 68%;
}

.tfc-contact-form #gform_fields_1 #field_submit {
	width: 32%;
}

.tfc-contact-form.white-form label.gfield_label{
	font-family: "Red Hat Text";
	font-weight: 400;
	font-size: 14px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--e-global-color-primary);
}

.tfc-contact-form .gfield--type-email input,
.tfc-contact-form .gfield--type-text input,
.tfc-contact-form .gfield--type-select select,
.tfc-contact-form .gfield--type-textarea textarea{
	height: 60px;
	background-color: rgba(0, 0, 0, 0.2) !important;
	border: none !important;
	border-radius: 8px !important;
	font-family: "Red Hat Text" !important;
	font-size: 18px !important;
	line-height: 1.1em;
	letter-spacing: 0;
	color: #FFFFFF;
	outline: none !important;
	padding: 20px 24px !important;
}

.tfc-contact-form.white-form .gfield--type-email input,
.tfc-contact-form.white-form .gfield--type-text input,
.tfc-contact-form.white-form .gfield--type-select select,
.tfc-contact-form.white-form .gfield--type-textarea textarea{
	color: var(--e-global-color-primary);
	background-color: #0000000D !important;
}

.tfc-contact-form.white-form .gform_wrapper select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.66939 5.33606C4.58166 5.33657 4.49468 5.31975 4.41346 5.28658C4.33223 5.2534 4.25835 5.20452 4.19606 5.14273L0.196061 1.14273C0.0705253 1.01719 0 0.846929 0 0.669394C0 0.49186 0.0705253 0.321597 0.196061 0.196061C0.321597 0.0705253 0.49186 0 0.669394 0C0.846929 0 1.01719 0.0705253 1.14273 0.196061L4.66939 3.72939L8.19606 0.202728C8.3236 0.0935104 8.48765 0.0364393 8.65543 0.0429201C8.82321 0.0494009 8.98237 0.118956 9.1011 0.237686C9.21983 0.356416 9.28939 0.515575 9.29587 0.683359C9.30235 0.851143 9.24528 1.01519 9.13606 1.14273L5.13606 5.14273C5.01189 5.26589 4.84429 5.33532 4.66939 5.33606Z' fill='%23595656'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-position: right 24px center;
	background-size: 12px;
	padding-right: 40px !important;
}

.tfc-contact-form.white-form .gform_wrapper select::-ms-expand {
	display: none;
}

.tfc-contact-form .gfield--type-email input::placeholder,
.tfc-contact-form .gfield--type-text input::placeholder {
	color: #FFFFFF !important;
}

.tfc-contact-form.white-form .gfield--type-email input::placeholder,
.tfc-contact-form.white-form .gfield--type-text input::placeholder,
.tfc-contact-form.white-form .gfield--type-select select::placeholder,
.tfc-contact-form.white-form .gfield--type-textarea textarea::placeholder{
	color: #00000080 !important;
}

.tfc-contact-form input[type="submit"]{
	line-height: 1em !important;
}

.tfc-contact-form .gfield--type-submit,
.tfc-contact-form.general input[type="submit"] {
	background-color: #FFFFFF;
	border-radius: 100px;
	background-position: calc(100% - 32px) center;
	background-repeat: no-repeat;
	background-size: 11.6px;
	transition: background-color 0.3s ease;
}

.tfc-contact-form #gform_fields_1 .gfield--type-submit{
	background-image: url("data:image/svg+xml;utf8,\
		<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23595656'>\
		<path d='M1.6875 11.3203L9.58594 3.42188V10.3359C9.58594 10.6016 9.68359 10.832 9.87891 11.0273C10.0742 11.2227 10.3125 11.3203 10.5938 11.3203C10.875 11.3203 11.1133 11.2227 11.3086 11.0273C11.5039 10.832 11.6016 10.6016 11.6016 10.3359V1.00781C11.6016 0.742188 11.5039 0.511719 11.3086 0.316406C11.1133 0.121094 10.875 0.0234375 10.5938 0.0234375L1.26562 0C1.14062 0 1.01562 0.0273438 0.890625 0.0820312C0.765625 0.136719 0.65625 0.203125 0.5625 0.28125C0.46875 0.375 0.398438 0.484375 0.351562 0.609375C0.304688 0.734375 0.28125 0.867188 0.28125 1.00781C0.28125 1.27344 0.378906 1.50391 0.574219 1.69922C0.769531 1.89453 1 1.99219 1.26562 1.99219L8.17969 2.01562L0.28125 9.91406C0.09375 10.1016 0 10.3359 0 10.6172C0 10.8984 0.09375 11.1328 0.28125 11.3203C0.46875 11.5234 0.703125 11.625 0.984375 11.625C1.26562 11.625 1.5 11.5234 1.6875 11.3203Z'/>\
		</svg>");
}

.tfc-contact-form .gfield--type-submit:hover {
	background-color: rgba(255, 255, 255, 0.8) !important;
}

.tfc-contact-form.general input[type="submit"] {
	color: #A42223 !important;
	background-image: url("data:image/svg+xml,%0A%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.6875 11.3203L9.58594 3.42188V10.3359C9.58594 10.6016 9.68359 10.832 9.87891 11.0273C10.0742 11.2227 10.3125 11.3203 10.5938 11.3203C10.875 11.3203 11.1133 11.2227 11.3086 11.0273C11.5039 10.832 11.6016 10.6016 11.6016 10.3359V1.00781C11.6016 0.742188 11.5039 0.511719 11.3086 0.316406C11.1133 0.121094 10.875 0.0234375 10.5938 0.0234375L1.26562 0C1.14062 0 1.01562 0.0273438 0.890625 0.0820312C0.765625 0.136719 0.65625 0.203125 0.5625 0.28125C0.46875 0.375 0.398438 0.484375 0.351562 0.609375C0.304688 0.734375 0.28125 0.867188 0.28125 1.00781C0.28125 1.27344 0.378906 1.50391 0.574219 1.69922C0.769531 1.89453 1 1.99219 1.26562 1.99219L8.17969 2.01562L0.28125 9.91406C0.09375 10.1016 0 10.3359 0 10.6172C0 10.8984 0.09375 11.1328 0.28125 11.3203C0.46875 11.5234 0.703125 11.625 0.984375 11.625C1.26562 11.625 1.5 11.5234 1.6875 11.3203Z' fill='%23A42223'/%3E%3C/svg%3E%0A");
	padding-right: 55px !important;
}

.tfc-contact-form #gform_fields_1 input[type="submit"] {
	color: #595656 !important;
	background-color: transparent !important;
	transition: all 0.3s ease !important;
	border: none !important;
	width: 100%;
	text-align: left !important;
}

.tfc-contact-form.white-form .gform-footer{
	padding-bottom: 0 !important;
}

.tfc-contact-form.white-form input[type="submit"]{
	width: 100%;
	font-size: 20px;
	margin: 0 !important;
}

.tfc-img-box {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)),
		linear-gradient(0deg, #F6F6F6, #F6F6F6);

}

.tfc-accordion .e-n-accordion-item {
	padding: 20px 24px;
	border-radius: 16px;
	background-color: #FFF;
}

.tfc-accordion.cfo .e-n-accordion-item {
	background-color: var(--e-global-color-secondary);
}


.tfc-button-call .elementor-button-icon {
	font-size: 11px;
}

.tfc-background {
	background:
		linear-gradient(0deg, #F6F6F6, #F6F6F6);

}

.tfc-gradient-box {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)),
		linear-gradient(0deg, #FFFFFF, #FFFFFF);
}

@media (max-width: 767px) {
	.tfc-contact-form #gform_fields_1 {
		flex-direction: column;
		gap: 10px;
	}

	.tfc-contact-form #gform_fields_1 #field_1_1,
	.tfc-contact-form #gform_fields_1 #field_submit {
		width: 100% !important;
	}

	.tfc-contact-form.white-form input[type="submit"]{
		width: 100%;
		font-size: 16px;
		margin: 0 !important;
	}
}

/* Loop Carousel */
.tfc-progress-loop .swiper-pagination-progressbar {
	position: relative !important;
	margin-top: 120px !important;
	max-width: var(--content-width) !important;
	border-radius: 100px !important;
	background: #F6E9E9 !important;
}

.tfc-progress-loop .swiper-pagination-progressbar-fill {
	border-radius: 100px !important;
}

@media (max-width: 1280px) {
	.tfc-progress-loop .swiper-pagination-progressbar {
		max-width: calc(100% - 20px) !important;
	}
}

@media (max-width: 820px) {
	.tfc-progress-loop .swiper-pagination-progressbar {
		margin-top: 30px !important;
	}
}

/* How We Work Carousel */
.tfc-progress-loop.how-we-work .swiper-pagination-progressbar {
	position: absolute !important;
	margin-top: 0 !important;
}

.tfc-how-we-work__box:hover .tfc-how-we-work__box-number{
	background-color: #FFFFFF33;
}

.tfc-how-we-work__box:hover .tfc-how-we-work__box-title h3,
.tfc-how-we-work__box:hover .tfc-how-we-work__box-content,
.tfc-how-we-work__box:hover .tfc-how-we-work__box-highlight div{
	color: #fff !important;
}

.tfc-financial-box-inner {
	max-height: 790px;
	overflow-y: auto;
	overflow-x: hidden;
	scroll-behavior: smooth;
}

.tfc-financial-box-inner::-webkit-scrollbar {
	width: 7px;
}

.tfc-financial-box-inner::-webkit-scrollbar-track {
	background: #F6E9E9;
	border-radius: 999px;
}

.tfc-financial-box-inner::-webkit-scrollbar-thumb {
	background: var(--e-global-color-accent);
	border-radius: 999px;
}

.tfc-financial-box-inner {
	scrollbar-width: thin;
	scrollbar-color: var(--e-global-color-accent) #F6E9E9;
} 

@media (max-width: 767px){
	.tfc-financial-box-inner {
		max-height: unset;
		overflow-y: auto;
		overflow-x: hidden;
	}
}

/* Locations Tab */
.tfc-locations-tab .e-n-tabs-heading button:hover,
.tfc-locations-tab .e-n-tabs-heading button:focus {
	border-radius: 24px 24px 0 0 !important;
}

/* Request Portal Popup */
#elementor-popup-modal-296 {
	z-index: 9999999999 !important;
}
