/*
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/rss2fqz.css");



:root {
  /*FONT SIZE*/
  --px12: 0.75rem;
  --px14: 0.875rem;
  --px13: 0.813rem;
  --px15: 0.938rem;
  --px16: 1rem;
  --px17: 1.063rem;
  --px18: 1.125rem;
  --px19: 1.188rem;
  --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;
  --px48: 3rem;
  --px50: 3.125rem;
  --px55: 3.438rem;
  --px56: 3.5rem;
  --px60: 3.75rem;
  --px61: 3.813rem;
  --px65: 4.063rem;
  --px69: 4.313rem;
  --px72: 4.5rem;
  --px90: 5.625rem;
  --px92: 5.75rem;
  --px95: 5.938rem;
  --px100: 6.25rem;
  --px105: 6.563rem;
  --px126: 7.875rem;


  --BrandonGrotesque: "brandon-grotesque", sans-serif;
  --MinionPro: "minion-pro", serif;
  

  /*COLOR*/
  --Black: #000;
  --Dark: rgba(17, 17, 17, 0.8);
  --Red: #AA2B3D;
  --LightBlue: #B2C4CC;
  --DarkBlue: #26435A;
  --Gray: #BBBDC0;
}


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

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

body { padding: 0; margin: 0; font-size: var(--px20); font-family:var(--BrandonGrotesque); font-weight:normal; line-height:1.3333; color: var(--Black); }

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(--px60); line-height: 1.2em; font-family: var(--MinionPro); font-weight: 400; }

h2, .h2 { display: block; font-size: var(--px36); line-height: 1.194em; font-family: var(--MinionPro); font-weight: 400; }

h3, .h3 { display: block; font-size: var(--px36); line-height: 1.194em; font-family: var(--MinionPro); font-weight: 400; }

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.227; font-family: var(--BrandonGrotesque); text-transform: uppercase; letter-spacing: .205em;
}

address {
  font-size: inherit; margin-bottom: 0; line-height: inherit;
}

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="6"] { width:0.375rem; }
[width="11"] { width:0.688rem; }
[width="13"] { width:0.813rem; }
[width="18"] { width:1.175rem; }
[width="20"] { width:1.25rem; }
[width="22"] { width:1.375rem; }
[width="24"] { width:1.5rem; }
[width="26"] { width:1.625rem; }
[width="27"] { width:1.688rem; }
[width="51"] { width:3.188rem; }
[width="62"] { width:3.875rem; }
[width="64"] { width:4rem; }
[width="66"] { width:4.125rem; }
[width="68"] { width:4.25rem; }
[width="75"] { width:4.688rem; }
[width="81"] { width:5.063rem; }
[width="1418"] { width:88.625rem; }

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

#footer { 
  background-color: var(--Black); color: #fff; padding: 5.688rem 0 5rem;
  
}
#footer a {
  color: #fff; fill: #fff;
}
#footer a:hover, #footer a:focus {
  color: var(--LightBlue);
}
.footer-logo {
  max-width: 34.25rem; margin: 0 auto;
}

.site-details {
  text-align: center; border-top: .125rem solid var(--Gray); padding-top: 4.5rem; margin-top: 4.438rem; border-bottom: .125rem solid var(--Gray); padding-bottom: 5.625rem;
  line-height: 1.3em;
}
.site-details .sub {
  margin-bottom: 1.375rem; font-weight: 500;
}

.site-details .div-block:nth-child(2) {
  line-height: 1.55em;
}

#footer .disclaimer {
  font-size: var(--px15); max-width: 96.75rem;padding: 2.75rem 0 4.938rem;
}

#footer .footer-bottom {
  font-size: var(--px15); gap: 0 2.125rem;
}

.social-media {
  display: flex; flex-wrap:wrap; gap: 1.875rem; justify-content: center; align-items: center;
}

.bottom-links {
  display: flex; flex-wrap:wrap; gap: 0 .75rem; justify-content: center;
}

/* HEADER
=================================*/
.navbar-default { border-radius: 0; margin: 0; min-height: 0; background-color: rgba(0,0,0,.8); color: #fff; border: none; padding: 1.25rem 0; }

.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.45em; font-weight: 400; font-family: var(--BrandonGrotesque); }

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

ul.paginations { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap: 1rem; margin-top: 4rem; }

