/*
  Theme Name: Barriston Law
  Author: Netgain Agency
  Author URI: https://netgain.agency
  Description: Wordpress theme for Barriston Law. Use of this theme outside of this company's website is strictly prohibited.
  Template: ion
  Text Domain: bl
*/

:root {

  /* GENERAL SETTINGS */
  --spacing: 110px;
  --spacing--small: 70px;
  --radius: clamp(5px, 0.4166666666666667vw, 8px);
  --transition: all 0.3s;
  --transition--slow: all 0.6s ease;
  --transition--fast: all 0.15s;
  
  /* FONT SIZING & LINE HEIGHTS */
  --font: "Crimson Text", serif;
  --heading: var(--font);
  --sans: "Montserrat", sans-serif;

  --font-size: 22px;
  --font-size--small: 17px;
  --font-size--large: calc(var(--font-size) / 0.75);
  --font-size--h1: 50px;
  --font-size--h2: 47px;
  --font-size--h3: 39px;
  --font-size--h4: 24px;
  --font-size--h5: clamp(20px, 1.5625vw, 30px);
  --font-size--h6: clamp(16px, 1.09375vw, 22px);
  --line-height: 1.5;
  --line-height--small: 1.25;
  --line-height--large: 2;
  --line-height--heading: 1.3;
  
  /* CONTAINER SIZING */
  --container-above--1600: 1500px;
  --container-above--1368: 1308px;
  
  /* THEME COLORS */
  --black: #3a3a3a;
  --gold: #bb9e80;
  --grey: #f6f6f6;
  --navy: #292c3d;
  --text: #3A3A3A;
  --primary: var(--gold);
  --secondary: var(--navy);
  --dark: var(--navy);
  --light: var(--grey);

  /* BUTTONS */
  --button-padding--top: 17px;
  --button-padding--bottom: var(--button-padding--top);
  --button-padding--left: 43px;
  --button-padding--right: var(--button-padding--left);
  --button-radius: 0;
  --button-text--casing: uppercase  ;
  --button-text--size: var(--font-size--small);
  --button-text--weight: 600;
  --button-text--font: var(--sans);
  --button-text--colour: var(--navy);
  --button-text--letter-spacing: 0px;
  --button-border-width: 1px;
  --button-background--primary: var(--primary);
  --button-background--secondary: var(--secondary);
  --button-background--ghost: transparent;
  --button-hover--background: var(--navy);
  --button-hover--color: #fff;
  --button-hover--background-dark: #fff;
  --button-hover--color-dark: #000;



  /* FORM FIELDS */
  --form-field--border: var(--navy);
  --form-field--padding-top: 15px;
  --form-field--padding-bottom: var(--form-field--padding-top);
  --form-field--padding-left: 10px;
  --form-field--padding-right: var(--form-field--padding-left);
  --form-field--radius: 0px;




  /* FAQS */
  --faq-spacing: clamp(20px, 1.5625vw, 30px);
  --faq-line--width: 1px;
  --faq-line--color: #ccc;
  --faq-open-close-width: clamp(20px, 1.5625vw, 30px);



}

.bg-navy { background-color: var(--navy); }

h1, h2, h3, h4 { font-weight: 600; color: var(--black); }

.pg-section.sm {
  padding-top: var(--spacing--small);
  padding-bottom: var(--spacing--small);
}

.find-lawyer-intro:after {
    content: '';
    width: 0;
    position: absolute;
    height: 0;
    top: 100%;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #292c3d;
    margin: 0 auto;
    left: 0;
    right: 0;
}

.preheader p {
    font-family: var(--sans);
    text-transform: uppercase;
    color: #fff;
}

.preheader p a {
    color: #fff;
}

.preheader p a:hover, .preheader p a:focus {
    color: var(--gold);
}

.preheader {
    padding: 20px 30px;
}

#header .navigation ul li:not(:last-child) a svg {
    width: 10px;
    height: 6px;
    margin-left: 10px;
}

#header .navigation ul li:not(:last-child) a {
    display: flex;
    align-items: center;
}

#header .navigation ul li:not(:last-child) li a {
    display: block;
}

#header .navigation ul li:not(.link-button, :first-child) a {
    font-weight: 600;
    font-family: var(--sans);
    text-transform: uppercase;
    font-size: 16px;
    color: var(--dark);
    padding: 40px 12px;
}

#header .navigation ul li.link-button {
    margin-left: 20px;
}

#header .navigation ul li.brand {
  margin-right: auto;
}

#header .navigation li:last-child svg {
    width: auto;
    height: 54px;
    margin-top: 12px;
    margin-left: 75px;
}

#header .navigation li ul {
    background: rgba(42, 45, 61, .89);
    top: 106px;
    left: 12px;
    width: 240px;
}

#header .navigation li ul li a {
    display: block !important;
    text-align: center;
    padding: 19px 16px !important;
    color: var(--gold) !important;
}

#header .navigation li ul li:not(:last-child) a {
    border-bottom: 2px solid var(--gold);
}

#header .navigation li ul li {
    display: block;
}

