/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/

/* Use This File To Add Site Specific Styles and Override Theme and Plugin Defaults CSS
 * Don't Edit the original CSS files
*/

/* Hack for making Responsive editing work */

.fl-responsive-preview-mask {
	background: transparent;
	bottom: auto;
	left: auto;
	position: relative;
	right: auto;
	top: auto;
	z-index: 99999;
}

.fl-responsive-preview {
	bottom: auto;
	left: auto;
	position: relative;
	right: auto;
	top: auto;
	margin-top: auto;
	z-index: 100000;
}

@media (min-width: 768px) {

	.sticky {
		position: -webkit-sticky;
		position: sticky;
		top: 0;
	}

	.page-sidebar.sticky {
		top: 140px;
	}

	.shiftnav-wrap {
		overflow: visible !important;
		/* Disable overflow hidden as it prevents sticky from working */
	}

}

/* Set Box sizing for all divs and elements to control widths and padding etc */

html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

*,
*:before,
*:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

/* Font Smoothing */

html,
body {
	height: 100%;
	/* Font varient */
	font-variant-ligatures: none;
	-webkit-font-variant-ligatures: none;
	/* Smoothing */
	text-rendering: optimizeLegibility;
	-moz-osx-font-smoothing: grayscale;
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
}

.fl-page-content {
	background-color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	margin-bottom: 20px;
}

h1,
h2 {
	text-transform: capitalize;
}

p {
	margin: 0 0 25px;
	line-height: 1.5;
}

.light-blue {
	color: #02B7EF !important;
}

/*p:last-child {
	
margin: 0;
}*/

@media (min-width: 320px) {

	h1 {
		font-size: 28px;
	}

	h2 {
		font-size: 20px;
	}

	h3 {
		font-size: 20px;
	}

	h4 {
		font-size: 20px;
	}

	h5 {
		font-size: 18px;
	}

	h6 {
		font-size: 16px;
	}

	p {
		font-size: 15px;
	}

	li {
		font-size: 15px;
	}

}

@media (min-width: 480px) {

	h1 {
		font-size: 38px;
	}

	h2 {
		font-size: 28px;
	}

	h3 {
		font-size: 26px;
	}

	h4 {
		font-size: 24px;
	}

	h5 {
		font-size: 22px;
	}

	h6 {
		font-size: 20px;
	}

	p {
		font-size: 16px;
	}

	li {
		font-size: 16px;
	}

}

@media (min-width: 640px) {

	p {
		font-size: 16px;
	}

	li {
		font-size: 16px;
	}

}

@media (min-width: 800px) {

	h1 {
		font-size: 42px;
	}

	h2 {
		font-size: 28px;
	}

	h3 {
		font-size: 24px;
	}

	h4 {
		font-size: 22px;
	}

	h5 {
		font-size: 20px;
	}

	h6 {
		font-size: 18px;
	}

}

@media (min-width: 1100px) {

	h1 {
		font-size: 42px;
	}

	.home h2 {
		font-size: 36px;
	}

	p {
		font-size: 18px;
	}

	li {
		font-size: 18px;
	}

}

/*! General Layout ---------------------------------------*/

.rw-remove-col-padding {
	margin-left: -15px;
	margin-right: -15px;
}

.fl-builder-edit .fl-page-nav-wrap {
	z-index: 1000;
	/* Allows the top row handles to show in edit mode */
}

@media (min-width: 320px) {

	.fl-page {
		padding-top: 120px !important;
	}

	.container {
		max-width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}

}

@media (min-width: 480px) {

	.fl-page {
		padding-top: 140px !important;
	}

}

@media (min-width: 576px) {

	.container {
		max-width: 100%;
	}

}

@media (min-width: 601px) {

	.admin-bar .fl-page {
		top: 0;
	}

}

@media (min-width: 640px) {

	.fl-page {
		padding-top: 160px !important;
	}

}

@media (min-width: 768px) {

	.container {
		max-width: 100%;
		padding-left: 40px;
		padding-right: 40px;
	}

}

@media (min-width: 992px) {

	.fl-row-fixed-width {
		max-width: 1340px !important;
	}

	.fl-page {
		padding-top: 200px !important;
	}

}

