/*
Theme Name: Law Firm Sites - Guttenberg
Theme URI: http://www.lawfirmsites.com/
Description: A simple responsive theme based on the Bootstrap framework. Includes multiple page templates, two different sidebars and a theme options panel.
Version: 1
Author: Law Firm Sites
Author URI: http://www.lawfirmsites.com/
Tags: black, white, one-column, two-columns, flexible-width, custom-background, custom-colors, custom-menu, full-width-template, theme-options
License: 
License URI: 
*/

/* FONT FACE
=================================*/

@import url("https://use.typekit.net/mad6uxn.css");



:root {
  /*FONT SIZE*/
  --px12: 0.75rem;
  --px14: 0.875rem;
  --px15: 0.938rem;
  --px16: 1rem;
  --px17: 1.063rem;
  --px18: 1.125rem;
  --px20: 1.25rem;
  --px21: 1.35rem;
  --px22: 1.375rem;
  --px23: 1.438rem;
  --px24: 1.5rem;
  --px25: 1.563rem;
  --px26: 1.625rem;
  --px27: 1.688rem;
  --px28: 1.75rem;
  --px30: 1.875rem;
  --px32: 2rem;
  --px34: 2.125rem;
  --px35: 2.188rem;
  --px36: 2.25rem;
  --px38: 2.375rem;
  --px40: 2.5rem;
  --px42: 2.625rem;
  --px45: 2.813rem;
  --px46: 2.875rem;
  --px48: 3rem;
  --px50: 3.125rem;
  --px55: 3.438rem;
  --px60: 3.75rem;
  --px61: 3.813rem;
  --px65: 4.063rem;
  --px69: 4.313rem;
  --px72: 4.5rem;
  --px90: 5.625rem;
  --px92: 5.75rem;
  --px95: 5.938rem;
  --px96: 6rem;
  --px100: 6.25rem;
  --px105: 6.563rem;
  --px126: 7.875rem;

  --Gotham: "gotham", sans-serif;
  --InstrumentSans: "instrument-sans-variable", sans-serif;
  --MinionPro: "minion-pro", serif;
  --FWNormal: "wdth" 100, "wght" 400;
  --FWMedium: "wdth" 100, "wght" 500;
  --FWBold: "wdth" 100, "wght" 700;

  /*COLOR*/
  --Black: #070707;
  --Dark: rgba(17, 17, 17, 0.8);
  --Red: #AA2B3D;
  --LightBlue: #B2C4CC;
  --Green: #385B4F;
  --GrayBorder: #D0D0D0;
}


/* BODY
=================================*/

html { font-size: 0.833333vw; scroll-behavior: smooth; }

body { padding: 0; margin: 0; font-size: var(--px20); font-family:var(--InstrumentSans); font-weight:normal; line-height:1.72; color: var(--Black); 
font-variation-settings: var(--FWNormal);
}

a:hover { outline: none; text-decoration: none; }

/* Accessibility: Focus styles for keyboard navigation */
a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
	outline: 2px solid #006FFF;
	outline-offset: 2px;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 2px solid #006FFF;
	outline-offset: 2px;
}

.scroll { transition: .6s; -moz-transition: .6s; -ms-transition: .6s; -webkit-transition: .6s; -o-transition: .6s; } 

.sub-menu , .repCasesBtn , a.imgHover:before ,
a , input , button , .sub-menu { transition: .5s; -moz-transition: .5s; -ms-transition: .5s; -webkit-transition: .5s; -o-transition: .5s; }

img { max-width: 100%; width: auto; height: auto; object-fit: cover; object-position: center; }

a.imgHover { display: inline-block; position: relative; vertical-align: top; }

a.imgHover img { display: block; margin: 0; }

a.imgHover:before { content: ''; display: inline-block; position: absolute; top: 0; left: 0; bottom: 0; width: 100%; }

a.imgHover:hover:before { background-color: rgba(0,0,0,.5); }

.scroll.open { top: 0; }

.admin-bar .scroll.open { top: 32px; }

.scroll { position: fixed; display: none; top: -200px; left: 0; width: 100%; z-index: 5000; }