#header .navigation ul li:not(.link-button, :first-child) a:hover,
#header .navigation ul li:not(.link-button, :first-child) a:focus {
  color: var(--gold);
}

#header .navigation ul li:not(.link-button, :first-child) a svg * {
  transition: var(--transition);
}


#header .navigation ul li:not(.link-button, :first-child) a:hover svg *,
#header .navigation ul li:not(.link-button, :first-child) a:focus svg * {
  fill: var(--gold);
}

#header .navigation li ul li a:hover, #header .navigation li ul li a:focus {
    color: #fff !important;
    background: none !important;
}

.hero.home {
    height: calc(100vh - 181px);
}

.admin-bar .hero.home {
  height: calc(100vh - 181px - 32px); 
}

.pg-title {
    padding: var(--spacing--small) 30px;
    overflow: hidden !important;
}

.pg-title h1,
.home.hero h1 {
    color: #fff;
    width: 664px;
    position: relative;
}

.pg-title h1 {
    width: 711px;
}

.pg-title h1:before,
.home.hero h1:before {
    content: '';
    width: 5px;
    height: 100%;
    background-color: #fff;
    position: absolute;
    left: -45px;
    top: 0;
    bottom: 0;
}

.pg-section h2 strong {
    color: var(--navy);
}

.pg-section.h2-strong-gold h2 strong,
.pg-section.bg-navy h2 strong,
.pg-section.bg-dark h2 strong {
    color: var(--gold);
}

@media (min-width: 1200px) {
.pg-section h2 strong {
    padding-left: 40px;
    display: block;
}


.pg-section.heading-offset-0 h2 strong,
.pg-section .heading-offset-0 h2 strong {
    padding-left: 0;
}
}

.home-intro-blocks .home-intro-block-link {flex: 0 0 48%;margin-bottom: 25px !important;}

.home-intro-blocks {
    flex-wrap: wrap !important;
}

.image-link a.block-link,
.home-intro-blocks .home-intro-block-link a {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background-color: var(--navy);
}

.image-link a.block-link img,
.home-intro-blocks .home-intro-block-link a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 2;
    transform-origin: center;
    transition: var(--transition);
    transform: scale(1.15);
    opacity: 1;
}

.image-link a.block-link .block-link-text,
.home-intro-blocks .home-intro-block-link a .block-link-text {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.home-intro-blocks .home-intro-block-link a .block-link-text .button {
    position: absolute;
    bottom: 90px;
    transform-origin: top center;
    transition: var(--transition);
    transform: scale(1.5);
    opacity: 0;
}

.image-link a.block-link .button {
    display: none;
}

.home-intro-blocks .home-intro-block-link a:hover .block-link-text .button,
.home-intro-blocks .home-intro-block-link a:focus .block-link-text .button {
    opacity: 1;
    transform: scale(1);
}

.image-link a.block-link .block-link-text .block-link-heading,
.home-intro-blocks .home-intro-block-link a .block-link-text .block-link-heading {
    font-family: var(--sans);
    font-weight: 600;
    color: #fff;
    font-size: 22px;
}

.image-link a.block-link:not(#lawyers .image-link a.block-link):hover img,
.image-link a.block-link:not(#lawyers .image-link a.block-link):focus img,
.home-intro-blocks .home-intro-block-link a:hover img,
.home-intro-blocks .home-intro-block-link a:focus img {
    opacity: 0.25;
    transform: scale(1);
}

.image-link a.block-link:after,
.home-intro-blocks .home-intro-block-link a:after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    margin: auto;
    border: 2px solid var(--gold);
    z-index: 11;
    transition: var(--transition);
    opacity: 0;
}

.image-link a.block-link:hover:after, .image-link a.block-link:focus:after,
.home-intro-blocks .home-intro-block-link a:hover:after, .home-intro-blocks .home-intro-block-link a:focus:after {
    top: 30px;
    left: 30px;
    right: 30px;
    bottom: 30px;
    opacity: 1;
}

#lawyers .image-link a.block-link:hover:after {
    content: none !important;
}

.image-link a.block-link .block-link-text .block-link-heading {
    font-size: 27px;
    text-transform: uppercase;
}

.find-lawyer-intro {
    margin-bottom: 40px;
    border-top: 45px solid #ebebeb;
}

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

.find-lawyer-intro .find-lawyer-intro-text {
    border-left: 2px solid #bb9e80;
    padding-left: 35px;
}

.pg-section.locations {padding-left: 30px;padding-right: 30px;}

.location-block .block-link {
    overflow: hidden;
    width: 100%;
    height: 250px;
    display: block;
    position: relative;
}

.location-block .block-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 1;
}

.location-block .block-link .block-link-text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.location-block .block-link:hover .block-link-text .button,
.location-block .block-link:focus .block-link-text .button {
    background-color: var(--navy);
    color: #fff;
    border-color: var(--navy);
}


.location-block .block-link:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    display: block;
    z-index: 2;
    transition: var(--transition);
    opacity: 0;
    background-image: url(i/location-overlay.png);
    background-size: cover;
    background-position: 0 0;
    background-repeat: center right;
}

.location-block .block-link:hover:before,
.location-block .block-link:focus:before {
    opacity: 1;
}