@media (min-width: 1100px) {

	.fl-full-width .container {
		max-width: 100%;
	}

	/* Needed in Header */
	.fl-full-width .fl-page-header .container {
		width: 100%;
		max-width: 100%;
	}

	.fl-row-content-wrap {
		padding-top: 60px;
		padding-bottom: 60px;
	}

}

@media (max-width: 768px) {

	.fl-col-small:not(.fl-col-small-full-width) {
		max-width: 100%;
	}

}

@media (max-width: 767px) {

	.fl-col-small:not(.fl-col-small-full-width) {
		max-width: 100%;
	}

}

/*! Home Hero Image ------------------------------*/

.rw-home-hero.fl-row-bg-overlay .fl-row-content {
	position: unset;
}

@media (max-width: 1024px) {

	.cards-accepted {
		display: none;
	}

}

@media (min-width: 1025px) {

	.fl-node-r6e05872qsz4 {
		display: none;
	}

}



@media (min-width: 320px) {

	:root {
		--animate-delay: 0.3s;
	}

	.rw-home-hero .fl-row-content-wrap {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		background-size: cover;
		background-position-x: center;
		background-position-y: center;
		height: 320px;
		padding: 0;
	}

	.rw-home-hero .fl-row-content-wrap .fl-row-content,
	.rw-home-hero .fl-row-content-wrap .fl-row-content .fl-col-group {
		display: flex;
		width: 100%;
		align-items: center;
	}

	.rw-home-hero .fl-module-content {
		margin: 0;
	}

	.rw-home-hero .fl-module-photo {
		position: relative;
		z-index: 10;
	}

	.rw-home-hero .rw-text-line1,
	.rw-home-hero .rw-text-line2 {
		font-size: 18px;
		line-height: 1.2;
		font-weight: 400;
		color: #fff;
		text-align: center;
		text-shadow: 0 3px 6px rgba(0, 0, 0, 0.46);
		font-family: "Calistoga", sans-serif;
	}

	.rw-home-hero .rw-text-line2 {
		font-size: 16px;
	}

	.rw-home-hero .fl-module-button {
		margin-top: 20px;
		text-align: center;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 6px 13px;
		font-size: 18px;
		border-radius: 3px;
		-webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.46);
		box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.46);
	}

}

@media (min-width: 400px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 330px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 6px 20px;
		font-size: 20px;
	}

}

@media (min-width: 480px) {

	.rw-home-hero .rw-text-line1 {
		font-size: 24px;
		line-height: 34px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 6px 20px;
		font-size: 24px;
	}

}

@media (min-width: 700px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 420px;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 32px;
		line-height: 44px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 10px 40px;
		font-size: 24px;
	}

}

@media (min-width: 769px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 480px;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 36px;
		line-height: 52px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 12px 48px;
		font-size: 28px;
	}

}

@media (min-width: 800px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 500px;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 40px;
		line-height: 60px;
	}

}

@media (min-width: 900px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 560px;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 40px;
	}

}

@media (min-width: 1024px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 600px;
		padding: 0;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 50px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 12px 40px;
	}

}

@media (min-width: 1200px) {

	.rw-home-hero .fl-row-content-wrap {
		height: 730px;
		min-height: 600px;
	}

	.rw-home-hero .rw-text-line1 {
		font-size: 50px;
	}

	.rw-home-hero .rw-text-line2 {
		font-size: 40px;
	}

	.rw-home-hero .fl-module-button a.fl-button {
		padding: 15px 50px;
	}

}


/*! Home Callouts ---------------------------------------
@media (min-width: 320px) {
	
	.rw-icon-callouts .fl-html {
		display: grid;
		overflow: visible;
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: minmax(min-content, max-content);
		grid-column-gap: 30px;
		grid-row-gap: 30px;
	}
	
	.rw-icon-callouts .item {
		display: flex;
		flex-direction: column;
		align-items: center;
		flex: 1;
		padding: 0;
	}

	.rw-icon-callouts .item .callout-icon {
		width: 120px;
		min-height: 120px;
		border-radius: 50%;
		margin-bottom: 10px;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #eee;
		border: 1px solid #dedede;
		z-index: 2;
	}
		
	.rw-icon-callouts .item .callout-content {
		padding: 0;
		border-radius: 5px;
		font-size: 16px;
		z-index: 1;
		height: 100%;
	}
	
	.rw-icon-callouts .item .callout-content h3 {
		font-size: 16px;
		font-style: normal;
		margin-bottom: 0;
	}
	
	.rw-icon-callouts .item p {
		color: #555;
		font-size: 16px;
	}
	
	.rw-icon-callouts .item p:last-of-type {
		margin-bottom: 10px;
	}

}

@media (min-width: 600px) {
	
	.rw-icon-callouts .item .callout-content h3 {
		font-size: 20px;
		font-style: normal;
		margin-bottom: 0;
	}

}

@media (min-width: 800px) {

	.rw-icon-callouts .fl-html {

		grid-template-columns: repeat(4, 1fr);
	}

}

*/

