/* Theme Name: Barebones */
/* === Global === */
a {
	color: var(--color-2);
}
a:hover,
a:focus {
	color: var(--color-1);
}
body .gform_wrapper.gravity-theme .button,
.btn {
	background-color: var(--color-2);
	font-weight: 700;
	letter-spacing: .075em;
	padding: .75em 1.5em;
	color: #fff;
	border: none;
	transition: all ease .3s;
}
.btn:hover,
.btn:focus,
body .gform_wrapper.gravity-theme .button:hover,
body .gform_wrapper.gravity-theme .button:focus {
	background-color: var(--color-1);
}

/* === Header/Nav === */
.primary-header {
	background-color: #fff;
	font-size: 18px;
}
.primary-header .header-row {
	justify-content: space-between;
	align-items: center;
	column-gap: 50px;
	padding: 30px 0;
}
.primary-header .logo-col {
	flex-basis: 330px;
}
.primary-header p:last-child {
	margin-bottom: 0;
}
.primary-header .text-col {
	display: flex;
	flex-direction: column;
	row-gap: 10px;
}
.primary-header .header_text {
	font-size: 18px;
}
.primary-header .phone {
	font-size: 26px;
}
.main-nav {
	background-color: var(--color-1);
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	z-index: 11;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.main-nav a {
	color: #fff;
}
.main-nav .current_page_item > a,
.main-nav a:hover,
.main-nav a:focus {
	background-color: var(--color-2);
	color: #fff;
}
.main-nav .menu li {
	margin: 0;
}
.main-nav .menu li a {
	padding: 12px 36px;
}
.mobile-header .menu a:hover,
.mobile-header .menu a:focus {
	color: var(--color-3);
}

/* === Footer === */
.primary-footer {
	margin-top: 50px;
}
.primary-footer .container {
	border-top: 3px solid var(--color-1);
}
.primary-footer .footer-row {
	column-gap: 30px;
	justify-content: space-between;
	padding: 15px 0;
	align-items: center;
}
.primary-footer .footer-row .spacer {
	flex: 0 0 2px;
	background-color: var(--color-1);
	align-self: stretch;
}
.primary-footer .phone {
	text-align: center;
	font-size: 28px;
	margin-top: 20px;
}
.primary-footer .phone a {
	color: var(--color-2);
}
.primary-footer .phone a:hover,
.primary-footer .phone a:focus {
	color: var(--color-1);
}
.primary-footer .location {
	margin-bottom: 10px;
}
.primary-footer .location:last-child {
	margin-bottom: 0;
}
.primary-footer a {
	color: var(--color-text);
}
.primary-footer a:hover,
.primary-footer a:focus {
	color: var(--color-2);
}
.primary-footer .menu {
	display: grid;
	grid-template-columns: auto auto;
	list-style: none;
	margin: 0;
	padding: 0;
	column-count: 2;
	column-gap: 30px;
	text-transform: uppercase;
}
.primary-footer .menu a {
	font-weight: 500;
}
.primary-footer .logo-col {
	flex: 0 1 300px;
}
.primary-footer .social-col .heading {
	text-align: center;
}
.primary-footer .social-col .social {
	font-size: 42px;
	column-gap: .5em;
}
.primary-footer .copyright {
	background-color: var(--color-1);
	padding: 20px 0;
}
.primary-footer .copyright a {
	color: #fff;
	font-weight: 400;
	font-size: 15px;
}
.primary-footer .copyright a:hover,
.primary-footer .copyright a:focus {
	color: var(--color-3);
}

/* === Home Page === */
.banner-section {
	background-color: var(--color-3);
	position: relative;
}
.banner-section .banner-row {
	justify-content: space-between;
	column-gap: 100px;
	row-gap: 30px;
}
.banner-section .content-col {
	padding: 100px 0;
	align-self: center;
	flex: 0 1 auto;
	min-height: 20vw;
	color: #fff;
}
.banner-section .image-col {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.banner-section .carousel.fade .item {
	min-height: 32vw;
	display: flex;
	align-items: center;
}
.banner-section .image-col img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
.banner-section .image-col * {
	height: 100%;
}
.banner-section h2 {
	font-size: 48px;
	margin-bottom: 15px;
}
.banner-section h1 {
	font-size: 62px;
	margin-bottom: 40px;
}
.banner-section .btn {
	font-size: 22px;
}
.brands-section {
	margin: 50px 0;
	background-color: #fff;
}
.brands-section .owl-carousel .owl-stage {
	display: flex;
	align-items: center;
}
.main-section {
	margin: 30px 0;
}
.main-section .main-row {
	column-gap: 50px;
	row-gap: 30px;
	max-width: 1300px;
	margin: 0 auto;
}
.main-section .sidebar-col {
	flex: 0 0 300px;
	border: 3px solid var(--color-2);
	padding: 20px 30px;
}
.main-section .sidebar-col .heading {
	text-align: center;
	font-weight: 700;
	color: var(--color-1);
}
.main-section .sidebar-col .menu {
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;
}
.main-section .sidebar-col .menu li a {
	padding: 10px 0;
	display: block;
}
.main-section .main-col {
	align-self: center;
	color: #fff;
	align-self: center;
	background-color: #000;
	align-items: center;
	position: relative;
	z-index: 3;
}
.main-section .main-col .content-row {
	padding: 75px;
	align-items: center;
	column-gap: 50px;
	background-size: auto 95%;
	background-position: bottom right;
	background-repeat: no-repeat;
	position: relative;
	z-index: 2;
}
.main-section .main-col .content-row h2 {
	font-size: 38px;
	margin-bottom: 50px;
}
.main-section .main-col .content-row:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(90deg, black 0%, rgba(13, 22, 58, 0.85) 100%);
	z-index: -1;
}
.main-section .main-col .content-row .left {
	flex: 1 1 calc(45% - 25px);
}
.main-section .main-col .content-row .right {
	flex: 1 1 calc(55% - 25px);
}
.feature-section {
	padding: 50px 0;
	background-color: var(--color-3);
}
.feature-section .features {
	flex-wrap: wrap;
	column-gap: 60px;
	row-gap: 25px;
}
.feature-section .feature {
	flex: 1 1 calc(33.33% - 40px);
	background-color: #fff;
	padding: 30px 20px;
	display: flex;
	flex-direction: column;
}
.feature-section .feature .image {
	margin-bottom: 25px;
}
.feature-section .feature .image img {
	max-height: 85px;
	width: auto;
}
.feature-section .feature h3 {
	font-size: 26px;
}
.feature-section .feature .btn {
	width: 100%;
}
.feature-section .feature .content {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.locations-section {
	padding: 100px 0;
	background-size: auto calc(100% - 50px);
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
.locations-section .locations {
	flex-wrap: wrap;
	column-gap: 60px;
	row-gap: 25px;
	justify-content: center;
	align-items: center;
}
.locations-section .location {
	flex: 1 1 calc(33.33% - 40px);
	background-color: #fff;
	border: 3px solid var(--color-2);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
	text-align: center;
	padding: 30px;
	font-size: 18px;
}
.locations-section .location .heading {
	color: var(--color-2);
	font-weight: 700;
	font-size: 22px;
	margin-bottom: 5px;
}
.locations-section .location .sub_heading {
	color: var(--color-2);
	font-size: 20px;
	font-weight: 700;
}
.locations-section .location .address {
	margin: 40px 0;
}
.locations-section .location .big_heading {
	font-weight: 700;
	margin: 20px 0;
	font-size: 24px;
	margin-bottom: -20px;
}
.locations-section .location .link {
	margin-top: 40px;
	font-size: 20px;
}
.locations-section .location .link a {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: .75em;
}
.locations-section .location .link span {
	font-size: 1.5em;
}
.text-banner {
	margin: 100px 0;
	background-color: #fff;
	font-size: 24px;
}
.text-banner .content-row {
	flex-wrap: wrap;
	column-gap: 80px;
	row-gap: 30px;
	align-items: center;
}
.text-banner .left {
	flex: 1 1 calc(60% - 40px);
}
.text-banner .right {
	flex: 1 1 calc(40% - 40px);
}
.text-banner h2 {
	font-size: 62px;
}
.text-banner h2:last-child {
	margin-bottom: 0;
}
.text-banner p:last-child {
	margin-bottom: 0;
}
.mega-menu {
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
.mega-menu .mega-menu-inner {
	width: 867px;
}
.mega-menu a {
	color: var(--color-one);
}
.mega-menu a:hover, .mega-menu a:focus {
	background: none;
	color: var(--color-2);
}
.mega-menu:after {
	background-color: #fff;
}
.mega-menu .menu-row {
	column-gap: 30px;
	justify-content: space-between;
}
.mega-menu .links {
	display: grid;
	grid-template-columns: auto auto;
	column-gap: 20px;
}
.mega-menu .content-col {
	flex: 1 1 auto;
}
.mega-menu .image-col {
	flex: 0 1 300px;
	position: relative;
}
.mega-menu .image-col .inner {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.mega-menu .image-col .image {
	display: none;
	height: 100%;
}
.mega-menu .image-col .image.active {
	display: block;
}
.mega-menu .image-col .image img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.mega-menu h3 {
	color: var(--color-1);
	font-size: 32px;
	font-weight: 700;
}
.main-nav .menu li .mega-menu a {
	padding: 10px 0;
}
.breadcrumb-section .container {
	padding-top: 30px;
	padding-bottom: 30px;
	border-bottom: 2px solid var(--color-1);
}
.breadcrumb-section .content-row {
	flex-wrap: wrap;
	column-gap: 30px;
	row-gap: 20px;
	justify-content: center;
	align-items: center;
}
.breadcrumb-section .image-col {
	flex: 0 1 100px;
}
.breadcrumb-section h1 {
	margin-bottom: 0;
}
.breadcrumb-section .breadcrumbs {
	flex-wrap: wrap;
	column-gap: .25em;
	row-gap: .25em;
	justify-content: center;
	text-transform: uppercase;
	margin-top: 20px;
}
.breadcrumb-section a {
	font-weight: 400;
}
.practice-section {
	margin: 50px 0;
}
.practice-section .practice-row {
	column-gap: 50px;
	row-gap: 30px;
	align-items: flex-start;
}
.practice-section .sidebar-col {
	flex: 0 1 320px;
	background-color: var(--color-3);
	padding: 25px 15px;
}
.practice-section .sidebar-col .heading {
	text-align: center;
	color: var(--color-2);
	font-weight: 700;
	font-size: 1.4em;
}
.practice-section .sidebar-col .menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.practice-section .sidebar-col .menu > li {
	border-bottom: 1px solid var(--color-1);
	padding: 15px 30px 15px 10px;
}
.practice-section .sidebar-col .menu > li > a {
	font-weight: 700;
}
.practice-section .sidebar-col .menu a {
	white-space: normal;
	color: var(--color-1);
	font-weight: 400;
	display: block;
}

.practice-section .sidebar-col .menu a:hover, .practice-section .sidebar-col .menu a:focus {
	color: var(--color-2);
}
.practice-section .sidebar-col .menu .menu-item-has-children.active .sub-menu {
	display: block;
}
.practice-section .sidebar-col .menu .menu-item-has-children.active:hover .sub-menu {
	display: block;
}
.practice-section .sidebar-col .menu .menu-item-has-children.active > a .icon:after {
	content: '\f068';
}
.practice-section .sidebar-col .menu .menu-item-has-children > a {
	position: relative;
}
.practice-section .sidebar-col .menu .menu-item-has-children > a .icon {
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -30px;
	width: 33px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.practice-section .sidebar-col .menu .menu-item-has-children > a .icon:after {
	content: '\f067';
	font-size: 18px;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}
.practice-section .sidebar-col .menu .menu-item-has-children:hover .sub-menu {
	display: none;
}
.practice-section .sidebar-col .menu .sub-menu {
	position: static;
	transform: none;
	margin: 0;
	padding: 0;
	list-style: none;
	background: none;
	padding-left: 25px;
}
.practice-section .sidebar-col .menu .sub-menu > li {
	margin: 5px 0;
}
.practice-section .sidebar-col .menu .sub-menu > li:last-child {
	margin-bottom: 0;
}
.practice-section .practice-col {
	flex: 1 1 calc(100% - 370px);
}
.bio-section {
	margin: 30px 0;
}
.bio-section .bio-row {
	flex-wrap: wrap;
	column-gap: 50px;
	row-gap: 30px;
}
.bio-section .image-col {
	flex: 1 1 calc(40% - 25px);
}
.bio-section .content-col {
	flex: 1 1 calc(60% - 25px);
}
.bio-section .bottom_content {
	background-color: var(--color-3);
	padding: 30px;
	margin-top: 20px;
	border: 3px solid var(--color-text);
}
.bio-section .bottom_content h3 {
	color: var(--color-2);
}
.bio-section blockquote {
	border-color: var(--color-2);
	font-weight: 700;
	font-size: 1.3em;
}
.contact-section {
	margin: 50px 0;
	padding: 0;
}
.contact-section .contact-row {
	flex-wrap: wrap;
	column-gap: 30px;
	row-gap: 30px;
	align-items: flex-start;
}
.contact-section .contact-row > .col {
	flex: 1 1 calc(50% - 15px);
}
.contact-section .grid-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.contact-section .grid-row .content-col {
	order: 2;
	align-self: center;
	padding: 10px;
}
.contact-section .grid-row .col.location {
	order: 3;
}
.contact-section .grid-row .col.location:nth-child(3) {
	order: 1;
}
.contact-section .location {
	font-size: 16px;
	padding: 10px;
	box-shadow: none;
}
.contact-section .location .heading {
	font-size: 18px;
}
.contact-section .location .address {
	margin: 20px 0;
}
.contact-section .location .big_heading {
	margin: 20px 0;
	font-size: 22px;
}
.contact-section .location .link {
	margin-top: 20px;
	font-size: 18px;
}
.contact-section .form-col {
	background-color: var(--color-3);
	border: 3px solid var(--color-1);
	padding: 30px;
}

/* === Interior Pages === */
/* === Media Queries === */
@media screen and (max-width: 1199px) {
	.banner-section .banner-row {
		column-gap: 50px;
	}
	.banner-section h1 {
		font-size: 52px;
	}
	.banner-section .btn {
		font-size: 20px;
	}
	.main-section .main-row {
		column-gap: 15px;
	}
	.main-section .sidebar-col {
		padding: 15px;
		flex-basis: 270px;
	}
	.main-section .main-col .content-row {
		padding: 30px;
		column-gap: 30px;
	}
	.main-section .main-col .content-row h2 {
		font-size: 32px;
		margin-bottom: 30px;
	}
	.main-section .main-col .content-row > .col {
		flex-basis: calc(50% - 15px);
	}
	.feature-section .features,
  .locations-section .locations {
		column-gap: 30px;
	}
	.locations-section .location {
		padding: 15px;
	}
	.text-banner .content-row {
		column-gap: 40px;
	}
	.text-banner .content-row > .col {
		flex-basis: calc(50% - 20px);
	}
	.text-banner h2 {
		font-size: 56px;
	}
	.primary-footer .footer-row {
		column-gap: 20px;
	}
	.primary-footer .logo-col {
		flex-basis: 200px;
	}
	.contact-section .contact-row > .col {
		flex-basis: 100%;
	}
}
@media screen and (max-width: 991px) {
	.main-nav {
		display: none;
	}
	.banner-section .banner-row {
		flex-wrap: wrap;
		padding-top: 50px;
		justify-content: center;
	}
	.banner-section .content-col {
		padding: 0;
		text-align: center;
	}
	.banner-section .image-col {
		padding: 0;
	}
	.main-section .main-row {
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	.main-section .sidebar-col {
		flex-basis: 100%;
	}
	.main-section .sidebar-col .menu {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		column-gap: 20px;
		row-gap: 5px;
	}
	.feature-section .feature {
		flex-basis: 100%;
	}
	.locations-section .location {
		flex-basis: 100%;
	}
	.text-banner .content-row > .col {
		flex-basis: 100%;
	}
	.primary-footer .footer-row {
		flex-wrap: wrap;
		text-align: center;
		row-gap: 30px;
	}
	.primary-footer .footer-row .spacer {
		display: none;
	}
	.primary-footer .footer-row > .col {
		flex-basis: 100%;
	}
	.primary-footer .social {
		justify-content: center;
	}
	.primary-footer .menu {
		width: fit-content;
		margin: 0 auto;
	}
	.primary-footer .social-col .heading {
		margin-bottom: 10px;
	}
	.practice-section .practice-row {
		flex-direction: column-reverse;
	}
	.practice-section .practice-row > .col,
  .bio-section .bio-row > .col {
		flex-basis: 100%;
		max-width: 100%;
	}
	.practice-section .sidebar-col .menu a {
		white-space: normal;
	}
	.bio-section .shortcode_row {
		flex-wrap: wrap;
	}
	.bio-section .shortcode_row > .shortcode_col {
		flex-basis: 100%;
	}
}
@media screen and (max-width: 767px) {
	.main-section .main-col .content-row {
		flex-wrap: wrap;
		row-gap: 20px;
	}
	.main-section .main-col .content-row > .col {
		flex-basis: 100%;
	}
	.text-banner h2 {
		font-size: 42px;
	}
	.banner-section h2 {
		font-size: 36px;
	}
	.banner-section h1 {
		font-size: 42px;
	}
	.btn {
		white-space: normal;
	}
	.locations-section .locations-col {
		grid-template-columns: auto;
	}
	.contact-section .grid-row .content-col {
		order: 0;
	}
	.contact-section .form-col {
		padding: 30px 15px;
		max-width: 100%;
	}
	.btn {
		white-space: normal;
	}
	.banner-section .image-col img {
    object-position: 75% 50%;
	}
}