ul.paginations li span {
  display: inline-flex; align-items: center; justify-content: center; width: 3.438rem; height: 3.438rem; border-radius: 0; border: 1px solid #fff; transition: .5s;
  background-color: var(--Gray);
}
ul.paginations li a {
  display: inline-flex; align-items: center; justify-content: center; width: 3.438rem; height: 3.438rem; border-radius: 0; border: 1px solid #fff; transition: .5s;
  background-color: var(--DarkBlue);
}

ul.paginations li a:hover,
ul.paginations li a:focus {
  background-color: var(--Black);
}

.btn { display:inline-flex; text-align:center; border: 1px solid #fff; background-color: var(--DarkBlue); color: #fff; position: relative; z-index: 10;
  padding: .75rem 1.563rem 1rem; padding-right: 4.25rem; border-radius: 0; fill: #fff; transition: .5s;
}
.btn svg {
  position: absolute; top: 1.188rem; right: 1.375rem; transition: .5s;
}

.btn:hover svg,
.btn:focus svg {
  right: 2rem;
}

.btn:hover,
.btn:focus { background-color:var(--LightBlue); color: var(--Black); fill: var(--Black); border-color: var(--LightBlue); }

.phone-number a {
  display:inline-flex; text-align:center; gap: 2.5rem; padding: 0.813rem 1.688rem 1.125rem; font-size: var(--px16); font-family: var(--BrandonGrotesque); font-weight: 500;
  color: var(--Black); background-color: var(--LightBlue); border-radius: 0.5rem; border-radius: 0; line-height: 1.4375em; transition: .5s;
}
.phone-number a:hover,
.phone-number a:focus { background-color: var(--DarkBlue); }



.phone-number a svg {
  transition: .5s;
}
.phone-number a:hover svg {
  transform: rotate(-90deg);
}

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

.form-wrap { margin: 0; font-size: var(--px22); line-height: 1.22em; border: .125rem solid var(--Gray); padding: 7.5rem 4.5rem 7.5rem 5.813rem; }

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

.form-wrap h2 { }

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

.gform_fields { margin: 0; }

.gfield { width: 100%; position: relative; margin-bottom: 1.688rem; }

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

.gfield.hidden_label legend.gfield_label,
.gfield.hidden_label label.gfield_label { 
  display: block; width: 1px; height: 1px; overflow: hidden; opacity: 0; visibility: hidden; margin-bottom: -1px;
}
.ginput_container--name > span {
  margin-bottom: 1.688rem;
}
.ginput_container--name > span label ,
.gfield label.gfield_label { 
  font-weight: 400; display: block; margin-bottom: 0;  line-height: 1.22em; 
}

.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%; font-size: var(--px22);
  padding: 0 0 0; border: none; border-bottom: 1px solid var(--Black); border-radius: 0; line-height: 1.22em;
}

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

.gform_footer { text-align: right; padding-top: 0.813rem; }

.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; }