.narrow-text p,
.community-involvement p,
.resource-intro p {
    max-width: 970px;
    margin: 0 auto;
}

.narrow-box {
    max-width: 970px !important;
    margin: 0 auto !important;
}

.resource-intro p {
    margin: 25px auto 0;
}

.testimonial h3 {
    color: #fff;
    line-height: 1.3;
}

.footer-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-links ul li svg {
    width: auto;
    display: block;
    height: 21px;
}

.footer-links ul li {
    margin: 0;
}

.footer-links ul li a {
    color: var(--navy);
    font-weight: 600;
    text-transform: uppercase;
    font-family: var(--sans);
    padding: 10px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-links ul li a:hover, .footer-links ul li a:focus {
    color: var(--gold);
}

.footer-links ul li:nth-child(3) svg {height: 19px;margin: -1px 0 0;}

.footer-links ul li:nth-child(2) {margin: 0 10px;}

.footer-links ul li:last-child svg {
    height: 31px;
    margin-left: 20px;
}

.footer-links {
    padding: 35px 30px;
}

.parent-pageid-248 .footer-links,
.page-id-260 .footer-links,
.page-id-249 .footer-links,
.page-id-588 .footer-links,
.page-id-252 .footer-links,
.home .footer-links {
    background-color: #ebebeb;
}

.footer-links ul li:not(:last-child) svg * {
    fill: var(--navy);
    transition: var(--transition);
}

.footer-links ul li:not(:last-child) a:hover svg *, .footer-links ul li:not(:last-child) a:focus svg * {
    fill: var(--gold);
}

#footer {
    background-color: var(--navy);
    padding: 35px 30px;
}

#footer p {
    margin: 0;
    font-family: var(--sans);
    font-size: 14px;
    color: #fff;
}

#footer p:first-child {
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 15px;
}

#footer p:first-child a {
    color: #fff;
}

#footer p:first-child a:hover, #footer p:first-child a:focus {
    color: var(--gold);
}





.careers-quote h3 {
    color: var(--navy);
}

.white-line-left:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -20px;
    width: 3px;
    background: #fff;
    content: "";
    display: block;
}

.what-sets-apart h2, .what-sets-apart p {
    color: var(--gold);
}

.what-sets-apart p strong {
    color: #fff;
}

.mini-quote p {
    color: var(--text);
    line-height: 1.9;
}

.mq-text-lg.mini-quote p {
    font-size: 22px;
}

.mini-quote p em {
    display: block;
    color: var(--dark);
}

.mini-quote {
    border-top: 3px solid var(--gold);
    border-bottom: 3px solid var(--gold);
    padding: 27px 0;
}

.bg-dark .mini-quote p {
    color: #fff;
}

.support-logos br {
    display: none;
}

.support-logos ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.support-logos ul li {
    flex: 0 0 33%;
    max-width: 33%;
    margin: 0 0 43px;
}

.support-logos ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
}

.support-logos ul li a img {
    max-width: 185px;
    height: auto;
}

.our-mission h2, .our-mission li {
    color: var(--gold);
}

.our-mission p, .our-mission li strong {
    color: #fff;
}

.our-mission h2 {
    margin: 0 0 20px;
}