a.post-edit-link { display: inline-block; color: #fff; padding: .4rem 2rem; background-color: #000; font: 1.25rem; position: fixed; bottom: 1rem; left: 1rem; z-index: 3000; }

a.post-edit-link:hover { background-color: #333; }

section:before,section:after { clear: both; display: block; content: ''; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p { margin: 0; }

h1, .h1 { display: block; font-size: var(--px48); line-height: 1.03em; font-family: var(--Gotham); font-weight: 500; text-transform: uppercase;}

h2, .h2 { display: block; font-size: var(--px48); line-height: 1.03em; font-family: var(--Gotham); font-weight: 500; text-transform: uppercase;}

h3, .h3 { display: block; font-size: var(--px32); line-height: 1.333em; font-family: var(--InstrumentSans); font-weight: 400; font-variation-settings: var(--FWMedium); }

h4, .h4 { display: block; font-size: var(--px24); }

h5, .h5 { display: block; font-size: var(--px18); line-height: 1.3333; text-transform: uppercase; font-weight: 700; }

h6, .h6 { display: block; }

.sub {
  display: block; font-size: var(--px20); line-height: 1.6; font-family: var(--InstrumentSans); text-transform: uppercase;
}


a.skip-main { 
	left: -999px; 
	position: absolute; 
	top: auto; 
	width: 1px; 
	height: 1px; 
	overflow: hidden; 
	z-index: 999; 
}

a.skip-main:focus {
	left: 0;
	top: 0;
	width: auto;
	height: auto;
	overflow: visible;
	padding: 1rem;
	background-color: #000;
	color: #fff;
	text-decoration: none;
	font-weight: bold;
}

/* Screen reader only class */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}

.sr-only-focusable:focus {
	position: static;
	width: auto;
	height: auto;
	padding: inherit;
	margin: inherit;
	overflow: visible;
	clip: auto;
	white-space: normal;
}

svg { fill:inherit; stroke:inherit; }

picture { display:block; }

[width="11"] { width:0.688rem; }
[width="14"] { width:0.875rem; }
[width="18"] { width:1.175rem; }
[width="20"] { width:1.25rem; }
[width="22"] { width:1.375rem; }
[width="27"] { width:1.688rem; }
[width="29"] { width:1.813rem; }
[width="37"] { width: 2.313rem; }
[width="40"] { width:2.5rem; }
[width="42"] { width:2.625rem; }
[width="105"] { width: 6.563rem; }

/* FOOTER
=================================*/

#footer { 
  background-color: #fff; padding: 5.375rem 0 4.188rem; color: #5C5C5C; overflow: hidden;
}

#footer a { color: #5C5C5C; }

#footer a:hover,
#footer a:focus { color: var(--Green); }

#footer ul {
  list-style: none; padding: 0; margin: 0;
}

.footer-top {
  gap: 0 1.75rem; justify-content: flex-end;
}

#footer .sub {
  letter-spacing: .41em; margin-bottom: 1.5rem; color: #070707;
}

#footer address { margin-bottom: 0; }

#footer .footer-top a { color: var(--Green); }

#footer .footer-top a:hover,
#footer .footer-top a:focus { color: var(--Black); }

#footer .footer-bottom {
  border-top: 1px solid #D0D0D0; padding-top: 1rem; margin-top: 6.063rem;
}
#footer .footer-bottom span { margin: 0 .25rem; }

/* HEADER
=================================*/
.navbar-default { border-radius: 0; margin: 0; min-height: 0; background-color: rgba(255,255,255,.9); color: var(--Black); border: none; padding: 0; }

.navbar-default .wrap {
  align-items: center; justify-content: space-between;
}

.main-menu { list-style: none; padding: 0; margin: 0; }

.main-menu li { position: relative; padding: 0; }

.main-menu li a { display: block; font-size: var(--px20); line-height: 1.2em; font-weight: 400; font-family: var(--InstrumentSans); }

.logo { display: inline-block; vertical-align: top; max-width: 19.75rem; margin: 0rem 0 0rem; vertical-align: top; }

ul.paginations { list-style:none; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap: 1rem; }