/*! Service Areas ---------------------------------------

@media (min-width: 320px) {

	.rw-service-areas {
		display: grid;
	    overflow: visible;
	    grid-template-columns: repeat(1, 1fr);
	    grid-auto-rows: minmax(min-content, max-content);
	    grid-column-gap: 30px;
	    grid-row-gap: 30px;
	}
	
	.rw-service-areas .item {
		background-color: rgba(0,0,0,0.7);
		padding: 30px;
		border-radius: 5px;
	}
	
	.rw-service-areas .item h3 {
		text-align: center;
		color: #fff;
	}
	
	.rw-service-areas .item ul {
		-webkit-columns: 2;
		columns: 2;
		list-style: none;
		padding-left: 0;
		margin-bottom: 0;
	}
	
	.rw-service-areas .item ul li {
		color: #fff;
		font-size: 14px;	
	}

}

@media (min-width: 600px) {
	
	.rw-service-areas {
		grid-template-columns: repeat(2, 1fr);
	}
	
}

@media (min-width: 1140px) {
	
	.rw-service-areas .item ul li {
		font-size: 16px;
	}
	
}
*/

/*! Callouts */

.rw-callouts .fl-html {
	display: grid;
	overflow: visible;
	grid-auto-rows: minmax(min-content, max-content);
	grid-column-gap: 30px;
	grid-row-gap: 30px;
}