.our-mission ul {
    list-style: none;
    margin: 55px 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.our-mission ul li, .our-mission ul li strong {
    font-family: var(--sans);
    font-weight: 700;
    text-align: center;
}

.our-mission ul li {
    flex: 0 0 20%;
    max-width: 20%;
    display: block;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0;
    padding: 0 25px;
    position: relative;
}

.our-mission ul li:not(:last-child):before {content: "";width: 3px;top: 0;right: 0;bottom: 0;margin: auto;display: block;background: #fff;position: absolute;height: 110px;}

.our-mission ul li:first-child {
    padding-left: 0;
}

.our-mission ul li:last-child {
    padding-right: 0;
}


.text-gold p, 
.text-gold li,
.heading-gold h2,
.heading-gold h3,
.heading-gold h4,
.heading-gold h5,
.heading-gold h6 {
    color: var(--gold);
}


.text-navy p, 
.text-navy li,
.text-navy h2,
.text-navy h3,
.text-navy h4,
.text-navy h5,
.text-navy h6 {
    color: var(--navy);
}

.practice-links ul {
    list-style: none;margin: 0;padding: 0 clamp(30px, 4.6875vw, 90px);text-align: center;
}

.practice-links ul li {
    display: inline-block;
    padding: 0 15px;
    margin: 10px 0;
    position: relative;
}

.practice-links ul li a {
    color: #fff !important;
    font-family: var(--sans);
    text-transform: uppercase;
    font-weight: 600;
    font-size: 17px;
    line-height: 1.25;
    display: block;
    text-decoration: underline;
}

.practice-links ul li:not(:last-child) {
    border-right: 2px solid var(--gold);
}

.practice-links ul li a:hover, .practice-links ul li a:focus {
    color: var(--gold) !important;
}

.pg-section.practice-area-boxes {
    padding-left: 40px;
    padding-right: 40px;
}

.practice-area-boxes .pa-box {
    padding: 30px !important;
    background: #fff !important;
    margin-bottom: 15px !important;
    margin-top: 15px !important;
}

.practice-area-boxes .pa-box .image-link {
    margin-bottom: 40px !important;
}

.practice-area-boxes .pa-box p:not(:last-child) {
    margin: 0 0 20px;
}

.practice-area-boxes .pa-box .image-link {
    margin-bottom: 40px !important;
}

.practice-area-boxes .pa-box p:not(:last-child) {
    margin: 0 0 20px;
}

.offer-box .elementor-icon-box-wrapper .elementor-icon-box-content h3 {
    margin: 0 0 10px !important;
    line-height: 1;
    font-family: var(--sans);
    font-size: 24px;
    color: var(--gold);
    font-weight: 700;
}

.offer-box svg {
    max-width: 60px;
    height: auto !important;
}


.link-button a, html .button, html .elementor-button, html .elementor-form .elementor-button, html .woocommerce #respond input#submit, html .woocommerce #respond input#submit.alt, html .woocommerce a.button, html .woocommerce a.button.alt, html .woocommerce button.button, html .woocommerce button.button.alt, html .woocommerce input.button, html .woocommerce input.button.alt {
    color: var(--button-text--colour) !important;
}

.link-button a:hover, .link-button a:focus, html .button:hover, html .button:focus, html .button.secondary:hover, html .button.secondary:focus, html .button.ghost:hover, html .button.ghost:focus, html .elementor-form .elementor-button:hover, html .elementor-form .elementor-button:focus, html .elementor-button:hover, html .elementor-button:focus, html .woocommerce #respond input#submit:hover, html .woocommerce #respond input#submit.alt:hover, html .woocommerce a.button:hover, html .woocommerce a.button.alt:hover, html .woocommerce button.button:hover, html .woocommerce button.button.alt:hover, html .woocommerce input.button:hover, html .woocommerce input.button.alt:hover, html .woocommerce a.button:focus, html .woocommerce a.button.alt:focus, html .woocommerce button.button:focus, html .woocommerce button.button.alt:focus, html .woocommerce input.button:focus, html .woocommerce input.button.alt:focus, html .elementor-element.elementor-button-info .elementor-button:hover, html .elementor-element.elementor-button-info .elementor-button:focus, html .elementor-element.elementor-button-success .elementor-button:hover, html .elementor-element.elementor-button-success .elementor-button:focus {
        color: var(--button-hover--color) !important;
}

.location-block .block-link:hover .button,
.location-block .block-link:focus .button {
    color: #fff !important;
}

.button.dark, .link-button.dark a, html .dark .elementor-button {
    color: #fff !important;
}

html .button.secondary, html .elementor-element.elementor-button-info .elementor-button {
    color: #fff !important;
}

.bg-dark .button.primary:hover,
.bg-dark .button.primary:focus,
html .button.secondary, html .elementor-element.elementor-button-info .elementor-button:hover, html .button.secondary, html .elementor-element.elementor-button-info .elementor-button:focus {
    color: var(--navy) !important;
    background-color: #fff !important;
    border-color: #fff !important;
}

.msg-navy {
    background-color: var(--navy) !important;
    padding: 30px 60px !important;
    color: #fff;
    text-align: center;
    max-width: 970px !important;
    margin: 0 auto 80px !important;
}

.msg-navy.no-margin {
    margin: 0 auto !important;
}

.msg-arrow:after {
    content: '';
    width: 0;
    position: absolute;
    height: 0;
    top: 100%;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #292c3d;
    margin: 0 auto;
    left: 0;
    right: 0;
    clear: both;
}

.button.dark:hover, .button.dark:focus {
    background-color: var(--gold);
    border-color: var(--gold);
    color: var(--navy);
}

.button.gold-text {
    color: var(--gold) !important;
}

.container-calc input {
    background-color: #fff;
    width: 100%;
    border: none;
    outline: 0;
    margin-top: 15px;
    margin-bottom: 15px;
    border-bottom: 2px solid #3a3a3a;
    padding: 15px 10px !important;
    font-family: var(--sans);
    transition: var(--transition);
}

.container-calc input:hover,
.container-calc input:focus,
.container-calc input:active {
    border-bottom: 2px solid var(--gold);
}