.btn { display:inline-flex; text-align:center; gap: 1.875rem; background-color:var(--Green); justify-content:center; color:#fff; 
  align-items:center; padding: 0.938rem 1.875rem; border-radius: 0; border: none;
  font-size: var(--px20); line-height:1.72; fill: #fff; }

.btn:hover,
.btn:focus { background-color:#111; color:#fff; fill:#fff; }

.btn.btn-alt { background-color: #fff; color: var(--Black); fill: var(--Black); }
.btn.btn-alt:hover,
.btn.btn-alt:focus { background-color: var(--Green); color: #fff; fill: #fff; }

.phone-button { }

.phone-button a { 
  font-size: var(--px16); line-height: 1.25em; text-transform: uppercase; display: inline-flex; gap: 1.875rem; align-items: center;
  background-color: #fff; border: 1px solid var(--Green); fill: var(--Green); padding: 0.813rem 1.25rem; color: var(--Black);
}
.phone-button a:hover,
.phone-button a:focus { background-color: var(--Green); color: #fff; fill: #fff; }
.phone-button a svg {
  transition: .5s;
}
.phone-button a:hover svg,
.phone-button a:focus svg {
  transform: rotate(-90deg);

}
.phone-button a span { flex: 1; }

/* CONTACT FORM
=================================*/

#bottom-contact {
  padding: 5.813rem 0 7.375rem; background-color: #F0F0F0; overflow: hidden;
}

#bottom-contact .flex { gap: 2rem; }

#bottom-contact .html-block { max-width: 40.438rem; }

#bottom-contact .html-block h2 { font-weight: 500; text-transform: uppercase; margin-bottom: 1rem; }

#bottom-contact .html-block p {
  margin-bottom: 4.313rem;
}

#bottom-contact .contact-form { flex: 1; }

#bottom-contact .contact-form .sub-title { 
  margin-bottom: 5.688rem;
}

.gform_confirmation_message { background-color: #ddffdd; color: #000; text-align: center; border: 2px solid #4CAF50; padding: 15px 20px; }

.form-wrap { margin: 0; flex: 1; font-size: var(--px20); line-height: 1.72; }

.form-wrap label { font-weight: normal; }

.form-wrap h2 { }

.form-wrap ul { list-style: none; padding: 0; }

.gform_fields { margin: 0; }

.ginput_container--name > span ,
.gfield { width: 100%; position: relative; margin-bottom: 1.5rem; display: block; }

.gfield.hidden_label { margin-bottom:0; }

.gfield.hidden_label legend.gfield_label,
.gfield.hidden_label label.gfield_label { display:none; }

.ginput_container--name label,
.gfield label.gfield_label { margin-bottom: 1rem; }

.gfield label.gfield_label span {  }

.form-wrap textarea,
.form-wrap input[type="tel"],
.form-wrap input[type="email"],
.form-wrap input[type="text"] { background-color: #fff; display: block; width: 100%; border: 1px solid rgba(0,0,0,.3); border-radius: 0; line-height: 1.333em; padding: 0.719rem 1.75rem; }

.form-wrap textarea { resize: none; height: 7.563rem; }

.gform_footer { text-align: center; padding-top: 0rem; }

.gform_footer .btn {  }

.gform_footer .btn:hover {  }

p.gform_required_legend { display:none; }

.form-wrap h2.gform_submission_error  { font-size:var(--px16); line-height:var(--px30); font-family:inherit; color:var(--Red); }

.gfield_validation_message, .validation_message  { color:var(--Red); font-size:var(--px16); line-height:var(--px30);  }

.ui-datepicker { padding: 1rem; background-color:#fff; max-width:20rem; font-size:15px; width: 100%; }

.ui-datepicker-header { display:flex; flex-wrap:wrap; gap: .5rem; align-items: center; margin-bottom: .5rem; }

.ui-datepicker-header > a span { display:none; }

.ui-datepicker-header > a { width: 1rem; font-size: 18px; }

.ui-datepicker-header > a:before { font-family: "Font Awesome 6 Pro"; font-weight: 900; content: "\f053"; }

.ui-datepicker-header .ui-datepicker-next { order:2; text-align: right;}

.ui-datepicker-header .ui-datepicker-next:before { content: "\f054"; }

.ui-datepicker-title { display: flex; flex-wrap: wrap; gap: .5rem; flex: 1; }

.ui-datepicker-title select { flex: 1; border: 1px solid #000; text-transform:uppercase; font-weight:500; background-color:transparent; }

table.ui-datepicker-calendar { width:100%; font-size: 14px; }

.ginput_container--name { }

.form-wrap .ginput_container_consent {
  display: flex; flex-wrap:wrap; gap: 0 1.5rem; align-items: center;
}
.form-wrap .ginput_container_consent input[type="checkbox"] { width: 1.5rem; height: 1.75rem; }

.form-wrap .ginput_container_consent label {
  flex:1; color: #8C8C8C; margin-bottom: 0;
}

/* Blocks
=================================*/
.editor-visual-editor__post-title-wrapper { text-align:center; max-width:800px; margin: 0 auto 3rem; }

.editor-styles-wrapper :where(:not(.is-layout-flex,.is-layout-grid))>.wp-block,
html :where(.wp-block) { margin:0; max-width:unset; }

.marbles {
  background-image: url('./assets/images/marble.jpg'); background-size: cover; background-position: center top; background-repeat: no-repeat;
}

#home-banner { background-color:#000; color:#fff; padding:24.75rem 0 8.125rem; position:relative; z-index: 10; 
  background-image: url('./assets/images/home-banner.jpg'); background-size: cover; background-position: center bottom;
}
#home-banner:before {
  content: ''; display: block; position: absolute; top: 0; left: 0; bottom: 0; width: 100%; background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.4) 73.51%); z-index: -1;

}

#home-banner-video { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; z-index: -5; }

#home-banner picture { position:relative; z-index: 10; max-width: 43.625rem; margin: 0 auto 5.125rem; }

#home-banner h1 { font-size: var(--px60); max-width: 56.563rem; margin: 0 auto 1.938rem; font-weight: 500; text-transform: uppercase; }

#home-banner .text { max-width: 56.563rem; margin: 0 auto 2.25rem; font-weight: 500; line-height: 1.2em; }

#home-banner .buttons { display:flex; flex-wrap:wrap; gap: 1rem; justify-content:center; margin-bottom: 3.563rem; }

#home-banner .bottom-text { font-size: var(--px27); font-weight: 700; letter-spacing: .37em; text-transform: uppercase; line-height: 1.222em; font-variation-settings: var(--FWBold); }

#home-practices {
  padding: 5.375rem 0 4rem;
}

#home-practices .flex {
  align-items: center; justify-content: space-between; gap: 0 5rem;
}