.rw-callouts .item {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.rw-callouts a.item:hover {
	text-decoration: none;
}

.rw-callouts .item .callout-image {
	border: 3px solid #fff;
	border-radius: 3px;
	margin-bottom: 10px;
	overflow: hidden;
}

.rw-callouts .item .callout-image img {
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.rw-callouts .item:hover .callout-image img {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.rw-callouts .item .callout-content h3 {
	color: #fff;
	text-transform: capitalize;
	text-align: center;
	font-weight: 700;
	font-size: 24px;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.rw-callouts a.item:hover h3 {
	color: #E50119;
}

.rw-callouts .item .callout-content p {
	font-size: 16px;
	text-align: center;
}

@media (min-width: 320px) {

	.rw-callouts .fl-html {
		grid-template-columns: repeat(1, 1fr);
	}

}

@media (min-width: 640px) {

	.rw-callouts .fl-html {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media (min-width: 960px) {

	.rw-callouts .fl-html {
		grid-template-columns: repeat(3, 1fr);
	}

}

/*! h1-full-width-row
---------------------------------------*/

.h1-full-width-row {
	background-color: #A21C37;
}

.h1-full-width-row .fl-row-content-wrap {
	padding: 40px 20px;
}

.h1-full-width-row h1 {
	color: #fff;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0;
}

@media (min-width: 320px) {

	.h1-full-width-row h1 {
		font-size: 28px;
	}

}

@media (min-width: 768px) {

	.h1-full-width-row h1 {
		font-size: 40px;
	}

}



/*! Breadcumbs
------------------------------------------------------------*/

.rw-breadcrumbs {
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background-color: #fff;
}

.rw-breadcrumbs .fl-row-content-wrap {
	font-size: 14px;
	padding-top: 0;
	padding-bottom: 0;
}

.rw-breadcrumbs .fl-module-content {
	margin-top: 10px;
	margin-bottom: 10px;
}

.rw-breadcrumbs-inline {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	margin-top: 10px;
	padding-top: 10px;
	margin-bottom: 0;
	color: #fff;
	font-size: 14px;
	width: fit-content;
}

.rw-breadcrumbs-inline a {
	color: #fff;
}

@media (max-width: 768px) {

	.rw-breadcrumbs .fl-row-content-wrap {
		font-size: 12px;
	}

}

/*! Tables
------------------------------------------------------------*/

.htable {
	width: 100%;
	margin-bottom: 25px;
	border: 1px solid #ccc;
	border-bottom: none;
	border-spacing: 0;
}

.htable thead th {
	background-color: #D8D7CF;
	padding: 5px;
}

.htable tr {
	border-bottom: 1px solid #ccc;
}

.htable tr:nth-child(even) {
	background-color: #f5f5f5;
}

.htable tbody th {
	padding: 5px;

}

.htable td {
	padding: 5px;
}

.htable-centered-td th,
.htable-centered-td td {
	text-align: center;
}

/*! Content Styles ------------------------------*/

.rw-white-box .fl-module-content {
	background-color: #fff;
	padding: 30px;
	border-radius: 3px;
}

.rw-dark-bg h1,
.rw-dark-bg h2,
.rw-dark-bg h3,
.rw-dark-bg h4,
.rw-dark-bg h5,
.rw-dark-bg h6,
.rw-dark-bg p,
.rw-dark-bg li {
	color: #fff;
}

.rw-dark-bg .gfield_checkbox label {
	color: #fff;
}

button,
input[type=button],
input[type=submit] {
	padding: 14px 30px;
}

button,
.fl-button,
input[type=button],
input[type=submit],
.navbar-toggle {
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

/*! RW QUOTE BOX -----------------------------

.rw-quote {
	font-family: "Playfair Display",serif;
	font-weight: 400;
	font-size: 28px;
	line-height: 1.8;
	color: #05235D;
}

.rw-quote-author {
	color: #05235D;
	font-size: 24px;
}

.rw-quote-box {
	
}

.rw-quote-box .fl-rich-text {
	padding: 0 8%;
	position: relative;
}

.rw-quote-box .fl-rich-text:before,
.rw-quote-box .fl-rich-text:after {
	position: absolute;
	font-size: 210px;
	line-height: 1;
	color: rgba(255, 255, 255, 0.56);
	font-style: normal;
	font-family: "Playfair Display",serif;
	
z-index: 1;
}

.rw-quote-box .fl-rich-text:before {
	top: -35px;
	left: 0;
	content: "\201C";
}

.rw-quote-box .fl-rich-text:after {
	top: -35px;
	right: 0;
	content: "\201D";
}

.rw-quote-box p {
	font-size: 20px;
}

@media (min-width: 320px) {
	
	.rw-quote-box .fl-rich-text {
	padding: 0;
	}
	
	.rw-quote-box p {
	font-size: 16px;
	text-align: center;
	}
	
	.rw-quote-box .fl-rich-text:before, .rw-quote-box .fl-rich-text:after {
	display: none;
	}

}

@media (min-width: 400px) {
	
	.rw-quote-box .fl-rich-text {
	padding: 0 8%;
	}
	
	.rw-quote-box p {
	font-size: 16px;
	}
	
	.rw-quote-box .fl-rich-text:before, .rw-quote-box .fl-rich-text:after {
	display: block;
	font-size: 100px;
	}
	
	.rw-quote-box .fl-rich-text:before {
	top: -14px;
	left: -15px;
	}
	
	.rw-quote-box .fl-rich-text:after {
	top: -14px;
	right: -15px;
	}

}

@media (min-width: 600px) {
	
	.rw-quote-box p {
	font-size: 18px;
	text-align: left;
	}
	
	.rw-quote-box .fl-rich-text:before, .rw-quote-box .fl-rich-text:after {
	font-size: 130px;
	}
	
	.rw-quote-box .fl-rich-text:before {
	top: -20px;
	}
	
	.rw-quote-box .fl-rich-text:after {
	top: -20px;
	}
	
}

@media (min-width: 900px) {
	
	.rw-quote-box p {
	font-size: 20px;
	}
	
	.rw-quote-box .fl-rich-text:before, .rw-quote-box .fl-rich-text:after {
	font-size: 180px;
	}
	
	.rw-quote-box .fl-rich-text:before {
	top: -30px;
	}
	
	.rw-quote-box .fl-rich-text:after {
	top: -30px;
	}
	
}

@media (min-width: 1100px) {

	.rw-quote-box .fl-rich-text:before, .rw-quote-box .fl-rich-text:after {
	font-size: 210px;
	}
	
	.rw-quote-box .fl-rich-text:before {
	top: -35px;
	}
	
	.rw-quote-box .fl-rich-text:after {
	top: -35px;
	}
	
}
*/

/*! RW Footnotes ------------------------------*/

.rw-footnotes ol {
	padding-left: 20px;
}

.rw-footnotes ol li {
	font-size: 14px;
}

/*! Sidebar Styles ------------------------------*/

@media (min-width: 320px) {

	.fl-sidebar {
		margin-top: 20px;
	}

	.fl-widget .fl-widget-title,
	h4.fl-widget-title,
	.blog-categories.fl-widget h4.fl-widget-title,
	.rw-widget-box-header .fl-html h3.widgettitle,
	.fl-module-sidebar .widget_text h4.fl-widget-title,
	.fl-sidebar .widget_text h4.fl-widget-title {
		background-color: #000;
		padding: 15px 30px;
		margin: 0;
		-webkit-border-radius: 5px 5px 0 0;
		border-radius: 5px 5px 0 0;
		font-size: 22px;
		color: #fff;
		text-align: center;

	}

	.blog-categories.fl-widget ul,
	.rw-widget-box-header .fl-html .widgetbody,
	.fl-sidebar .textwidget,
	.fl-sidebar .gform_wrapper {
		border: 1px solid #ccc;
		background-color: #eee;
		margin: 0;
		padding: 20px;
		-webkit-border-radius: 0 0 5px 5px;
		border-radius: 0 0 5px 5px;
	}


	.blog-categories.fl-widget ul,
	.fl-sidebar .textwidget {
		padding: 20px;
		background-color: #fff;
	}

	.rw-widget-box-header .fl-html .widgetbody p:last-of-type {
		margin-bottom: 0;
	}

	.rw-widget-box-header .button {
		background-color: #2A506F;
		-webkit-border-radius: 3px;
		border-radius: 3px;
		color: #fff;
		text-transform: uppercase;
		font-weight: 700;
		display: block;
		text-align: center;
		padding: 13px;
	}



	.rw-widget-box-no-header .fl-html,
	.rw-widget-box-no-header .fl-rich-text {
		border: 1px solid #C3C3BB;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		background-color: #EBEBDE;
		padding: 20px 30px;
	}

	.rw-widget-box-no-header h3 {
		font-size: 22px;
	}

	.rw-widget-no-box-no-header h3 {
		font-size: 22px;
	}

	.blog-categories.fl-widget ul li:first-of-type {
		border-top: 1px solid #eee;
	}

	.blog-categories.fl-widget ul li {
		position: relative;
		overflow: hidden;
		display: flex;
		flex-direction: row;
		border-bottom: 1px solid #eee;
		margin-bottom: 0;
	}

	.blog-categories.fl-widget ul li a {
		padding: 10px 0 10px 15px;
		color: #666;
		width: calc(100% - 40px);
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}

	.blog-categories.fl-widget ul li a:hover {
		color: #A11E36;
		text-decoration: none;
	}

	.blog-categories.fl-widget ul li span.count {
		background-color: #eee;
		color: #666;
		border-radius: 50px;
		padding: 0;
		line-height: 1.4;
		font-size: 13px;
		margin: 6px 15px 6px 0;
		text-align: center;
		width: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		cursor: default;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}

	.blog-categories.fl-widget ul li:hover span.count {
		background-color: #A11E36;
		color: #fff;
	}

	/* Default Side Bar Menu Styles */

	.fl-module-sidebar .widget_nav_menu li,
	.fl-sidebar .widget_nav_menu li {
		margin-bottom: 2px !important;
	}

	.fl-module-sidebar .widget_nav_menu li a,
	.fl-sidebar .widget_nav_menu li a {
		display: block;
		padding: 13px 20px;
		font-size: 15px;
		background: #EDEDED;
		-webkit-border-radius: 3px;
		border-radius: 3px;
		color: #01A8F8;
		text-align: left;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}

	.fl-module-sidebar .widget_nav_menu li a:hover,
	.fl-sidebar .widget_nav_menu li a:hover {
		background: #02AFB9;
		color: #fff;
		text-decoration: none;
	}

	.fl-module-sidebar .widget_nav_menu li.current_page_item a,
	.fl-sidebar .widget_nav_menu li.current_page_item a {
		background: #02AFB9;
		color: #fff;
		text-decoration: none;
	}

}

@media (min-width: 769px) {

	.rw-widget-box-header .fl-html h3.widgettitle {
		padding: 20px 10px;
		font-size: 16px;
	}

	.rw-widget-box-no-header h3 {
		font-size: 16px;
	}

	.rw-widget-box-header .fl-html .widgetbody,
	.rw-widget-box-header .fl-rich-text .widgetbody,
	.rw-widget-box-no-header .fl-html,
	.rw-widget-box-no-header .fl-rich-text {
		padding: 20px 10px;
	}

	.rw-widget-box-header .widgetbody ul,
	.rw-widget-box-no-header .fl-rich-text ul {
		padding-left: 30px;
	}

	.rw-widget-box-header .fl-html .widgetbody li,
	.rw-widget-box-header .fl-html .widgetbody p,
	.rw-widget-box-no-header .fl-rich-text p,
	.rw-widget-box-no-header .fl-rich-text li {
		font-size: 14px;
	}

}

@media (min-width: 1024px) {

	.rw-widget-box-header .fl-html h3.widgettitle {
		padding: 20px;
		font-size: 22px;
	}

	.rw-widget-box-no-header h3 {
		font-size: 22px;
	}

	.rw-widget-box-header .fl-html .widgetbody,
	.rw-widget-box-header .fl-rich-text .widgetbody,
	.rw-widget-box-no-header .fl-html,
	.rw-widget-box-no-header .fl-rich-text {
		padding: 20px;
	}

	.rw-widget-box-header .widgetbody ul,
	.rw-widget-box-no-header .fl-rich-text ul {
		padding-left: 40px;
	}

	.rw-widget-box-header .fl-html .widgetbody li,
	.rw-widget-box-header .fl-html .widgetbody p,
	.rw-widget-box-no-header .fl-rich-text p,
	.rw-widget-box-no-header .fl-rich-text li {
		font-size: 16px;
	}

}

/*! Gravity Forms Overrides
----------------------------------------*/

.gform_wrapper.gravity-theme .gform_fields {
	grid-row-gap: 5px !important;
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=number],
input[type=search],
input[type=url],
textarea {
	height: auto;
	border: 1px solid #ddd;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 10px !important;
	background-color: #fff;
}

.gform_wrapper.gravity-theme .gfield textarea.large {
	height: 200px !important;
}

.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
	margin: 0 !important;
	padding: 10px 0 0 !important;
	justify-content: center;
}

.gform_wrapper.gravity-theme .gform_footer button,
.gform_wrapper.gravity-theme .gform_footer input,
.gform_wrapper.gravity-theme .gform_page_footer button,
.gform_wrapper.gravity-theme .gform_page_footer input {
	margin-bottom: 0;
	font-weight: 700;
	padding: 20px 60px;
	font-size: 20px;
	text-transform: uppercase;
	border-radius: 3px;
}

.gform_wrapper.gravity-theme.rw-shortform_wrapper .gform_footer input {
	width: 100%;
	padding: 15px;
}

.gform_required_legend {
	display: none !important;
}

/*! Footer Widgets 
---------------------------------------*/

@media (min-width: 320px) {

	.fl-page-footer-widgets {
		position: relative;
		padding: 80px 0 40px;
		background: #000;
		background: linear-gradient(180deg, #313131 0%, #000 100%);
	}

	.fl-page-footer-widgets-container {
		max-width: 1300px !important;
	}

	.fl-page-footer-widgets .fl-page-footer-widget-col {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}

	.col-lg-3.fl-page-footer-widget-col-1,
	.col-lg-3.fl-page-footer-widget-col-4,
	.col-md-3.fl-page-footer-widget-col-1,
	.col-md-3.fl-page-footer-widget-col-4 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}

	.fl-page-footer-widgets .fl-builder-layer {
		bottom: -1px;
	}

	.fl-page-footer-widgets .fl-builder-bottom-edge-layer>* {
		width: 100%;
		left: auto;
		right: auto;
		height: 30px;
		top: auto;
		bottom: 0;
		transform: scaleX(-1) scaleY(-1);
	}

	.fl-page-footer-widgets .fl-builder-bottom-edge-layer .fl-shape-content .fl-shape {
		fill: #0C0E12;
	}

	.fl-page-footer-widgets .fl-page-footer-widget-col {
		display: flex;
		flex-direction: column;
	}

	.fl-page-footer-widgets aside#nav_menu-2 {
		background-color: transparent;
		min-height: 0;
	}

	.fl-page-footer-widgets .rw-footer-logo {
		text-align: center;
		max-width: 229px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}

	.fl-page-footer-widgets .rw-footer-address .custom-html-widget,
	.fl-page-footer-widgets .rw-footer-address .custom-html-widget p {
		text-align: center;
	}

	.fl-page-footer-widgets h4.fl-widget-title {
		background: transparent;
		text-transform: uppercase;
		font-size: 28px;
		line-height: 1.2;
		font-weight: 700;
		text-align: left;
		color: #fff;
		margin-top: 0;
		margin-bottom: 10px !important;
		padding: 0;
		-webkit-border-radius: 0;
		border-radius: 0;
	}

	.fl-page-footer-widgets p.gform_description {
		margin-bottom: 15px;
		font-size: 16px;
	}

	.fl-page-footer-widgets form#gform_5 {
		display: flex;
		flex-direction: row;
	}

	.gform_wrapper.gravity-theme form#gform_5 .gform-body {
		width: calc(100% - 142px);
	}

	.gform_wrapper.gravity-theme form#gform_5 .gform-body .gfield {
		padding-right: 10px;
	}

	.fl-page-footer-widgets form#gform_5 .gform_footer,
	.fl-page-footer-widgets form#gform_5 .gform_page_footer {
		padding: 0 !important;
	}

	.gform_wrapper.gravity-theme form#gform_5 .gform_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_footer input,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer input {
		margin-bottom: 0 !important;
	}

	.gform_wrapper.gravity-theme form#gform_5 .gform_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_footer input,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer input {
		padding: 8px 20px;
		font-size: 18px;
		text-transform: uppercase;
		border-radius: 3px;
	}

	.rw-footer-address p {
		font-size: 16px;
		text-align: left;
	}

	.fl-page-footer-widgets .textwidget {
		text-align: left;
	}

	.fl-widget.rw-footer-privacy-menu ul {
		text-align: center;
	}

	.rw-footer-social .fl-social-icons {
		padding-right: 0;
		margin-left: 0;
		padding-left: 0;
		text-align: left;
	}

	.rw-footer-social .fl-social-icons a {
		background-color: transparent;
		-webkit-border-radius: 3px;
		border-radius: 3px;
		display: inline-block;
		margin-right: 5px;
		margin-bottom: 5px;
		background-color: rgba(255, 255, 255, 0.1);
		-webkit-transition: background-color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out;
	}

	.rw-footer-social .fl-social-icons a:last-of-type {
		margin-left: 0
	}

	.rw-footer-social .fl-social-icons a:hover {
		background-color: rgba(0, 0, 0, 0.5);
	}

	.rw-footer-social .fl-social-icons a i.fas,
	.rw-footer-social .fl-social-icons a i.fab {
		font-size: 30px;
		vertical-align: middle;
		width: 50px;
		height: 50px;
		line-height: 50px;
		text-align: center;
		color: #fff;
	}

	.rw-footer-social .fl-social-icons a:hover i.fas,
	.rw-footer-social .fl-social-icons a:hover i.fab {
		color: #A11E36;
	}

	.fl-widget.rw-footer-privacy-menu ul {
		text-align: center
	}

	.menu-footer-menu-container {
		text-align: center
	}

	.rw-footer-locations {
		display: grid;
		overflow: visible;
		grid-auto-rows: minmax(min-content, max-content);
		grid-column-gap: 30px;
		grid-row-gap: 30px;
		grid-template-columns: repeat(1, 1fr);
	}

	.rw-footer-locations h3 {
		font-size: 28px;
	}

	/*
	#menu-footer-menu {
		width: auto;
		margin: auto;
		display: inline-block
	}

	.menu-footer-menu-container li {
		width: auto
	}

	.menu-footer-menu-container li a {
		background-color: rgba(255, 255, 255, 0.1);
		text-transform: uppercase;
		font-size: 16px !important;
		font-weight: 700;
		padding: 10px 40px !important;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		color: #fff;
	}

	.menu-footer-menu-container li a:hover {
		background-color: rgba(255, 255, 255, .2);
		text-decoration: none;
	}

	.rw-footer-logos {
		display: flex;
		flex-direction: row;
	}

	.rw-footer-logos .item {
		width: 80px;
	}

	p.rw-footer-phone {
		font-weight: 700;
	}
	*/

}

