/*
	Theme Name: Mack Lawyers
	Theme URI: https://macklawyers.ca
	Description: Mack Lawyers WordPress Theme
	Version: 1.0.0
	Author: Kevin Wallace

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
body {
	font:400 18px/1.7 neuzeit-grotesk, sans-serif;
	color:#444;
}
body.show-nav {
	overflow: hidden;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:#212934;
	font-weight: 700;
	text-decoration:none;
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a:hover {
	color:#2E3948;
	text-decoration:none;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}
hr {
	margin: 4rem 0;
}


/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: miller-display, serif;
	font-style: normal;
	font-weight: 700;
	color: #D2B049;
	margin-top: 0;
	margin-bottom: 2.5rem;
	line-height: 1; 
	letter-spacing: 1.5px;
	text-transform: uppercase;
}

h4 {
	margin-top: 4rem;
}

.reversed h1,
.reversed h2,
.reversed h3,
.reversed h4,
.reversed h5,
.reversed h6 {
  color: #D2B049;
}

h1 { font-size: 70px; }
h2 { font-size: 60px; }
h3 { font-size: 32px; }
h4 { font-size: 22px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }

p {
	margin-bottom: 2.5rem;
}

.reversed p,
.reversed li,
.reversed a,
.reversed span {
	color: #F2F0F7;
}

ul {
	padding-left: 2rem;
	margin-bottom: 2.5rem;
}

li {
	margin-bottom: 0.4rem;
}


/*------------------------------------*\
	BUTTONS
\*------------------------------------*/