#home-practices h3 { order: 1; }

#home-practices p { order: 2; flex: 1; }

#home-practices .btn { order: 3; }

#home-practices .practice-list { order: 4; width: 100%; margin-top: 4rem; }

#home-practices .h2 {
  text-transform: uppercase; font-weight: 500;
}

.sub-title {
  font-size: var(--px20); text-transform: uppercase; letter-spacing: .41em; color: var(--Black); line-height: 1.6em; font-family: var(--InstrumentSans);
  border-top: 1px solid #D0D0D0; border-bottom: 1px solid #D0D0D0; padding: 1rem 0; margin-bottom: 3.75rem; 
}

.practice-list {
  display: flex; flex-wrap:wrap; gap: 2rem;
}
.practice-list .practice-item {
  flex: 1 1 calc(50% - 2rem); background-color: #fff; padding: 3.938rem 4.438rem;
  box-shadow: 0px 4px 36.5px rgba(0, 0, 0, 0.06);
}

.practice-list .practice-item .svg {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; border: 1px solid #385B4F; margin-bottom: 2rem;
  width: 7.313rem; height: 7.313rem;
}

.practice-list .practice-item .h3 {
  font-size: var(--px32); line-height: 1.333em; font-weight: 500; font-family: var(--InstrumentSans); font-variation-settings: var(--FWMedium); margin-bottom: 0;
}
.practice-list .practice-item .description {
  margin-bottom: 1.375rem; color: var(--Green);
}
.practice-list .practice-item .h3 a {
  color: var(--Green);
}
.practice-list .practice-item p {
  margin-bottom: 2.5rem;
}

#home-attorneys {
  padding: 4rem 0 6.25rem;
}
#home-attorneys .flex { gap: 0 4.438rem; }

#home-attorneys picture { max-width: 46.75rem; }

#home-attorneys .html-block { flex: 1; }

#home-attorneys .html-block .h2 { font-size: var(--px48); letter-spacing: .01em; text-transform: uppercase; font-weight: 500; }

#home-attorneys .html-block p { margin-top: 2.813rem; }

#home-testimonials {
  padding: 10.875rem 0 6.125rem;
}

#home-testimonials .h2 {
  text-transform: uppercase; font-weight: 500;
}

#home-testimonials .flex {
  align-items: center; justify-content: space-between; gap: 0 2rem;
}

#home-testimonials .testimonials-list {
  order: 3; width: 100%; margin-top: 4rem; display: flex; flex-wrap:wrap; gap: 0; border-top: 1px solid #D0D0D0; border-bottom: 1px solid #D0D0D0; 
  display: flex; flex-wrap:wrap; justify-self: center;
}
#home-testimonials .testimonials-list .testimonial-item {
  padding: 3.5rem 4.375rem 3.5rem; flex: 1 1 calc(100%/3);
}
#home-testimonials .testimonials-list .testimonial-item .testimonial-content {
  display: flex; flex-wrap:wrap; flex-direction: column; height: 100%;
}
#home-testimonials .testimonials-list .testimonial-item .svg { margin-bottom: 1.438rem; }

#home-testimonials .testimonials-list .testimonial-item p {
  flex:1; margin-bottom: 0.938rem; line-clamp: 9; -webkit-line-clamp: 9; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; display: -webkit-box;
}
#home-testimonials .testimonials-list .testimonial-item .testimonial-author { color: #385B4F; }

#cta-block {
  background-image: url('./assets/images/cta.jpg'); background-size: cover; background-position: center top; background-repeat: no-repeat; position: relative;
  z-index: 10; color: #fff;
}
#cta-block:before {
  content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.53); z-index: -1;
}

#cta-block .flex {
  align-items: center; gap: 0 5.688rem;
}
#cta-block h2 {
  font-size: var(--px96); text-transform: uppercase; font-weight: 500; line-height: 1.03em; letter-spacing: -.01em;
}
#cta-block .cta-content { flex: 1; } 

#cta-block .cta-content p { margin-bottom: 2.125rem; }