.container-calc {
    max-width: 400px;
    margin: 0 auto;
        display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.container-calc button {
    flex: 0 0 47%;
    max-width: 47%;
}

html .msg-navy .elementor-button:hover, html .elementor-button:focus {
    color: var(--navy) !important;
    background: #fff;
    border-color: #fff;
}

.border-top-gold-thin {
    border-top: 3px solid var(--gold);
}

.border-bottom-gold-thin {
    border-bottom: 3px solid var(--gold);
}

.pg-section a:not(.elementor-button, .button) {
    color: var(--navy);
    text-decoration: underline;
    word-wrap: break-word;
    font-weight: 600;
}

  
.pg-section.bg-dark a:not(.elementor-button, .button) {
    color: #fff;
}
.pg-section a:not(.elementor-button, .button):hover, .pg-section a:not(.elementor-button, .button):focus,
.pg-section.bg-dark a:not(.elementor-button, .button):hover, .pg-section.bg-dark a:not(.elementor-button, .button):focus {
    color: var(--gold);
}

.text-sans h1, .text-sans h2, .text-sans h3, .text-sans h4, .text-sans h5, .text-sans h6, .text-sans p, .text-sans li {
    font-family: var(--sans);
}

.pg-section.pg-section-full {
    padding-left: 30px;
    padding-right: 30px;
}

.no-template-padding .pg-section {
    padding-top: 0;
    padding-bottom: 0;
}

.contact-info strong {
    color: var(--navy);
    font-family: var(--sans);
}

.testimonial-small em {
    color: var(--gold);
}

html .elementor-form .elementor-field:not(.elementor-form .elementor-field.elementor-select-wrapper, .elementor-form .elementor-field.elementor-acceptance-field), html .elementor-field-group .elementor-select-wrapper select {
    background-color: var(--navy) !important;
    color: #fff !important;
    font-family: var(--sans) !important;
    font-size: 15px !important;
}

.contact-form p {
    font-size: 16px;
    font-weight: bold;
    margin: 20px 0 -7px;
}

.contact-form .captcha-note p {
    margin: 0;
    font-weight: 500;
    font-family: var(--sans);
    font-size: 13px;
    text-align: left;
}

.contact-form .elementor-field-type-radio label {
    font-size: 15px;
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option {
    flex: 0 0 50%;
    max-width: 50%;
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup {
    width: 100%;
}

.contact-form textarea {height: 288px !important;resize: none !important; margin-top: 20px !important;}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input {
    width: 0;
    height: 0;
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label:before {
    content: "";
    width: 23px;
    height: 23px;
    border: 3px solid var(--navy);
    top: -3px;
    border-radius: 100%;
    display: block;
    position: absolute;
    background: transparent;
    transition: var(--transition);
    z-index: 1;
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label {
    position: relative;
    padding-left: 25px;
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input:checked + label:before {
    background: var(--navy);
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label:after {
    content: "";
    display: block;
    background-image: url(i/check.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    z-index: 2;
    width: 13px;
    height: 10px;
    transition: var(--transition);
    opacity: 0;
    top: 4px;
    left: 0.5px;
    transform-origin: center;
    transform: scale(0.5);
}

.contact-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input:checked + label:after {
    transform: scale(1);
    opacity: 1;
}

.community-logos .gallery br {
    display: none;
}

.community-logos .gallery {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    max-width: 970px;
    margin: 0 auto;
}

.community-logos .gallery .gallery-item {
    flex: 0 0 25%;
    float: none !important;
    margin: 0 0 30px !important;
}

.community-logos .gallery .gallery-item img {
    border: none !important;
}



.pg-section h2 sup {
    font-size: 38%;
    top: -20px;
}

.heading-inline h2 strong {
    display: inline;
}

.service-contact form {
    max-width: 728px;
    margin: 0 auto;
}

.service-contact form p {
    text-align: center;
}

.list-two-col ul {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 100px;
}

.bcorp-slider .swiper-pagination-bullet {
    width: 16px;
    height: 16px;
    margin: 0 7px !important;
    background: #94959E !important;
    opacity: 1;
}
.bcorp-slider .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--navy) !important;
}

.bcorp-slider .swiper-pagination {bottom: -10px !important;}

.lawyer-filter-wrap select {
    color: #666;
    padding: 10px 20px 12px;
    height: auto;
    border-width: 0;
    border-style: solid;
    box-shadow: none;
    box-sizing: border-box;
    transition: all .2s linear;
    background: #fff;
    width: 337px;
}

.pg-section.link-button a:not(.elementor-button, .button), .pg-section .link-button a:not(.elementor-button, .button) {
    text-decoration: none;
}

.lawyer-filter-wrap select, button#lawyers_filter_btn {
    min-height: 68px;
}

.error-box {background-color: var(--navy) !important;padding: 40px 60px !important;}

.error-box h2,
.error-box h3,
.error-box p {
    color: #fff;
}

.error-box .elementor-button {
    color: var(--navy) !important;
}

.error-box .elementor-button:hover, .error-box .elementor-button:focus {
    background-color: #fff;
    border-color: #fff;
    color: var(--navy) !important;
}

.faq-intro ul li {
    margin: 0;
}

#lawyers .pa-box__lawyers {
    padding: 22px !important;
    background: #fff !important;
}

#lawyers .pa-box__content {
    padding-top: 22px;
}

#lawyers .pa-box__content h4 strong,
#singleLawyer h3 {
    font-weight: 700;
    text-transform: uppercase;
    font-family: var(--sans);
    display: block;
    margin: 5px 0 20px;
}

#singleLawyer h3, #singleLawyer .white-box h3 {
    font-size: var(--font-size--h4);
    margin: 0 !important;
}

#singleLawyer .content-right h3 {
    margin-top: 30px !important;
}

#lawyers .pa-box__lawyers .pa-box__content ul,
#singleLawyer .lawyer-contact-list {
    margin: 20px 0 30px;
}