.btn,
.nf-form-content button, 
.nf-form-content input[type=button], 
.nf-form-content input[type=submit] {
	font-family: eurostile, sans-serif;
  background-color: transparent !important;
  color: #D2B049 !important;
  font-weight: 700;
  line-height: 1;
  padding: 2rem 3rem 2.2rem !important;
  margin-top: 1rem;
  margin-bottom: 1rem;
  font-size: 16px;
  height: auto !important;
  border: 2px solid #D2B049 !important;
  border-radius: 3.5rem !important;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  overflow: hidden;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.btn:hover {
  background-color: #D2B049 !important;
  color: #FFF !important;
}

.reversed .btn:hover {
  background-color: #D2B049 !important;
  color: #212934 !important;
}

.nf-form-content button, 
.nf-form-content input[type=button], 
.nf-form-content input[type=submit] {
  background-color: #D2B049 !important;
  color: #FFF !important;
  border: none !important;
  border-radius: 3.5rem !important;
}

.nf-form-content button:hover, 
.nf-form-content input[type=button]:hover, 
.nf-form-content input[type=submit]:hover {
	background-color: #DEC168 !important;
  color: #FFF !important;
}

.btn.active, 
.btn:active,
.nf-form-content button.active, 
.nf-form-content input[type=button].active, 
.nf-form-content input[type=submit].active,
.nf-form-content button:active, 
.nf-form-content input[type=button]:active, 
.nf-form-content input[type=submit]:active {
	outline: none;
}



/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

.wrapper {
	width:100%;
	height: 100%;
	margin: 0 auto;
	position: relative;
	background-color: #FFF;
	overflow: hidden;
}

main {
	overflow: hidden;
}

section {
	position: relative;
	padding: 15rem 0;
}

.container {
	position: relative;
}

.container-fluid {
	position: relative;
	max-width: 1500px;
	padding: 0 3rem;
}

.line {
	position: absolute;
	height: 2px;
	background-color: #2E3948;
	width: 100%;
}

.line.light {
	background-color: #F2F0F7;
}

.line.top {
	top: -1rem;
}

.line.bottom {
	bottom: -1rem;
}

.g-custom-md {
  --bs-gutter-x: 7rem;
  padding: 0 6rem;
}

.g-custom-lg {
  --bs-gutter-x: 10rem;
  padding: 0 9rem;
}

.post-edit-link { display: none; }


/*------------------------------------*\
    HEADER
\*------------------------------------*/

.navbar {
	padding: 3rem 0;
	background: rgb(46,57,72);
  background: linear-gradient(60deg, rgba(46,57,72,1) 0%, rgba(33,41,52,1) 100%);
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navbar.scrolled {
	padding: 1.5rem 0;
}

.navbar-brand img {
	width: 6.5rem;
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navbar.scrolled .navbar-brand img {
	width: 4.6rem;
}

.navbar .contact a:nth-child(2) {
	margin-left: 1.5rem;
}

.navbar .contact a svg {
	fill: #d9ae2e;
	width: auto;
	height: 3rem;
	overflow: visible;
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navbar .contact a:hover svg {
	fill: #f2f0f8;
}

.navbar.scrolled .contact a svg {
	height: 2.5rem;
}

.navbar-nav ul {
	margin-bottom: 0;
}

.navbar-nav li {
  margin: 0;
  list-style-type: none;
  line-height: 1;
  position: relative;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navbar-nav li:last-child {
  padding-right: 0;
}

.navbar-nav li a {
	font-family: eurostile, sans-serif;
	padding: 0.5rem 3.5rem;
	font-size: 17px;
	font-weight: 700;
	color: #F2F0F7;
	text-transform: uppercase;
}

.navbar-nav li a:hover {
	color: #D2B049;
}

.navbar-toggler {
	border: none;
	position: absolute;
	padding: .25rem 0rem;
	right: 3rem;
	top: 1.6rem;
}

.navbar-toggler:active,
.navbar-toggler:focus {
	outline: none;
	box-shadow: none;
}

.navbar.scrolled .navbar-toggler {
	  top: 1rem;
}

.navbar-dark .navbar-toggler-icon {
	width: 30px;
	height: 17px;
	background-image: none;
	position: relative;
	border-bottom: 3px solid #D2B049;
  transition: all 300ms linear;
}

.navbar-dark .navbar-toggler-icon:after, 
.navbar-dark .navbar-toggler-icon:before{
	width: 30px;
	position: absolute;
	height: 3px;
	background-color: #D2B049;
	top: 0;
	left: 0;
	content: '';
	z-index: 2;
  transition: all 300ms linear;
}

.navbar-dark .navbar-toggler-icon:after {
	top: 7px;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
	transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
	transform: translateY(7px) rotate(-45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	border-color: transparent;
}

.navbar-collapse {
	text-align: right;
}

.navbar-dark .navbar-nav .nav-link {
	font-family: eurostile, sans-serif;
	position: relative;
	padding: 0.5rem 2.5rem;
	font-size: 16px;
	display: inline-block;
	font-weight: 700;	
	color: #F2F0F7;
	text-transform: uppercase;
  transition: all 200ms linear;
}

.navbar-dark .navbar-nav .nav-item .dropdown-menu { 
	display: none; 
	border-radius: 0;
	border: none;
	padding: 1rem 0 0;
	background-color: transparent;
	box-shadow: 10px 10px 20px 0px rgba(0,0,0,0.25);
	-webkit-box-shadow: 10px 10px 20px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 10px 10px 20px 0px rgba(0,0,0,0.25);
}

@media all and (min-width: 1181px) {

	.navbar-dark .navbar-nav .nav-item:hover .dropdown-menu { 
		display: block; 
	}

}

.navbar-dark .navbar-nav .nav-item:hover .nav-link { 
	color: #D2B049;  
}

.navbar-dark .dropdown-item.active, 
.navbar-dark .dropdown-item {
  font-size: 14px;
  padding: 1.5rem 2.5rem;
  border-top: 1px solid rgb(46,57,72);
}

.navbar-dark li:first-of-type .dropdown-item {
	border-top: none;
}

.navbar-dark .dropdown-item {
  background-color: #212934;
}

.navbar-dark .dropdown-item:hover {
  color: #FFF;
  text-decoration: none;
  background-color: #D2B049;
}

.navbar-dark .dropdown-item.active, 
.navbar-dark .dropdown-item:active,
.navbar-dark .dropdown-item:focus {
  color: #D2B049;
  text-decoration: none;
  background-color: rgb(46,57,72);
  cursor: default;
}




/*------------------------------------*\
    FEATURED SECTION
\*------------------------------------*/

section.featured {
	position: relative;
	background-color: #212934;
	background-image: url('img/bg_featured.jpg');
	background-size: cover;
	background-position: center bottom;
	background-attachment: fixed;
	min-height: 100vh;
	display: flex;
	align-items: center;
}

section.featured p {
	font-size: 22px;
}

section.featured .btn {
	margin-bottom: 0;
}

section.featured .content.logo {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

section.featured img {
	width: 100%;
	max-width: 30rem;
	margin-bottom: 3rem;
}

section.featured img.desktop { display: block; }
section.featured img.mobile { display: none; }


/*------------------------------------*\
    PRACTICES SECTION
\*------------------------------------*/


section.practices {
	padding: 0;
	margin-top: -9.5rem
}

section.practices .container-fluid {
	justify-content: center;
	display: flex; 
	align-items: center;
	flex-wrap: wrap;
}

section.practices .item {
	background-color: #212934;
	padding: 3rem 2rem 2rem;
	text-align: center;
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 20%;
}

section.practices .item:nth-of-type(2n+1)  {
	background-color: #2E3948;
}

section.practices .item:hover,
section.practices .item:nth-of-type(2n+1):hover {
	background-color: #D2B049;
}

section.practices .item svg {
   fill: #D2B049;
   height: 3.6rem;
   margin-bottom: 2rem;
}

section.practices .item:hover svg,
section.practices .item:nth-of-type(2n+1):hover svg {
   fill: #F2F0F7;
}

section.practices .item:hover .btn {
	border: 2px solid #F2F0F7 !important;
}

section.practices .item h2 {
	font-family: eurostile, sans-serif;
	color: #F2F0F7;
	font-size: 17px;
	text-transform: uppercase;
	margin-bottom: 1.25rem;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	letter-spacing: 0;
}

section.practices .item .btn {
	font-family: eurostile, sans-serif;
	color: #F2F0F7 !important;
	border: 2px solid #F2F0F7 !important;
	padding: 1rem 1.5rem 1.2rem !important;
	font-size: 14px;
	text-transform: uppercase;
}

section.practices .item .btn:hover {
	color: #D2B049 !important;
	border: 2px solid #F2F0F7 !important;
	background-color: #F2F0F7 !important;
}


/*------------------------------------*\
    REVIEWS SECTION
\*------------------------------------*/

section.reviews .row {
	display: flex;
	align-items: center;
}

section.reviews .col-xl-7 {
	border-left: 2px solid #2E3948;
}

section.reviews h3 {
	margin-bottom: 1.5rem;
}

section.reviews .stars {
	display: block;
	margin-bottom: 1.5rem;
}

section.reviews ul {
	padding: 0;
	list-style: none;
}

section.reviews li {
	margin-bottom: 4rem;
}

section.reviews li:last-child {
	margin-bottom: 0;
}

section.reviews img {
  border: 2px solid #2E3948;
  padding: 1rem;
  width: 100%;
  height: 98%;
  object-fit: cover;
}


/*------------------------------------*\
    TEAM SECTION
\*------------------------------------*/

section.team {
	position: relative;
	background-color: #060e19;
	background-image: url('img/bg_team_list.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	background-repeat: no-repeat;
	min-height: 100vh;
	display: flex;
	align-items: center;
}

section.team .row {
	justify-content: center;
}

section.team .content { 
	text-align: center;
}

section.team_list {
	position: relative;
	background-color: #060e19;
	background-image: url('img/bg_team_list.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	background-repeat: no-repeat;
	min-height: 60vh;
	padding-top: 22rem;
}

section.team_list .container {
	max-width: 1140px;
}

section.team_list h1 {
	font-size: 44px;
	text-align: center;
}

section.team_list .item {
	display: flex;
	align-items: center;
}

section.team_list .item img {
	border-radius: 50%;
	width: 14rem;
	padding: 0.5rem;
	border: 3px solid #F2F0F7;
	margin: 3rem;
}

section.team_list .item .name {
	font-weight: 700;
	color: #D2B049;
	font-size: 28px;
	margin-bottom: 0rem;
	line-height: 1.3;
}

section.team_list .item .title {
	font-weight: 400;
	color: #F2F0F7;
	font-size: 18px;
}

section.profile {
	padding: 22rem 0 15rem;
	background-color: #060e19;
}

section.profile .background-photo {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #060e19;
	background-size: cover;
	background-position: center top;
	background-attachment: fixed;
}

section.profile .breadcrumb a {
	color: #FFF !important;
	margin-bottom: 3rem;
	font-size: 16px;
}

section.profile .content a {
	color: #D2B049;
}

section.profile .content a:hover {
	color: #F2F0F7;
}

section.profile .content .contact {
	display: flex;
	align-items: center;
	margin-bottom: 3rem;
}

section.profile .content .contact a {
	display: inline-block;
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

section.profile .content .contact a svg {
   fill: #D2B049;
   height: 5rem;
   margin: 0 0 0 1rem;
}

section.profile .content .contact a:hover svg {
	fill: #F2F0F7;
}

section.profile .content .contact h3 {
	font-size: 40px;
	margin-right: 1rem;
	margin-bottom: 0;
}

section.profile .content p {
	color: #FFF;
}

section.profile .content p:last-of-type {
	margin-bottom: 0;
}


/*------------------------------------*\
    FAQ SECTION
\*------------------------------------*/

.sp-easy-accordion {
	margin-top: 2rem;
}

.sp-easy-accordion .sp-ea-single .ea-header a .ea-expand-icon,
.sp-ea-one.sp-easy-accordion .sp-ea-single .ea-header a .ea-expand-icon {
	color: #D2B049;
	margin-right: 3rem;
	position: absolute;
	left: 1.5rem;
	top: 1.7rem;
}

.sp-ea-one.sp-easy-accordion .sp-ea-single .ea-header a {
	position: relative;
	padding-left: 6rem;
	line-height: 1.3;
	letter-spacing: 0;
}

.faq h3 {
	font-family: eurostile, sans-serif;
	text-transform: uppercase;
	border-top: 1px solid #888;
}

.faq .ea-card:first-of-type h3 {
	border-top: none !important;
}

.ea-expand h3 a {
	color: #D2B049 !important;
}

.sp-ea-one.sp-easy-accordion .sp-ea-single .ea-body {
	padding: 0 4.35rem;
	margin: 1rem 0 4rem 2.2rem;
	border-left: 2px solid #D2B049;
}


/*------------------------------------*\
    PAYMENTS SECTION
\*------------------------------------*/

section.payments {
	position: relative;
	background-color: #212934;
	background-image: url('img/bg_payments.svg');
	background-size: cover;
	background-position: center center;
	text-align: center;
}

section.payments .row {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

section.payments h2 {
	margin-bottom: 6rem;
}

section.payments img {
	margin-bottom: 3rem;
}

/*------------------------------------*\
    PAYMENTS PAGE
\*------------------------------------*/

.make-a-payment section.payments h2 {
	display: none;
}


/*------------------------------------*\
    CONTACT PAGE
\*------------------------------------*/

.nf-form-fields-required {
	display: none;
}

.nf-form-content {
	margin-top: 4rem !important;
	padding: 0 !important;
}

.nf-row {
	margin: 0 -5px;
}

#ninja_forms_required_items, 
.nf-field-container {
	margin-bottom: 1.5rem !important;
}

section.contact .content {
	height: 100%;
}

section.contact .map {
	width: 100%;
	height: 100%;
	border: 2px solid #2E3948;
	padding: 1rem;
}

section.contact .map img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.contact-us section.contact h2 {
	display: none;
}



/*------------------------------------*\
    BLANK PAGE
\*------------------------------------*/

section.blank {
	padding-top: 22rem;
}


/*------------------------------------*\
    SINGLE PAGE
\*------------------------------------*/

section.title {
	position: relative;
	background-color: #212934;
  background-size: auto 44rem;
  background-position: center top;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-image: url('img/bg_aboutus_2.jpg');
  height: 44rem;
  display: flex;
  align-items: flex-end;
  padding: 6rem 0;
  z-index: 2;
}

.about-us section.title { background-image: url('img/bg_aboutus_2.jpg'); }
.legal-team section.title { background-image: url('img/bg_legal_team.jpg'); }
.practice-areas section.title { background-image: url('img/bg_aboutus_2.jpg'); }
.make-a-payment section.title { background-image: url('img/bg_legal_team.jpg'); }
.contact-us section.title { background-image: url('img/bg_legal_team.jpg'); }


section.title .row {
	display: flex;
  align-items: flex-end;
}

section.title h1 {
	font-size: 44px;
	margin-bottom: 2rem;
}

section.title .col-sm-4 {
	display: flex;
	justify-content: flex-end;
}

section.title img {
	max-width: 25rem;
	width: 25vw
}

.page article .row {
	margin-bottom: 6rem;
}

.page article .row:last-of-type {
	margin-bottom: 0;
}

.page article figure.wp-block-image {
	width: 100%;
	height: 97%;
}

.page article .wp-block-image img {
	border: 2px solid #2E3948;
	padding: 1rem;
	width: 100%;
	height: 98%;
	object-fit: cover;
}


/*------------------------------------*\
    PRACTICE AREAS
\*------------------------------------*/

.practice-areas .wp-block-media-text {
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
}

.practice-areas .wp-block-media-text .wp-block-media-text__content {
	padding: 0 3rem;
}

.practice-areas .wp-block-media-text__media img {
	width: 10rem;
}

.practice-areas h2 {
	font-size: 32px;
	margin-bottom: 0;
	color: #2B3949;
}


/*------------------------------------*\
    FOOTER
\*------------------------------------*/

footer {
	position: relative;
	padding: 12rem 0;
	background-color: #111111;
	z-index: 2;
}

footer img {
	max-width: 23rem;
}

footer .contact {
	max-width: 23rem;
	text-align: center;
}

footer .contact a {
	-moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

footer .contact a svg {
   fill: #F2F0F7;
   height: 5rem;
   margin: 2rem 0.5rem 0;
}

footer .contact a:hover svg {
	fill: #D2B049;
}

footer ul {
	list-style: none;
}

footer ul.contact-info a {
	font-weight: 400;
}

footer ul li {
	margin-bottom: 1rem;
}

footer ul li strong,
footer ul li a {
	color: #D2B049;
}

footer ul.links {
	columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
}

footer ul.links a {
	font-family: eurostile, sans-serif;
	text-transform: uppercase;
}

footer .copyright {
	font-size: 14px;
	margin-top: 2rem;
	margin-bottom: 0;
  line-height: 1.6;
  color: #F2F0F7;
  text-align: right;
}

footer .copyright img,
.menu.mobile .copyright img {
	display: inline-block;
	vertical-align: middle;
}

footer span {
	display: inline-block;
}

.legal-team footer .line.top {
	display: none;
}

.grecaptcha-badge {
	display: none;
}


/*------------------------------------*\
    ANIMATIONS
\*------------------------------------*/

.slideUp {
	transform: translateY(150px);
	animation: slideUp 1s ease forwards 0s;
}

.slideDown {
	transform: translateY(0px);
	animation: slideDown 1s ease forwards 0s;
}

.slideLeft {
	transform: translateX(400px);
	animation: slideLeft 1s ease forwards 0s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
    display: block;
  }
  100% {
    opacity: 0;
    display: none;
  }
}

@keyframes slideLeft {
  0% {
    transform: translateX(400px);
  }
  100% {
    transform: translateX(0px);
  }
}

@keyframes slideUp {
  0% {
    transform: translateY(300px);
  }
  100% {
    transform: translateY(0px);
  }
}

@keyframes slideDown {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(300px);
  }
}

@keyframes reveal {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}

@keyframes zoomOut {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes swooshAnimate {
  0% {
    width: 0px;
  }
  100% {
    width: 100px;
  }
}


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/


@media screen and (max-width: 1400px) {
	
	

}


@media screen and (max-width: 1300px) {
  
  

}


@media screen and (max-width: 1199px) { 
  
  h1 { font-size: 60px; }
  h2, section.title h1 { font-size: 50px; }
  h3 { font-size: 28px; }
  
  section.featured p {
	  font-size: 20px;
  }
  
  section.reviews .col-xl-5 {
	  padding-bottom: 5rem;
	  border-bottom: 1px solid #888;
  }
  
  section.reviews .col-xl-7 {
	  margin-top: 6rem;
  }
  
  section.payments h2 {
    margin-bottom: 2rem;
  }
  
  section.payments .row {
	  display: flex;
	  align-items: center;
	  justify-content: center;
  }
  
  section.payments .content {
    max-width: 45rem;
    margin: 4rem auto 0;
  }
  
  section.contact .map {
	  height: 50rem;
	  margin-top: 6rem;
  }
  
  section.title img {
    width: 20vw;
  }
	
}


@media screen and (max-width: 1180px) {
  
  .navbar-dark .navbar-nav .nav-item .dropdown-menu {
  	box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    border-right: 3px solid #D2B049;
    padding: 0;
    margin-right: 0.75rem;
  }
  
  .navbar-dark .dropdown-item {
	  text-align: right;
	  font-size: 14px;
  }
  
  .navbar-dark .navbar-nav .dropdown-menu.show { 
	  display: block; 
  }
	
	section,
  footer {
	  padding: 10rem 0;
  }
	
	section.featured {
		background-attachment: scroll;
		min-height: 88vh;
  }
  
  section.featured img {
    max-width: 21rem;
  }
  
  section.practices .item:nth-of-type(1):hover,
  section.practices .item:nth-of-type(4):hover,
  section.practices .item:nth-of-type(5):hover {
	  background-color: #212934 !important; 
	}
	
  section.practices .item:nth-of-type(2):hover,
  section.practices .item:nth-of-type(3):hover { 
	  background-color: #2E3948 !important; 
	}
	
	section.practices .item h2 {
	  font-size: 14px;
  }
  
  section.practices .item .btn {
	  font-size: 14px;
  }
	
	section.reviews .col-xl-7 {
		border-left: 0;
	}
	
	section.payments {
		background-image: url('img/bg_payments_mobile.svg');
  }
  
  section.title {
    background-attachment: scroll;
    background-size: cover;
    height: 40rem;
  }
  
  section.team,
  section.team_list {
	  background-image: url('img/bg_team_list_mobile.jpg');
	  background-attachment: scroll;
  }
  
  section.team_list .item img {
	  width: 11rem;
  }
  
  section.team_list .item .name {
		font-size: 24px;
	}
	
	section.team_list .item .title {
		font-size: 16px;
	}
	
	section.profile {
	  padding-bottom: 10rem;
  }
  
  section.profile .background-photo {
	  background-attachment: scroll;
	  background-repeat: no-repeat;
  }
  
  section.profile .content .contact h3 {
	  font-size: 40px;
  }
  
  section.profile .content .contact a svg {
	  height: 4rem;
	  display: inline-block;
  }
  
  .practice-areas .wp-block-media-text__media img {
	  width: 8rem;
  }
  
  .practice-areas .wp-block-media-text .wp-block-media-text__content {
	  padding: 0 2rem;
  }
  
  .practice-areas h2 {
	  font-size: 26px;
  }
	
	footer,
	footer .copyright {
		text-align: center;
	}
	
	footer .contact {
		margin: 0 auto 4rem;
	}
	
	footer ul {
		padding: 0;
	}
	
	footer ul.contact-info {
		margin-bottom: 4rem;
	}
	
}


@media screen and (max-width: 991px) {
	
	body {
    font-size: 16px;
  }
	
	h1 { font-size: 50px; }
	h2 { font-size: 40px; }
	h3 { font-size: 24px; }
	
	.navbar .contact {
	  position: absolute;
	  right: 9rem;
	  top: 1.2rem;
  }
  
  .navbar.scrolled .contact {
	  top: 0.55rem;
  }
  
  .navbar-nav {
	  padding-top: 1rem;
  }
  
  .navbar-dark .navbar-nav .nav-link {
	  padding: 1rem 0.5rem;
  }
	
	section.title h1 {
		font-size: 40px; 
		margin-bottom: 1rem;
	}
	
	.g-custom-lg {
    --bs-gutter-x: 5rem;
    padding: 0 4rem;
  }
  
  section,
  footer {
	  padding: 8rem 0;
  }
  
  section.featured p {
	  font-size: 18px;
  }
  
  section.featured .content.logo {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
  }
  
  section.team_list h1 {
	  font-size: 40px;
  }
  
  section.profile {
	  padding: 16rem 0 8rem;
	}
  
  section.profile .content .contact h3 {
	  font-size: 30px;
  }
  
  section.profile .content .contact a svg {
	  height: 3rem;
	  display: inline-block;
  }
  
  section.practices .item svg {
	  margin-bottom: 1.5rem;
  }
  
  section.practices .item h2 {
	  font-size: 12px;
	  margin-bottom: 0.5rem;
  }
  
  section.practices .item .btn {
	  font-size: 12px;
  }
  
  .sp-easy-accordion .sp-ea-single .ea-header a {
	  font-size: 18px;
  }
  
  section.title {
    height: 26rem;
    padding: 3rem 0;
  }
  
  .page article .row {
    margin-bottom: 4rem;
  }
  
  .practice-areas .photo {
		margin-top: 2rem;
  }

}


@media screen and (max-width: 844px) {

	.navbar {
		padding: 1.5rem 0;
	}
	
	.navbar .navbar-brand img {
		width: 4.6rem;
	}
	
	.navbar .contact {
	  top: 0.55rem;
  }
	
	.navbar .contact a svg {
		height: 2.5rem;
	}
	
	.navbar .navbar-toggler {
		top: 1rem;
	}
	
	section.team_list {
		padding-top: 14rem;
	}
	
	section.team_list .item {
    display: block;
    text-align: center;
  }
  
  section.team_list .item img {
    margin: 4rem 0 1rem;
  }
    
}


@media screen and (max-width: 844px) and (max-height: 390px) {

  section.featured img.desktop { display: none; }
	section.featured img.mobile { display: block; }
  
}


@media screen and (max-width: 575px) {  
	
	h1 { font-size: 40px; }
	h2 { font-size: 32px; }
	
	/*section,
  footer {
	  padding: 6rem 0;
  }*/
  
  .home section {
	  padding: 8rem 0;
  }
	
	section.title h1 { 
		font-size: 32px; 
		margin-bottom: 0;
	}
	
	.btn, .nf-form-content button, 
	.nf-form-content input[type=button], 
	.nf-form-content input[type=submit] {
		padding: 1.5rem 2rem 1.7rem !important;
	}
	
  .container,
  .container-fluid {
    padding: 0 3rem;
  }
  
  .g-custom-md,
  .g-custom-lg {
	  padding: 0;
  }
  
  section.featured img.desktop { display: none; }
  section.featured img.mobile { display: block; }
  
  section.featured p {
	  font-size: 17px;
  }
  
  section.featured img {
    margin-top: -4rem;
  }
  
  section.reviews img {
	  margin-top: 4rem;
  }
  
  section.team_list h1 {
	  font-size: 32px;
  }
  
  section.profile {
    padding: 33rem 0 8rem;
  }
  
  section.profile .background-photo {
	  background-position: calc(50% - 13rem) 4rem;
    background-size: 170%;
    height: 30rem;
  }
  
  section.profile .breadcrumb a {
	  margin-bottom: 1rem;
  }
  
  section.practices {
	  padding: 0;
  }
  
  section.practices .item  {
	  width: 50%;
	  background: rgb(33,41,52) !important;
		background: linear-gradient(45deg, rgba(33,41,52,1) 0%, rgba(46,57,72,1) 100%) !important;
  }
  
  section.practices .item:nth-of-type(5)  {
	  width: 100%;
  }
	
	section.practices .item {
		padding: 3rem 2rem 2rem;
	}
	
	section.practices .item svg {
		height: 2.8rem;
		margin-bottom: 1.25rem;
	}
	
	section.practices .item h2 {
		font-size: 14px;
		margin-bottom: 0.5rem;
	}
	
	section.practices .item .btn {
		font-size: 12px;
		padding: 0.5rem 1rem 0.7rem !important;
		border: 1px solid #F2F0F7 !important;
	}
	
	section.practices .item:hover .btn {
		border: 1px solid #F2F0F7 !important;
	}

	section.practices .item .btn:hover {
		border: 1px solid #F2F0F7 !important;
	}
	
	section.title {
    height: 22rem;
  }
  
  section.title img {
	  display: none;
  }
  
  .page article .wp-block-image img {
	  margin-top: 1rem;
  }
    
  .practice-areas .wp-block-media-text__media img {
	  width: 6rem;
  }
  
  .practice-areas h2 {
    font-size: 24px;
  }
  
  .practice-areas article .row {
    margin-bottom: 6rem;
  }
  
  .practice-areas .photo {
    margin-top: 0;
  }
		
}


/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#444;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#444;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#444;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.wp-block-separator {
    border-top: 1px solid;
    border-bottom: none;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