#page-top-banner {
  position: relative; z-index: 10; color: #fff; background-image: url('./assets/images/banner-default.jpg'); background-size: cover; background-position: center top; 
  background-repeat: no-repeat;
}
#page-top-banner:before {
  content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1;
  background: linear-gradient(0deg, rgba(69, 69, 69, 0.6), rgba(69, 69, 69, 0.6));
}
.page-title { 
  min-height: 23.813rem; display: flex; flex-wrap:wrap; align-items: center; justify-content: center;
}

.page-title .h1 {
  font-weight: 500; text-transform: uppercase;
}

#values {

}
#values h2 {
  text-transform: uppercase; font-weight: 500; text-align: center; margin-bottom: 2.813rem;
}

#values {
  padding: 5.375rem 0 3.938rem;
}

.values-list {
  display: flex; flex-wrap:wrap; gap: 0 1rem; text-align: center; 
}
.values-list .value-item {
  flex: 1 1 calc(100%/4 - 1rem); background-color: #fff; padding: 3.938rem 2.5rem 2.938rem; max-width: 20.25rem; fill: transparent;
  box-shadow: 0px .25rem 2.281rem rgba(0, 0, 0, 0.06); display: flex; flex-wrap: wrap; flex-direction: column;
}
.values-list .value-item .value-icon {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; border: 1px solid #385B4F; margin: 0 auto 2rem;
  width: 7.313rem; height: 7.313rem;
}
.values-list .value-item h3 { margin-bottom: 1.375rem; }

.values-list .value-item .value-content {
  flex: 1; display: flex; flex-wrap: wrap; flex-direction: column;
}

.values-list .value-item h3 {
  flex: 1;
}

#attorneys {
  padding: 3.938rem 0 5.375rem;
}

#attorneys .attorneys-list {

}

#attorneys .attorneys-list .attorney-item {
  gap: 0 6.438rem;
}
#attorneys .attorneys-list .attorney-item .left-block {
  max-width: 40.438rem; text-align: center;
}

#attorneys .attorneys-list .attorney-item .left-block span.role-label {
  display: inline-block; margin: 1rem auto; font-variation-settings: var(--FWBold);
}
#attorneys .attorneys-list .attorney-item picture {
  max-width: 40.438rem;
}
#attorneys .attorneys-list .attorney-item .role-label-group a {
  color: var(--Green); text-decoration: underline;
}
#attorneys .attorneys-list .attorney-item .role-label-group a:hover,
#attorneys .attorneys-list .attorney-item .role-label-group a:focus {
  color: var(--Black); 
}
#attorneys .attorneys-list .attorney-item + .attorney-item {
  margin-top: 5.375rem;
} 
#attorneys .attorneys-list .attorney-item:nth-child(even) picture {
  order: 2;
}
#attorneys .attorneys-list .attorney-item .attorney-content {
  flex: 1;
}
#attorneys .attorneys-list .attorney-item .attorney-content p { margin-top: 2.813rem; }

#attorneys .attorneys-list .attorney-item .attorney-content a {
  color: var(--Green); text-decoration: underline;
}

#attorneys .attorneys-list .attorney-item .attorney-content a:hover,
#attorneys .attorneys-list .attorney-item .attorney-content a:focus {
  color: var(--Black); 
}

#attorneys .attorneys-list .attorney-item:nth-child(even) .attorney-content {
  padding-top: 2.875rem;
}

#practice-landing {
  padding: 5.375rem 0;
}

#areas-single {
  padding: 5.375rem 0 5.375rem;
}

#areas-single .flex {
  gap: 0 4rem;
}

#areas-single .flex .half-block {
  flex: 1;
}

#areas-single ul { list-style: none; padding: 0; }
#areas-single ul li {
  position: relative; padding-left: 1.938rem; overflow: hidden; 
}
#areas-single ul li:before {
  content: ''; display: block; position: absolute; top: 0.75rem; left: .75rem; width: 0.25rem; height: 0.25rem; background-color: var(--Black); 
}

#areas-single picture.area-image {
  max-width: 40.438rem;
}

#areas-single h2 { margin-bottom: 2.813rem;}

#areas-single p + h3 {
  margin-top: 2.813rem;
}
#areas-single strong {
  font-variation-settings: var(--FWBold);
}
#areas-single .html-block p {
  margin-top: 2.188rem; 
}
#areas-single .html-block .sub-title { max-width: unset; }

#areas-single .html-block h2 + p {
  margin-top: 0;
}

#areas-single .bottom-block {
  margin-top: 5.375rem;
}

#areas-single .bottom-block .h3 {
  margin-bottom: 0.688rem;
}
#areas-single .bottom-block .flex {
  align-items: center; gap: 0 10.625rem;
}
#areas-single .bottom-block .flex ul {
  flex: 1;
}

#areas-single .bottom-block .flex.f-start {
  align-items: flex-start;
}