#lawyers .pa-box__lawyers .pa-box__content ul li a,
#singleLawyer .lawyer-contact-list li a {
    font-family: var(--sans);
    font-size: 18px;
    font-weight: 700;
}

#singleLawyer .lawyer-contact-list li a {
    color: var(--gold);
}

#singleLawyer .lawyer-contact-list li svg * {
    fill: var(--gold);
}

#singleLawyer .lawyer-contact-list li a:hover,
#singleLawyer .lawyer-contact-list li a:focus {
    color: var(--dark);
}

#lawyers .pa-box__lawyers .image-link a.block-link img {
    transform: scale(1);
}

#lawyers .pa-box__lawyers .pa-box__content a:not(.button),
#singleLawyer .lawyer-contact-list li a:not(.button){
    text-decoration: none !important;
}

#lawyers .pa-box__lawyers .pa-box__content ul,
#singleLawyer .lawyer-contact-list {
    list-style: none;
    padding: 0;
}


#lawyers .pa-box__lawyers .pa-box__content ul li,
#singleLawyer .lawyer-contact-list li {
    margin: 0;
}

#lawyers .pa-box__lawyers .pa-box__content ul li:last-of-type,
#singleLawyer .lawyer-contact-list li:last-of-type {
    margin: 0;
}

#singleLawyer .white-box {
    background-color: #FFF;
    padding: 22px;
    margin: 20px 0 0;
}

#singleLawyer .white-box ul {
    padding: 0;
    margin: 10px 0 0;
    list-style: none;
}

#singleLawyer .white-box ul li {
    margin: 0;
}

#singleLawyer .white-box ul li,
#singleLawyer .white-box ul li a {
    color: #606060;
    text-decoration: none;
    font-weight: 400;
}

#singleLawyer .white-box ul li a:hover, #singleLawyer .white-box ul li a:focus {
    color: var(--gold);
}

#singleLawyer .white-box h3 {
    color: var(--gold);
    text-transform: capitalize;
    font-weight: 700;
}

#blog {
    margin-top: 30px;
    padding: 0 30px;
    overflow: hidden;
}

#blog .elementor-post__thumbnail__link {
    display: none !important;
}

#blog .elementor-post > .elementor-post__text {
    background-color: var(--gold);
    padding: 22px;
    position: relative;
}

#blog .elementor-post > .elementor-post__text .elementor-post__title a {
    font-size: var(--font-size--h3);
    color: var(--dark);
    font-family: var(--heading);
    display: block;
    width: 100%;
    border-bottom: 2px solid #292c3d;
    margin: 0 0 20px;
    line-height: var(--line-height--heading);
    transition: all 0.3s;
}

#blog .elementor-post > .elementor-post__text .elementor-post__title a:hover,
#blog .elementor-post > .elementor-post__text .elementor-post__title a:focus {
    color: #FFF;
    transition: all 0.3s;
}

#blog .elementor-post > .elementor-post__text .elementor-post__excerpt p {
    font-size: var(--font-size);
    color: #292c3d;
    line-height: var(--line-height);
}

#blog .elementor-post > .elementor-post__text .elementor-post__excerpt p:after {
    content: ' [...]';
}

#blogArchive .elementor-widget-theme-post-featured-image {
    display: block;
    margin: 0 0 20px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background-color: var(--navy);
    position: relative;
}

#blogArchive .elementor-widget-theme-post-featured-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s;
    left: unset;
    position: unset;
    top: unset;
    transform: unset;
}

#blogArchive .elementor-post__title a {
    text-decoration: none !important;
    font-size: var(--font-size--h3);
    color: var(--navy);
    font-weight: 600;
    font-family: var(--heading);
    line-height: var(--line-height--heading);
}

#blogArchive .elementor-post__title a:hover,
#blogArchive .elementor-post__title a:focus {
    color: var(--gold);
}

#blogArchive .elementor-post__meta-data {
    display: block;
    margin: 10px 0 20px;
}

#singlePost .elementor-post-info {
    display: flex;
    margin: 8px 0 32px !important;
    align-items: center;
    flex-wrap: wrap;
}

#singlePost .elementor-post-info li {
    margin: 0 8px 0 0;
    position: relative;
    padding: 0 16px 0 0;
}

#singlePost .elementor-post-info li:last-of-type {
    margin: 0;
    padding: 0;
}

#singlePost .elementor-post-info li:not(:last-of-type):after {
    content: '/';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    border: none;
}

#singlePost .elementor-post-info li a {
    text-decoration: none !important;
}

#blogArchive .elementor-post__meta-data .elementor-post-date,
#singlePost .elementor-post-info li {
    display: block;
    font-size: var(--font-size--small);
    color: var(--navy);
    font-style: normal;
    font-family: var(--sans);
    font-weight: 600;
}

#singlePost figure {
    margin: 0 0 30px;
}

#singlePost figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#blogArchive .elementor-post__excerpt {
    margin: 0 0 30px;
}

#blogArchive .elementor-post__excerpt p {
    font-size: var(--font-size);
    color: #606060;
    position: relative;
}

#blogArchive .elementor-post__excerpt p:after {
    content: '...';
}