@media (min-width: 480px) {

	.rw-footer-address p {
		font-size: 16px;
	}

	.rw-footer-social .fl-social-icons a i.fas,
	.rw-footer-social .fl-social-icons a i.fab {
		width: 60px;
		height: 60px;
		line-height: 60px
	}

}

@media (min-width: 642px) {

	.gform_wrapper.gravity-theme form#gform_5 .gform_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_footer input,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer button,
	.gform_wrapper.gravity-theme form#gform_5 .gform_page_footer input {
		padding: 11px 20px;
	}

	.rw-footer-locations {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media (min-width: 768px) {

	.fl-page-footer-widgets aside p {
		font-size: 14px;
	}

	.menu-footer-menu-container li a {
		padding: 10px 20px !important;
	}

}

@media (min-width: 992px) {

	.fl-page-footer-widgets {
		min-height: 500px;
	}

	.fl-page-footer-widget-col-2 {
		padding-left: 5%;
	}

	.fl-page-footer-widgets aside p {
		font-size: 18px;
	}

	.menu-footer-menu-container li a {
		padding: 10px 40px !important;
	}

	p.rw-footer-phone {
		font-size: 24px !important;
	}

}

@media (min-width: 1100px) {

	.fl-page-footer-widgets .container {
		max-width: 1300px;
		width: 100%;
		padding: 0 40px;
	}

}

@media (min-width: 1340px) {

	.fl-page-footer-widgets .container {
		padding: 0 20px;
		max-width: 1300px;
	}

}

@media (min-width: 1380px) {

	.fl-page-footer-widgets .container {
		padding: 0;
		max-width: 1300px;
	}

}

/*! Footer
---------------------------------------*/

@media (min-width: 320px) {

	.fl-page-footer {
		border-top: 1px solid #343434;
	}

	.fl-page-footer-container {
		padding: 15px 0;
	}

	.fl-page-footer-text {
		padding-bottom: 0;
	}

	.fl-page-footer-row .text-left {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 20px;
	}

	.fl-page-footer-row .text-left .fl-page-footer-text {
		text-align: center;
	}

	.fl-page-footer-row .text-right {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.fl-page-footer-row .text-right ul {
		text-align: center;
	}

	.fl-page-footer-nav {
		padding-right: 0;
	}

	.fl-page-footer-nav li a {
		background-color: rgba(255, 255, 255, .05);
		text-transform: uppercase;
		font-size: 14px !important;
		font-weight: 600;
		padding: 10px 20px !important;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		color: #fff;
		border: 1px solid rgba(255, 255, 255, .15)
	}

	.fl-page-footer-nav li a:hover {
		background-color: rgba(255, 255, 255, .1);
		text-decoration: none
	}

}

@media (min-width: 768px) {

	.fl-page-footer-container {
		padding: 15px 40px;
	}

	.fl-page-footer-row .text-left {
		justify-content: flex-start;
		margin-bottom: 0;
	}

	.fl-page-footer-row .text-left .fl-page-footer-text {
		text-align: left;
	}

	.fl-page-footer-row .text-right {
		display: flex;
		justify-content: flex-end;
		align-items: center;
	}

	.fl-page-footer-row .text-right ul {
		text-align: right;
	}

	.fl-page-footer-nav {
		padding-right: 50px;
	}

	.fl-page-footer-nav>li {
		margin-left: 5px;
	}

}

@media (min-width: 1100px) {

	.fl-page-footer .container {
		max-width: 1300px;
		width: 100%;
		padding: 15px 40px;
	}

}

@media (min-width: 1340px) {

	.fl-page-footer .container {
		padding: 15px 20px;
		max-width: 1300px;
	}

}

@media (min-width: 1380px) {

	.fl-page-footer .container {
		padding: 15px 0;
		max-width: 1300px;
	}

}