#areas-single .bottom-block .flex .text-block { flex: 1;}

#areas-single .bottom-block .flex .text-block p { margin-bottom: 1rem; }

.single-practice-areas #cta-block .flex {
  min-height: 33.813rem;
}
.single-practice-areas #cta-block h2 {
  font-size: var(--px72); max-width: 33.5rem;
}

#default-content {
  padding: 5.375rem 0 5.375rem;
}
#default-content p { margin-bottom: 2.188rem; }

#default-content h2 { margin-bottom: 2.813rem; }

#default-content h3 { margin-bottom: 1.438rem; }

#default-content ul { margin-bottom: 2.188rem; list-style: none; padding: 0; }

#default-content ul ul { margin: 0;}

#default-content ul li {
  position: relative; padding-left: 1.938rem; overflow: hidden; 
}
#default-content ul li:before {
  content: ''; display: block; position: absolute; top: 0.75rem; left: .75rem; width: 0.25rem; height: 0.25rem; background-color: var(--Black); 
}

#default-content ul a {
  color: var(--Black); 
}

#default-content ul a:hover {
  color: var(--Green);
}

#contact-main {
  padding: 5.375rem 0 5.375rem;
}

#contact-main .contact-main-content { max-width: 30.5rem; width: 100%; color: #5C5C5C; }

#contact-main .contact-main-content .flex {
  gap: 0 5rem;
}

#contact-main .contact-main-content .sub {
  margin-bottom: 1.5rem; color: var(--Black);
}
#contact-main .contact-main-content address { margin-bottom: 0; }

#contact-main .contact-main-content a {
  color: var(--Green);
}
#contact-main .contact-main-content a:hover,
#contact-main .contact-main-content a:focus {
  color: var(--Black);
}

#contact-main .contact-main-content h2 {
  max-width: 24.938rem; margin-bottom: 4rem; color: var(--Black);
}
#contact-main .map {
  margin-top: 4rem;
}
#contact-main .map .embed-responsive {
  height: 23.375rem; filter: grayscale(100%);
}

#contact-main .wrap {
  gap: 0 3.688rem;
}
#contact-main .contact-form {
  flex: 1; background-color: #F0F0F0; padding: 4.063rem 4.125rem;
}

#testimonials-page {
  padding: 5.375rem 0;
}

.bottom-load-more {
  border-top: 1px solid #D0D0D0; border-bottom: 1px solid #D0D0D0; padding: 1rem 0; text-align: center; margin-top: 5.375rem;
}

#testimonials {
  
}

#testimonials .testimonial-item {
  border: 1px solid #D0D0D0; padding: 3.563rem 4.375rem; overflow: hidden; margin-bottom: 1rem;
}
#testimonials .testimonial-item .svg { margin-bottom: 1.5rem; }

#testimonials .testimonial-item .flex { margin-top: 2rem; }

#main-content {
  overflow: hidden;
}

@media ( min-width: 768px ) { 

}