/* 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; }


#home-banner {
  position: relative; z-index: 10; padding: 39.375rem 0 6.5rem; color: #fff;
}
#home-banner-video {
  position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -5; bottom: 0; object-fit: cover; object-position: center;
}
#home-banner .flex {
  align-items: flex-end;
}
#home-banner h1 {
  font-size: var(--px105); line-height: 1em; margin-bottom: 0;
}

#main-content {
  overflow: hidden;
}

#home-about {
  padding: 8.875rem 0 3.313rem;
}
#home-about .upper {
  gap: 2.5rem; position: relative; z-index: 20;
}
#home-about .upper .html-block {
  max-width: 35.438rem;
}
#home-about .upper .html-block .sub {
  font-size: var(--px20); letter-spacing: .37em; margin-bottom: 2.375rem;
}
#home-about .upper .html-block h3 {
  font-size: var(--px36); line-height: 1.416em; font-weight: 400; color: var(--DarkBlue); font-family: var(--BrandonGrotesque);
}
#home-about .upper picture {
  max-width: 50.188rem;
}

#home-about .lower {
  gap: 2rem; align-items: flex-end; position: relative; z-index: 10; padding: 5.688rem 0 2rem; font-size: var(--px19);
}
#home-about .lower .small-logo {
  max-width: 12.438rem; align-self: flex-start;
}
#home-about .lower .html-block {
  max-width: 30.625rem; line-height: 1.631em; padding-bottom: 2.25rem;
}
#home-about .lower .html-block .btn {
  margin-top: 2rem;
}
#home-about .lower .bottom-text {
  font-weight: 700; margin-bottom: 1.313rem;
}

#home-about .lower .gallery {
  display: flex; flex-wrap:wrap; gap: 1.938rem; align-items: center; justify-content: center;
}
picture.the-florida-bar { max-width: 10.875rem; }
picture.aba { max-width: 10.938rem; }
picture.ccb { max-width: 9.563rem; }

#home-values {
  position: relative; z-index: 10; padding: 4.938rem 0 44.438rem;
}
#home-values .bg {
  position: absolute; bottom: 0; left: 0; width: 100%; background-color: var(--DarkBlue); z-index: -1;
}
#home-values .bg::before {
  content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -10;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.6) 0%, rgba(6, 6, 6, 0.492) 25.49%, rgba(13, 13, 13, 0.036) 52.89%, rgba(25, 25, 25, 0) 100%);
}

#home-values .wrap {
  stroke: var(--DarkBlue); color: #fff; fill: transparent; text-align: center;
  padding: 4.625rem 1.688rem 2.5rem; position: relative; z-index: 10;
}
#home-values .wrap:before {
  content: ''; display: block; width: 100%; height: 100%; background-color: var(--DarkBlue); position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -1;
}
#home-values .wrap .logo-svg {
  position: absolute; top: 7.25rem; left: 0; width: 100%; height: 100%; right: 0; margin: auto;  z-index: -1; opacity: 0.04;
}

#home-values h2 {
  margin-bottom: 1.5rem;
}
#home-values h2 + p { 
  margin: 0 auto 4rem; max-width: 41.813rem; color: var(--Gray); line-height: 1.631em;
}

.values-flex {
  justify-content: space-between; font-size: var(--px18);
}
.values-flex .item {
  width: 100%; max-width: 16.75rem; flex: 1; line-height: 1.368;
}

.values-flex .item .svg {
  display: flex; flex-wrap:wrap; gap: 0 1rem; align-items: center; justify-content: center; 
}
.values-flex .item .svg  svg {
  display: block; margin: 0 auto;
}
.values-flex .item h3 {
  color: var(--LightBlue); margin: .5rem 0;
}

#home-values .bg {

}

#home-bottom-content {
  padding: 7.188rem 0 9.375rem;
}

#home-bottom-content .featured-box {
  display: flex; flex-wrap:wrap; gap: 2.25rem; align-items: center; justify-content: center; margin-top: 5.438rem;
}
#home-bottom-content .featured-box .item {
  flex: 1 1 calc(100%/3 - 2.25rem); max-width: 32.125rem; background-size: cover; background-size: cover; background-position: center;
}

#home-bottom-content .featured-box .item a {
  display: flex; flex-wrap:wrap; gap: 0 1.5rem; align-items: flex-end; justify-content: space-between; padding: 2.375rem 2.813rem; height: 27.063rem;
  color: #fff; position: relative; z-index: 10;
}
#home-bottom-content .featured-box .item a:before {
  content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -1; transition: .3s;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.81) 0%, rgba(6, 6, 6, 0.6642) 25.49%, rgba(13, 13, 13, 0.0486) 52.89%, rgba(25, 25, 25, 0) 100%);
}
#home-bottom-content .featured-box .item a:after { 
  content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -1; opacity: 0; transition: .4s;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.81) 0%, rgba(6, 6, 6, 0.6642) 54.73%, rgba(13, 13, 13, 0.0486) 86.61%, rgba(25, 25, 25, 0) 100%);
}
#home-bottom-content .featured-box .item a:hover:before{
  opacity: 0; transition: .4s;
}
#home-bottom-content .featured-box .item a:hover:after{
  opacity: 1; transition: .3s;
}
#home-bottom-content .featured-box .item h3 { 
  font-size: var(--px36); line-height: 1.194em; font-weight: 400; 
}
#home-bottom-content .featured-box .item svg { position: relative; top: -0.5rem; }


#page-top-banner {
  position: relative; z-index: 10; padding: 0; color: #fff; background-size: cover; background-position: center; background-repeat: no-repeat;
  color: #fff; background-image: url('./assets/images/default-banner.jpg');
}
#page-top-banner:before {
  content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -1;
  background-color: rgba(0,0,0,.12);
}
.page-title {
  display: flex; flex-wrap:wrap; gap: 0 1rem; align-items: center; justify-content: center; padding: 16.375rem 0 6.063rem;
}
.page-title .h1 {
  font-size: var(--px105); line-height: 1.2em; margin-bottom: 0;
}

#about-main {
  padding: 8.875rem 0 5rem;
}
#about-main .upper {
  gap: 2.5rem; position: relative; z-index: 20;
}
#about-main .upper .html-block {
  max-width: 41.438rem;
}
#about-main .upper .html-block.right-block {
  max-width: 50.188rem;
}

#about-main .upper .html-block .sub { margin-bottom: 2.375rem; }

#about-main .upper .html-block .h1 {
  margin-bottom: 5.563rem;
}
#about-main .upper .html-block h3 {
  margin-bottom: 2.375rem;
}

#about-main .upper .html-block:nth-child(1) p {
  max-width: 30.625rem;
} 

#about-main .upper picture {
  margin-bottom: 3.813rem;
}

#cta-block {
  padding: 9.063rem 0; background-size: cover; background-position: center; background-repeat: no-repeat; background-image: url('./assets/images/cta-bg.jpg');
  color: #fff;
}

#cta-block .html-block {
  margin: 0 auto; max-width: 41.438rem;
}

#cta-block .html-block .h1 {
  margin-top: 2.375rem;
}
#cta-block .html-block .btn {
  margin-top: 2.375rem;
}

#default-content {
  padding: 8.875rem 0; font-size: var(--px22); line-height: 1.409em;
}


#default-content .html-block p {
  margin-bottom: 1.875rem;
}

#default-content .intro-page {

}
#default-content .intro-page .sub {
  margin-bottom: 2.375rem;
}

#default-content .intro-page .flex { 
  justify-content: space-between; gap: 0 2.5rem;
}
#default-content .intro-page .h1 {
  max-width: 35.063rem;
}
#default-content .intro-page .html-block {
  max-width: 53.5rem; 
}
#default-content .intro-page .html-block h3 {
  line-height: 1.416em; max-width: 46.375rem; color: var(--DarkBlue); font-family: var(--BrandonGrotesque);
}
#default-content .intro-page .html-block h3 + p {
  margin-top: 5.625rem;
}

#default-content .boxes-title {
  margin-top: 5.625rem; margin-bottom: 2.5rem;
}
#default-content .gray-boxes {
  display: flex; flex-wrap:wrap; gap: 1rem; justify-content: center; margin: 2.5rem auto 3.125rem;
}
#default-content .gray-boxes .box {
  flex: 1 1 calc(100%/3 - 1rem); max-width: 32.75rem; background-color: var(--Gray); padding: 1.5rem; text-align: center; fill: none; stroke: #000;
  padding: 2.938rem 4.375rem;
}

#default-content .gray-boxes .svg {
  display: flex; flex-wrap:wrap; gap: 0 1rem; align-items: center; justify-content: center; min-height: 4rem; margin-bottom: .5rem;
}

#default-content .gray-boxes .box h3 {
  margin-bottom: .5rem; color: var(--DarkBlue);
}

#estate-planning-bottom-content {
  padding-bottom: 8.875rem;
}
#estate-planning-bottom-content .wrap {
  align-items: center; gap: 0 4.563rem; position: relative; z-index: 20;
}
#estate-planning-bottom-content .wrap picture {
  max-width: 49.75rem;
}
#estate-planning-bottom-content .wrap .html-block {
  flex: 1; color: #fff;
}
#estate-planning-bottom-content .wrap .html-block h2 {
  font-size: var(--px36); line-height: 1.416em; font-weight: 400; margin-bottom: 3rem; font-family: var(--BrandonGrotesque);
}
#estate-planning-bottom-content .wrap .html-block p {
  margin-bottom: 1.938rem;
}
#estate-planning-bottom-content .wrap .html-block ul {
  list-style: none; margin-bottom: 1.938rem; line-height: 1.8em; padding: 0;
}
#estate-planning-bottom-content .wrap .html-block ul li {
  padding-left: 2.188rem; position: relative; z-index: 10; overflow: hidden;
}
#estate-planning-bottom-content .wrap .html-block ul li:before {
  content: '•'; display: block; position: absolute; top: 0; left: 0.875rem; z-index: -1;
}
#estate-planning-bottom-content .wrap .html-block .bottom-links {
  justify-content: flex-start; margin-top: 3rem;
}

.attorneys-list {
  display: flex; flex-wrap:wrap; gap: 1rem; justify-content: center; margin-top: 5.625rem;
  font-size: var(--px36); line-height: 1.194em; font-family: var(--MinionPro); font-weight: 400; position: relative; z-index: 10;
}


.attorneys-list a {
  flex: 1 1 calc(100%/3 - 1rem); max-width: 26.188rem; padding: 1.125rem 2rem; border-bottom: .188rem solid var(--DarkBlue);
  position: relative; z-index: 10; color: #fff; fill: #fff; display: flex; flex-wrap: wrap; gap: 1rem; background-color: var(--DarkBlue);
}
.attorneys-list a span { flex:1;}
.attorneys-list a:before {
  content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: -1;
  background: radial-gradient(288.21% 329.88% at -1.35% 112.25%, #B3C9D3 0%, #4F6E82 17.55%, #26435A 35.1%);
}

.attorney-single.flex { gap: 0 8.225rem; position: relative; z-index: 10; }

.attorney-single.flex picture.attorney-image {
  max-width: 39.438rem; order: 2; width: 100%;
}
.attorney-single.flex picture.attorney-image img {
  width: 100%; height: 100%; object-fit: cover; object-position: center;
}

.bio-content {
  flex: 1;
}

.bio-content h1 { 
  margin-bottom: 1.5rem;
}

.attorney-single:before {
  content: ''; display: block; width: auto; height: auto; position: absolute; top: 0; left: 0; right: 0; z-index: -1; bottom: 0;
  background-color: var(--Gray);
}

.attorney-contact-info {
  display: flex; flex-wrap:wrap; gap: 1.5rem 4rem; font-size: var(--px18); text-transform: uppercase; letter-spacing: 0.325rem;
  margin-bottom: 8.813rem;
}

.attorney-contact-info p {
  margin-bottom: 0;
}
.attorney-contact-info p a {
  display: flex; flex-wrap:wrap; gap: 1rem; align-items: center; color: var(--DarkBlue); fill: var(--DarkBlue);
}

.attorney-content-inner {
  font-size: var(--px22);
}
.attorney-content-inner p { 
  margin-bottom: 1.875rem;
}

.attorney-content-inner ul {
  margin-bottom: 1.875rem;
}

#page-top-banner.attorneys-banner {
  background-image: url('./assets/images/banner-bio.jpg');
}

#default-content .intro-page.blog-intro-flex {
  gap: 1.75rem; font-size: var(--px22); margin-bottom: 8.75rem; line-height: 1.409em;
}

#default-content .intro-page.blog-intro-flex .h1 {
  flex: 1; max-width: unset;
}

.blog-posts-list {
  display: flex; flex-wrap:wrap; gap: 0 2rem; 
}

.blog-posts-list .blog-post-item {
  flex: 1 1 calc(100%/3 - 2rem); max-width: 32.125rem;
}
.blog-posts-list .blog-post-item .img {
  margin-bottom: 2.125rem;
}
.blog-posts-list .blog-post-item .img a {
  display: block;
}
.blog-posts-list .blog-post-item .img a img {
  width: 100%; height: 21.875rem; object-fit: cover; object-position: center;
}
.blog-posts-list .blog-post-item .h3 {
  line-height: 1.194em; padding: 0 1rem; margin-bottom: 1rem;
}
.blog-posts-list .blog-post-item .h3 a {
  color: var(--Black);
}

.blog-posts-list .blog-post-item .h3 a:hover,
.blog-posts-list .blog-post-item .h3 a:focus {
  color: var(--DarkBlue);
}

.blog-posts-list .blog-post-item .content {
  padding: 0 1rem; font-size: var(--px22);
}

.page-title .h1.hide-title {
  opacity: 0; visibility: hidden;
}

.foundation-main-content {
  position: relative; z-index: 10; gap:0 9.375rem; justify-content: space-between; font-size: var(--px22);
}
.foundation-main-content picture {
  max-width: 49.75rem;
}
.foundation-main-content .html-block { flex: 1;}

.foundation-main-content .html-block .sub { margin-bottom: 2.375rem; }

.foundation-main-content .html-block .h1 { max-width: 35.813rem; margin-bottom: 5rem; }

.foundation-main-content .html-block h3 {
  margin-bottom: 2.375rem; font-family: var(--BrandonGrotesque); font-size: var(--px36); line-height: 1.416em; font-weight: 400; 
}
.foundation-main-content .html-block p {
  max-width: 30.688rem; margin-bottom: 1.875rem;
}

.foundation-main-content .html-block .btn {
  margin-top: 5rem;
}

.contact-main-content {
  justify-content: space-between;
}
.contact-main-content .html-block {
  font-size: var(--px22); line-height: 1.409em;
}
.contact-main-content .form-wrap {
  max-width: 60.5rem; width: 100%;
}

.contact-main-content .html-block picture.clogo {
  max-width: 23.375rem; margin-bottom: 5rem;
}

.contact-main-content .html-block .sub {
  margin-bottom: 1.5rem;
}

.contact-main-content .html-block p + .sub { margin-top: 5rem; }

.contact-main-content .html-block p a {
  color: var(--DarkBlue); fill: var(--DarkBlue);
}

.contact-main-content .html-block .btn {
  margin-top: 1.5rem;
}

.sitecol h2 { 
  margin-bottom: 1.5rem;
}

.sitecol ul a {
  color: var(--DarkBlue);
}

.sitecol ul a:hover,
.sitecol ul a:focus {
  text-decoration: underline;
}

.article-post {
  border-bottom: .125rem solid var(--Gray); padding-bottom: 1.875rem; margin-bottom: 1.875rem;
}
.article-post h2 { 
  margin-bottom: 1rem;
}

.article-post h2 a {
  color: var(--DarkBlue);
}

.article-post h2 a:hover,
.article-post h2 a:focus {
  text-decoration: underline;
}

.blog-single-thumb {
  margin-bottom: 2rem;
}

.blog-single h1 {
  margin-bottom: 1.5rem;
}
.blog-single p {
  margin-bottom: 1.875rem;
}

.gfield_required_asterisk { display: none; }

@media ( min-width: 768px ) { 

}

@media ( min-width: 992px ) {

  .ginput_container--name,
  .gform_fields {
    display: flex; flex-wrap:wrap; gap: 0 1.563rem;
  }

  .ginput_container--name > span,
  .gfield--width-half {
    flex: 1 1 calc(50% - 1.563rem); max-width: 24.313rem;
  }

  .foundation-main-content:after {
    content: ''; display: block; width: 72.625rem; height: 25rem; position: absolute; bottom: -8.875rem;  right: -9.875rem; margin: auto; z-index: -1;
    background-color: var(--Gray);
  }

  #default-content .intro-page.blog-intro-flex .html-block {
    max-width: 46.375rem;
  }

  .attorney-single.flex picture.attorney-image img {
    height: 46.563rem;
  }

  .attorney-single:before {
    top: 10.563rem; right: -9.875rem;
  }

  .bio-content {
    padding-left: 6.625rem; padding-bottom: 5.875rem;
  }

  #estate-planning-bottom-content .wrap:after {
    content: ''; display: block; width: auto; height: auto; position: absolute; bottom: 5.25rem;  left: -9.875rem; margin: auto; z-index: -1;
    right: 0; top: 5.25rem;
    background: radial-gradient(288.21% 329.88% at -1.35% 112.25%, #B3C9D3 0%, #4F6E82 17.55%, #26435A 35.1%);

  }

  #estate-planning-bottom-content .wrap .html-block {
    padding-right: 4.75rem;
  }

  #estate-planning-bottom-content .wrap .html-block ul {
    column-gap: .5rem; column-count: 2; 
  }

  #default-content .intro-page .html-block {
    margin-right: 2.688rem;
  }

  #about-main .upper .mission {
    max-width: 38.625rem; margin-left: 2rem;
  }
  #about-main .upper {
    position: relative; z-index: 20;
    padding-bottom: 6.375rem;
  }
  #about-main .upper:after {
    content: ''; display: block; width: 72.625rem; height: 25rem; position: absolute; bottom: 0;  right: -9.875rem; margin: auto; z-index: -1;
    background-color: var(--Gray);
  }

  #home-bottom-content .featured-box .item {
    transition: 2s ease-out; transform: translateY(8.375rem);
  }
  #home-bottom-content .featured-box .item:nth-child(2) {
    transform: translateY(18.625rem);
  }
  #home-bottom-content .featured-box .item:nth-child(3) {
    transform: translateY(11.125rem);
  }

  #home-bottom-content .wrap.effect-on .featured-box .item {
    transform: none !important;
  }

  #home-bottom-content .wrap {
    transition: 2s ease-out; opacity: 0; visibility: hidden;
  }
  #home-bottom-content .wrap.effect-on {
    opacity: 1; visibility: visible;
  }

  #main-content {
    overflow: hidden;
  }

  #home-values .wrap .logo-svg {
    opacity: 1; transition: 2s ease-out;
  }
  #home-values.effect-on .wrap .logo-svg {
    opacity: 0.04;
  }

  #home-values .bg {
    transition: 2s ease-out; transform: translateY(-23.875rem);
  }

  
  #home-values h2,
  #home-values h2 + p,
  #home-values .values-flex,
  #home-values .wrap::before {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateY(18.313rem);
  }
  #home-values.effect-on .bg,
  #home-values.effect-on h2,
  #home-values.effect-on h2 + p,
  #home-values.effect-on .values-flex,
  #home-values.effect-on .wrap::before {
    opacity: 1; visibility: visible; transform: none;
  }

  #home-about .lower {
    transition: 2s ease-out; opacity: 0; visibility: hidden;
  }
  #home-about .lower.effect-on {
    opacity: 1; visibility: visible;
  }

  #home-about .lower span.gray-bg {
    transition: 2s ease-out; opacity: 0; visibility: hidden; max-width: 0;
  }

  #home-about .lower.effect-on span.gray-bg {
    opacity: 1; visibility: visible; max-width: 72.625rem;
  }

  #home-about .upper .html-block {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(-10.25rem);
  }

  #home-about .upper picture {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(19.375rem);
  }

  #home-about .lower .bottom-text {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(9.563rem);
  }
  #home-about .lower .gallery {
    transition: 2s ease-out; opacity: 0; visibility: hidden; transform: translateX(9.563rem);
  }

  #home-about .lower.effect-on .gallery,
  #home-about .lower.effect-on .bottom-text,
  #home-about .upper.effect-on picture,
  #home-about .upper.effect-on .html-block {
    opacity: 1; visibility: visible; transform: none;
  }

  #home-about .lower span.gray-bg {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--Gray); z-index: -1; transform: translateX(-9.875rem);
  }

  #home-about .lower {
    margin-top: -12.75rem;
  }

  #home-about .lower .bottom-text {
    margin-left: 3.375rem;
  }

  #home-about .lower .gallery { margin-left: auto; }

  #footer .lfs { margin-left: auto; }

  #header {
    padding: .625rem; position: absolute; top: 0; left: 0; width: 100%; z-index: 3000;
  }
  #header .flex { gap: 0 2rem; align-items: center; justify-content: space-between; }

  #header .container { padding-left: 1.625rem; padding-right: 1.375rem; }

  .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 9.875rem; }

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

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

  .main-menu li { position: relative; }

  .main-menu li a { color: #fff; }
  
  .main-menu > li { display: inline-block; }

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

  .main-menu > li > a:after { content:''; width:0; height:2px; background-color: #fff; 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; }
  
  body.mean-container .mean-bar { position: fixed; top: .625rem; left: .5rem; right: .5rem; width: auto; z-index: 3000; padding-top: 3.25rem; 
    background-color: rgba(0,0,0,.8);
  }

  #header .phone-number {
    display: none;
  }
  .navbar-default {
    padding: 0;
  }

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

  body.mean-container a.meanmenu-reveal { width: 3.375rem; box-sizing:border-box;  text-align: center; color: #fff; right:1rem !important; top:1.375rem; 
  height: 3.375rem; background-color: var(--LightBlue); padding: 1.25rem 1.125rem 0; color: var(--Black);
  }
  body.mean-container a.meanmenu-reveal strong {
    font-size: var(--px22); position: relative; top: -0.438rem;
  }

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

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

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

  .logo {
    max-width: 16.75rem; position: fixed; top: 2.375rem; left: 2.125rem; z-index: 3000;
  }

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

  #home-banner h1 {
    font-size: var(--px56); margin-bottom: 2.5rem; line-height: 1.1em;
  }

  #home-banner {
    padding: 36.25rem 0 6rem;
  }

  #home-about {
    padding-top: 3.625rem;
  }

  #home-about .upper .html-block h3 {
    margin-bottom: 2.5rem;
  }
  #home-about .lower:before {
    content: ''; display: block; width: auto; height: 35rem; position: absolute; top: 0; left: -15px; right: -15px;  margin: auto; z-index: -10; background-color: var(--Gray);
  }

  #home-about .lower .bottom-text {
    text-align: center; margin-top: 7rem;
  }

  #home-about .lower .gallery {
    gap:1rem;
  }

  picture.aba,
  picture.the-florida-bar {
    max-width: 7.5rem;
  }

  picture.ccb {
    max-width: 6.625rem;
  }

  [width="1418"] {
    width: 100%;
  }

  .values-flex .item {
    margin: 0 auto;
  }
  .values-flex .item + .item {
    margin-top: 5.4rem;
  }

  #home-values {
    padding-bottom: 20rem;
  }

  #home-values .bg img {
    height: 29.5rem; object-fit: cover; object-position: center;
  }

  #home-bottom-content .featured-box {
    flex-direction: column;
  }
  #home-bottom-content .featured-box .item svg {
    display: none;
  }

  #home-bottom-content .featured-box .item a {
    height: 21.25rem; padding: 1.5rem 2rem;
  }
  #home-bottom-content .featured-box .item {
    width: 100%;
  }

  #footer {
    text-align: center;
  }

  .bottom-links {
    margin: 2.5rem auto;
  }


  .site-details .div-block + .div-block {
    margin-top: 3rem;
  }

  #home-about .lower .small-logo {
    margin-bottom: 2rem;
  }

  .page-title .h1 {
    font-size: var(--px40);
  }

  #page-top-banner:before {
    background-color: rgba(0, 0, 0, .22);
  }

  #about-main {
    padding: 5rem 0 5rem;
  }

  #about-main .upper picture {
    margin-top: 3rem;
  }

  #default-content .intro-page .h1 {
    margin-bottom: 2.5rem;
  }
  #default-content .gray-boxes {
    flex-direction: column;
  }
  #default-content .gray-boxes .box {
    padding: 2.938rem 1.375rem; width: 100%; 
  }

  .btn {
    white-space: normal;
  }
  .btn span {
    text-align: left;
  }

  #estate-planning-bottom-content .wrap .html-block {
    color: var(--Black);
  }

  #estate-planning-bottom-content .wrap .html-block h2 {
    font-size: var(--px30); margin-top: 3rem;
  }

  .attorneys-list a {
    padding: 1.125rem 1rem; width: 100%; max-width: none; flex: 1;
  }

  .attorneys-list a span {
    font-size: var(--px24);
  }
  .attorneys-list {
    flex-direction: column;
  }

  .contact-main-content .html-block,
  .blog-posts-list .blog-post-item .content,
  #default-content {
    font-size: var(--px18);
  }

  .foundation-main-content .html-block h3 {
    font-size: var(--px24);
  }

  .foundation-main-content picture {
    margin-top: 2.5rem;
  }

  .contact-main-content .form-wrap {
    margin-top: 3rem; padding: 3.5rem 1rem 3.5rem;
  }
  .ginput_container--name > span {
    display: block;
  }
  .ginput_container--name > span + span {
    margin-top: 1.688rem;
  }

  .form-wrap textarea, .form-wrap input[type="tel"], 
  .form-wrap input[type="email"], .form-wrap input[type="text"],
  .form-wrap {
    font-size: var(--px18);
  }
  

}

@media ( max-width: 399px ) {

  .logo {
    max-width: 10.75rem; top: 2.775rem;
  }

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

  #home-about .upper .html-block h3,
  h3, .h3 {
    font-size: var(--px30);
  }

  #home-about .lower:before  {
    height: 39rem;
  }

  h1, .h1 {
    font-size: var(--px40);
  }

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

  #home-bottom-content .featured-box .item h3 {
    font-size: var(--px30);
  }

  .blog-posts-list {
    flex-direction: column;
  }

  .blog-posts-list .blog-post-item {
    width: 100%; margin-bottom: 2.5rem;
  }

  .blog-posts-list .blog-post-item .img a img {
    height: auto;
  }

  .blog-posts-list .blog-post-item .h3,
  .blog-posts-list .blog-post-item .content {
    padding: 0;
  }

}