#blogArchive .elementor-post__read-more {
    font-family: var(--button-text--font);
    font-size: var(--button-text--size);
    padding: var(--button-padding--top) var(--button-padding--right) var(--button-padding--bottom) var(--button-padding--left);
    background-color: var(--button-background--secondary);
    color: #FFF;
    line-height: 1;
    font-weight: var(--button-text--weight);
    border-radius: var(--button-radius);
    text-transform: var(--button-text--casing);
    border: var(--button-border-width) solid var(--button-background--secondary);
    cursor: pointer;
    display: inline-block;
    transition: var(--transition);
    letter-spacing: var(--button-text--letter-spacing);
    text-decoration: none !important;
}

#blogArchive .elementor-post__read-more:hover,
#blogArchive .elementor-post__read-more:focus {
    background-color: var(--button-background--primary);
    border: var(--button-border-width) solid var(--button-background--primary);
    color: var(--secondary);
}

#blogArchive #loadMore {
    margin-top: clamp(100px, 7.8125vw, 150px);
}

#singlePost h2, #singlePost h3 {
    font-size: var(--font-size--h3);
    color: var(--navy);
    font-weight: 600;
    font-family: var(--heading);
    line-height: var(--line-height--heading);
}

#singlePost h4 {
    color: var(--navy);
    font-weight: 600;
    font-family: var(--heading);
    line-height: var(--line-height--heading);
}

#singlePost h5, #singlePost h6 {
    color: var(--text);
    font-weight: 400;
    font-family: var(--sans);
    line-height: 1.2;
    font-size: 20px;
    margin: 0 0 20px;
}

#singlePost h6 {
    font-size: 16px;
    font-weight: 700;
}

#singlePost h2 {
    font-size: var(--font-size--h1);
    color: #3A3A3A;
    line-height: 1.1;
    font-weight: 400;
}

#singlePost h3 {
    font-size: var(--font-size--h3);
}

#singlePost .recent-posts h3,
#singlePost .all-categories h3 {
    color: var(--text);
}

#singlePost .white-box {
    background-color: #FFF;
    padding: clamp(30px, 3.4375vw, 66px);
}

#singlePost .white-box.mt-30 {
    margin-top: 30px;
}

#singlePost .elementor-posts-container:not(#singlePost #blogArchive .elementor-posts-container) {
    grid-gap: 15px;
    margin: 20px 0 40px;
}

#singlePost .elementor-widget-sidebar {
    font-size: 0;
}

#singlePost .elementor-widget-sidebar ul {
    padding: 0;
    margin: clamp(10px, 0.78125vw, 15px) 0 0;
    list-style: none;
}

#singlePost .elementor-widget-sidebar ul li {
    margin: 0 0 clamp(8px, 0.6770833333333334vw, 13px);
}

#singlePost .elementor-widget-sidebar ul li:last-of-type {
    margin: 0;
}

#singlePost .elementor-posts-container {
    margin: 40px 0 0;
}

#singlePost .elementor-posts-container article a:not(.elementor-post__read-more) {
    display: block;
    font-size: 26px;
    color: var(--dark);
    text-decoration: none;
    font-family: var(--sans);
    font-weight: 600;
    line-height: 1.3;
}

#singlePost .elementor-widget-sidebar ul li a,
#singlePost .recent-posts a {
    display: block;
    font-size: 18px !important;
    color: var(--dark);
    text-decoration: none;
    font-family: var(--sans);
    font-weight: 600;
    line-height: 1.1;
}

#singlePost .elementor-posts-container .elementor-post-date {
    display: block;
    margin-top: 5px !important;
    font-size: 14px !important;
}

#singlePost .elementor-widget-sidebar ul li a:hover,
#singlePost .elementor-widget-sidebar ul li a:focus,
#singlePost .elementor-posts-container article a:not(.elementor-post__read-more):hover,
#singlePost .elementor-posts-container article a:not(.elementor-post__read-more):focus {
    color: var(--gold);
}

#singlePost article .elementor-post__title {
    line-height: 1;
}

#singlePost .sp-featured-image img {
    display: block;
    width: auto;
    max-width: 100%;
    height: clamp(234.66666666666666px, 18.333333333333332vw, 352px);
    margin: 0 0 20px;
}

#singlePost .sp-post-content blockquote {
    margin: 30px 0;
}

#singlePost .sp-post-content blockquote p {
    font-size: var(--font-size--small);
}

#singlePost .sp-post-content ul {
    margin: 0 0 30px;
}

#singlePost .sp-post-content p:last-of-type + ul {
    margin-top: 30px;
}

#singlePost .sp-post-content ul li:not(:last-of-type) {
    margin: 0 0 8px;
}

.pg-section.e-con-full:has(#lawyers) {
    padding-left: 30px !important;
    padding-right: 30px !important;
}

.six-line-excerpt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    overflow: hidden;
}