@media ( min-width: 992px ) {

  #home-testimonials .btn,
  #home-testimonials .sub-title span,
  #home-attorneys .sub-title span,
  #home-practices .sub-title span { opacity: 0; visibility: hidden; transition: 2s ease-out;  }

  #home-testimonials.effect-on .btn,
  #home-testimonials.effect-on .sub-title span,
  #home-practices.effect-on .sub-title span,
  #home-attorneys.effect-on .sub-title span { opacity: 1; visibility: visible; }

  #bottom-contact .html-block {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(-27.813rem);
  }
  #bottom-contact .contact-form {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(25.75rem);
  }

  #home-attorneys .flex {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(20.438rem);
  }

  #cta-block .cta-content {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(22.5rem);
  }

  #cta-block h2 {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(-18.063rem);
  }

  #home-testimonials .h2 {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(-18.625rem);
  }
  #home-testimonials .testimonials-list .testimonial-item .testimonial-content {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(6.875rem);
  }

  #home-testimonials.effect-on .testimonials-list .testimonial-item .testimonial-content {
    transform: none; opacity: 1; visibility: visible;
  }


  #home-testimonials.effect-on .h2 {
    transform: none; opacity: 1; visibility: visible;
  }

  #home-attorneys.effect-on .flex {
    transform: none; opacity: 1; visibility: visible;
  }

  #home-practices .flex > .practice-list { transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(12.25rem); }

  #home-practices .flex > .h2,
  #home-practices .flex > p,
  #home-practices .flex > .btn { transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(-17.5rem); }


  #bottom-contact.effect-on .contact-form,
  #bottom-contact.effect-on .html-block,
  #cta-block.effect-on .cta-content,
  #cta-block.effect-on h2,
  #home-practices.effect-on .flex > .practice-list,
  #home-practices.effect-on .flex > .h2,
  #home-practices.effect-on .flex > p,
  #home-practices.effect-on .flex > .btn {
    transform: none; opacity: 1; visibility: visible;
  }

  #testimonials {
    column-count: 3; column-gap: 1rem;
  }

  #contact-main .contact-main-content .sub {
    letter-spacing: .41em;
  }

  .columns-2 {
    column-count: 2;
  }

  h1,.h1, h2,.h2 {
    letter-spacing: -.01em;
  }

  #areas-single .container {
    padding: 0 17.375rem;
  }

  #areas-single picture.area-image {
    float: right; margin-left: 5.813rem; margin-top: 2.625rem;
  }

  .contact-form {
    flex: 1;
  }

  .ginput_container--name ,
  .gform_fields {
    display: flex; flex-wrap:wrap; gap: 0 0.938rem; align-items: center;
  }

  .ginput_container--name > span,
  .gfield--width-half {
    flex: 1 1 calc(100%/2 - 0.938rem); max-width: 19.75rem;
  }

  .gfield--type-submit {
    margin: 0; max-width: 12.188rem; margin-bottom: 0;
  }
  .gfield--input-type-consent {
    max-width: unset; flex: 1; margin-bottom: 0;
  }

  #cta-block .flex {
    min-height: 40.063rem;
  }

  #cta-block h2 {
    text-align: right; max-width: 41.938rem;
  }

  .home #cta-block h2 { max-width: 41.938rem; }


  #home-testimonials .testimonials-list .testimonial-item + .testimonial-item {
    border-left: 1px solid #D0D0D0;
  }

  #home-attorneys picture { margin-left: -4.313rem; }

  .home #header { position: absolute; top: 0; left: 0; width: 100%; z-index: 300; }

  #header .container { padding: 0 18.5rem; }

  .footer-top .div-block:nth-child(3) { margin-right: 3.25rem; }

  .footer-logo { max-width: 27.438rem; margin-right: auto; margin-left: -.75rem; }

  #footer .container { padding: 0 18.563rem; }

  .flex { display:flex; flex-wrap:wrap;  }

  .flex.between { justify-content:space-between; }
  
  .flex.center { justify-content:center; }

  .container { width:100%; max-width:120rem; padding:0 18.5rem; }

  .wrap { margin: 0 auto; width: 100%; }

  .main-menu { display:flex; flex-wrap:wrap; gap: 0 3.313rem; }

  .main-menu li { position: relative; }

  .main-menu li a { color: var(--Black); }
  
  .main-menu > li { display: inline-block; }

  .main-menu > li > a { position:relative; padding: 2.5rem 0; }

  .main-menu > li > a:after { content:''; width:0; height:.25rem; background-color: var(--Green); transition:.5s; position:absolute; bottom:0; left:0; right:0; margin: 0 auto; }

  .main-menu > li > a:hover:after { width:100%; }
  
  .main-menu > li > .sub-menu { position: absolute; top: 100%; left: -1rem; width: 15rem; padding: 0; z-index: 200; opacity: 0; visibility: hidden; text-align: left; padding-top:.5rem }

  .main-menu > li:hover > .sub-menu { opacity: 1; visibility: visible; }
  
  .main-menu > li > .sub-menu > li { display: block; }
  
  .main-menu > li > .sub-menu > li > a { padding: .625rem 1rem; color: #fff; background-color: #111; }
  
  .main-menu > li > .sub-menu > li:hover > a { background-color: rgba(200,200,200); color:#111; }

}

@media ( min-width: 1901px ) {

  html { font-size:16px; }

}

@media ( min-width: 992px ) and ( max-width: 1399px ) {

  :root {

    /*FONT SIZE*/
    --px12: 0.95rem;
    --px14: 1.075rem;
    --px15: 1.138rem;
    --px16: 1.2rem;
    --px17: 1.263rem;
    --px18: 1.325rem;
    --px20: 1.45rem;
    --px21: 1.55rem;
    --px22: 1.575rem;
    --px28: 1.95rem;
  }

}

@media ( max-width: 991px ) {

  html { font-size: 16px; }

  body { padding-top: 0; font-size: var(--px18); }
  
  body.mean-container .mean-bar { position: fixed; top: 0; left: 0; width: 100%; z-index: 3000; padding-top: 2.45rem; background-color: rgba(255,255,255,.9); }

  body.mean-container.admin-bar .mean-bar { top: 32px; }
  
  body.mean-container .mean-nav { background-color: rgba(255,255,255,0); }

  body.mean-container a.meanmenu-reveal { width: 2rem; box-sizing:border-box; padding:0; text-align: center; color: #fff; right:1rem !important; top:1.925rem; 
   color: var(--Green);
  }

  body.mean-container .mean-nav ul li a {
    border-color: var(--Green); color: var(--Green);
  }

  body.mean-container a.meanmenu-reveal span { height: 3px; margin-top: 0; background-color: var(--Green); }

  body.mean-container a.meanmenu-reveal span + span { margin-top:.5rem; }

  body.mean-container .mean-nav ul li a.mean-expand { height: auto; padding: 7px 12px !important; }

  .phone-button a span { display: none; }

  .logo {
    position: fixed; top: 0.938rem; left: .625rem; width: 100%; z-index: 3000; max-width: 11.875rem;
  }

  .phone-button a {
    position: fixed; top: 1.313rem; right: 4.125rem; z-index: 3000; width: 2.75rem; height: 2.75rem; display: flex; align-items: center; justify-content: center; 
    padding: 0;
  }

  .main-menu li a {
    font-size: var(--px16); line-height: normal;
  }

  #home-banner {
    padding-top: 11.125rem;
  }

  #home-banner h1 {
    font-size: var(--px46);
  }

  #home-banner .bottom-text {
    font-size: var(--px18);
  }

  .btn {
    font-size: var(--px16); line-height: 1.25em; padding: 0.938rem 1.875rem;
  }

  #home-practices {
    text-align: center;
  }

  .sub-title {
    font-size: var(--px16);
  }

  #home-attorneys .html-block .h2,
  h1, .h1,
  h2, .h2 {
    font-size: var(--px40);
  }

  #home-practices .h2 {
    margin-bottom: 1.5rem;
  }

  .practice-list .practice-item {
    padding: 2rem 1.25rem;
  }

  .practice-list .practice-item .svg {
    width: 4.313rem; height: 4.313rem; margin-left: auto; margin-right: auto;
  }
  .practice-list [width="40"] {
    width: 1.5rem;
  }
  .practice-list { margin-bottom: 2.5rem; }

  #home-attorneys {
    text-align: center; padding-bottom: 3.5rem; 
  }

  #home-testimonials {
    padding-top: 3.5rem; text-align: center; padding-bottom: 3.5rem;
  }

  #home-attorneys .html-block .h2 {
    margin-bottom: 2.375rem; margin-top: 2.125rem;
  }
  #home-attorneys .html-block .h2 br { display: none; }

  #home-testimonials .testimonials-list .testimonial-item {
    padding: 3.5rem 1rem 3.5rem;
  }

  #home-testimonials .testimonials-list {
    flex-direction: column;
  }

  #home-testimonials .testimonials-list .testimonial-item {
    display: none;
  }
  #home-testimonials .testimonials-list .testimonial-item:nth-child(1) { display: block; }

  #home-testimonials .btn { margin-top: 2.5rem; }

  #cta-block {
    padding: 8.438rem 0; text-align: center;
  }

  .single-practice-areas #cta-block h2,
  #cta-block h2 {
    font-size: var(--px40); margin-bottom: 1.5rem;
  }

  #bottom-contact {
    text-align: center;
  }

  #bottom-contact picture {
    margin-bottom: 2.5rem;
  }
  .form-wrap {
    text-align: left; font-size: var(--px16); line-height: 1.72;
  }

  .form-wrap .gfield--type-submit {
    margin-top: 2rem; text-align: center;
  }

  #footer {
    text-align: center; font-size: var(--px16);
  }

  #footer .div-block {
    margin-top: 3.75rem;
  }

  #footer .lfs { margin-top: 1.5rem; }

  .page-title {
    min-height: unset; padding-top: 11rem; padding-bottom: 5.5rem;
  }

  .values-list .value-item .value-icon {
    width: 4.313rem; height: 4.313rem; margin-left: auto; margin-right: auto; ;
  }

  .values-list [width="37"] { width: 1.713rem; }
  
  .values-list .value-item {
    padding: 3.938rem 1rem 2.938rem;
  }
  .values-list .value-item h3 { margin-bottom: 1.5rem; }

  .values-list .value-item + .value-item { margin-top: 1.5rem; }

  #attorneys .attorneys-list .attorney-item picture { margin-bottom: 1.5rem; }

  #attorneys .attorneys-list .attorney-item .attorney-content .h2 { font-size: var(--px36); }

  .practice-list .practice-item {
    text-align: center;
  }

  #areas-single picture.area-image {
    margin-bottom: 2.5rem;
  }

  #areas-single h2 {
    font-size: var(--px30); margin-bottom: 1.5rem;
  }

  .single-practice-areas #cta-block .flex {
    min-height: unset;
  }

  #contact-main .contact-form {
    margin-top: 3rem; padding: 4.063rem 1rem;
  }

  #contact-main .map .embed-responsive {
    height: 15rem;
  }
  #contact-main {
    text-align: center;
  }
  #contact-main .contact-item + .contact-item { margin-top: 2.5rem; }

}

@media ( max-width: 767px ) {

}