.show-bullets ul {
    list-style: disc !important;
    padding: 0 0 0 30px;
    color: var(--dark);
    margin: 20px 0 0;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified {
    padding: 0 !important;
    background: none !important;
    display: flex;
    align-items: center;
    grid-gap: 22px;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .image-link {
    display: block;
    width: 150px;
    flex: 0 0 150px;
    height: 150px;
    border-radius: 100%;
    overflow: hidden;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .image-link a {
    display: block;
    width: 100%;
    height: 100%;
    background: none;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .image-link a.block-link:after {
    content: none;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .image-link a.block-link:hover img {
    opacity: 1;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .pa-box__content h3 {
    line-height: 1;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .pa-box__content a:not(.button) {
    font-family: var(--sans);
    text-decoration: underline !important;
    text-transform: uppercase;
    font-size: var(--font-size--h4);
    font-weight: 700;
}

#lawyers .pa-box__lawyers.pa-box__lawyers--simplified .pa-box__content h4 strong {
    font-weight: 400;
    text-transform: capitalize;
    display: block;
    margin: 5px 0 0;
    font-size: var(--font-size);
}

.pg-section.bg-light p {
    color: var(--text);
}

.pg-section.bg-light p strong {
    color: var(--dark);
}

.pg-section.bg-light form p strong {
    color: #c02b0a;
}

.white-h2 h2 {
    color: #FFF;
}

html .elementor-button {
    white-space: normal;
    line-height: 1.1;
}

#profileBanner h4, #inlineBanner h4 {
    max-width: clamp(500px, 62.5vw, 1200px);
}

#singlePost .related-posts h3 a {
    font-family: var(--font) !important;
    color: var(--text) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    font-size: 26px !important;
}

.lawyer-filter-wrap {
    display: flex;
    grid-gap: 10px;
}

#inlineBanner h4, #profileBanner h4 {
    font-weight: 700;
}

#lawyers.management .image-link a.block-link {
    height: 540px;
}

#blogArchive .elementor-widget-theme-post-featured-image {
    display: block;
    margin: 0 0 20px;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background-color: var(--navy);
    position: relative;
    cursor: pointer;
}

#blogArchive .elementor-widget-theme-post-featured-image a {
    display: block;
    width: 100%;
    height: 100%;
    left: unset;
    position: unset;
    top: unset;
    transform: unset;
    object-fit: cover;
    transition: all 0.3s;
}

#blogArchive .elementor-widget-theme-post-featured-image a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#blogArchive .elementor-widget-theme-post-title h3 a {
    text-decoration: none !important;
    font-size: var(--font-size--h3);
    color: var(--navy);
    font-weight: 600;
    font-family: var(--heading);
    line-height: var(--line-height--heading);
}

#blogArchive .elementor-widget-theme-post-title h3 a:hover,
#blogArchive .elementor-widget-theme-post-title h3 a:focus {
    color: var(--gold);
}

#blogArchive .elementor-widget-post-info {
    display: flex;
    margin: 10px 0 20px !important;
    align-items: center;
    flex-wrap: wrap;
}

#blogArchive .elementor-widget-post-info li {
    margin: 0 8px 0 0;
    position: relative;
    padding: 0 8px 0 0;
}

#blogArchive .elementor-widget-post-info li:last-of-type {
    margin: 0;
    padding: 0;
}

#blogArchive .elementor-widget-post-info li:not(:last-of-type):after {
    content: '/';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -4px;
    margin: auto;
    border: none;
}

#blogArchive .elementor-widget-post-info li a {
    text-decoration: none !important;
}

#blogArchive .elementor-post-info li {
    display: block;
    font-size: 18px;
    color: var(--navy);
    font-style: normal;
    font-family: var(--sans);
    font-weight: 600;
}

#blogArchive .elementor-widget-theme-post-excerpt {
    margin: 0 0 30px;
}

#blogArchive .elementor-widget-theme-post-excerpt p {
    font-size: var(--font-size);
    color: #606060;
    position: relative;
}

#blogArchive .elementor-widget-theme-post-excerpt p:after {
    content: ' [...]';
}

#blogArchive #loadMore {
    margin-top: clamp(83.33333333333333px, 6.510416666666667vw, 125px);
}

#blogArchive .elementor-button-info .elementor-button:hover,
#blogArchive .elementor-button-info .elementor-button:focus {
    background-color: var(--gold) !important;
    color: var(--dark) !important;

}

[data-ast-blocks-layout] .wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    max-width: 100px;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    margin: 20px auto;
}

.wp-block-separator {
    border: none;
    border-top: 2px solid;
}

#singlePost .has-medium-font-size a {
    font-weight: 400;
}

#gmapContact, #gmapContact iframe {
    height: 600px !important;
}

@media (min-width: 1025px) {
    #blog .elementor-post > .elementor-post__text {
        padding: 22px 22px 50px;
    }
    #blog .elementor-post > .elementor-post__text {
        bottom: -50px;
        transition: all 0.3s;
    }
    #blog .elementor-post:hover > .elementor-post__text,
    #blog .elementor-post:focus > .elementor-post__text {
        bottom: 0;
        transition: all 0.3s;
    }
    #blog .elementor-post > .elementor-post__text .elementor-post__excerpt p {
        margin: 0 0 30px;
    }
}

@media (max-width: 767px) {
    #singlePost .content-right {
        margin-top: 40px;
    }
}

