/*
Theme Name: Law Firm Sites
Theme URI: 
Author: 
Author URI: 
Description: A professional WordPress theme for law firm websites
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lawfirmsites
Tags: law, legal, attorney, business, professional
*/

/*
font-family:"benton-modern-display-extra";
font-family: "benton-modern-text";
font-family:"mulish-variable";
font-family: "BentonModDisp-Semibold";
*/


:root {
    --font-main: "mulish-variable";
    --font-secondary: "benton-modern-text";
    --font-secondary-2: "benton-modern-display-extra";
    
    --color-main: #1E1E1E;
    --color-primary: #1E3653;
    --color-light-blue: #D4E5FA;
    --color-highlight: #ED9411;
    --color-white: #ffffff;

   
    --fs-109:   clamp(40px, 5.677vw, 109px);
    --fs-86:    clamp(43px, 4.479vw, 86px);
    --fs-69:    clamp(42px, 3.594vw, 69px);
    --fs-62:    clamp(40px, 3.229vw, 62px);
    --fs-58:    clamp(32px, 3.021vw, 58px);
    --fs-50:    clamp(30px, 2.604vw, 50px);
    --fs-48:    clamp(28px, 2.5vw, 48px);
    --fs-45:    clamp(26px, 2.344vw, 45px);
    --fs-36:    clamp(25px, 1.875vw, 36px);
    --fs-35:    clamp(24.5px, 1.823vw, 35px);
    --fs-32:    clamp(24px, 1.667vw, 32px);
    --fs-30:    clamp(23.5px, 1.563vw, 30px);
    --fs-29:    clamp(23px, 1.51vw, 29px);
    --fs-28:    clamp(22.5px, 1.458vw, 28px);
    --fs-26:    clamp(22px, 1.354vw, 26px);
    --fs-24:    clamp(20.5px, 1.25vw, 24px);
    --fs-23:    clamp(20px, 1.198vw, 23px);
    --fs-21:    clamp(19px, 1.094vw, 21px);
    --fs-20:    clamp(18px, 1.042vw, 20px);
    --fs-19:    clamp(16px, 0.99vw, 19px);
    --fs-18:    clamp(16px, 0.938vw, 18px);
    --fs-17:    clamp(14px, 0.885vw, 17px);
    --fs-16:    clamp(14px, 0.833vw, 16px);
}

html, body{
    position: relative;
    width: 100%;
    min-height: 100%;
}
body {
    font-family: var(--font-main);
    font-size: var(--fs-19);
    color: var(--color-main);
}

a { color: var(--color-highlight); text-decoration: none; }
a:focus, a:hover{ /*outline:none;*/ color:inherit; text-decoration: none;}
a, a:before, a:after, a img, input[type="submit"], button, a *{
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
}
img{
    max-width:100%;
    height: auto;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    margin: 0;
    font-family: var(--font-secondary);
    color: var(--color-primary);
    font-weight: 700;
    margin-bottom: 24px;
}
.bg-gray h1,  .bg-gray h2,  .bg-gray h3,  .bg-gray h4,  .bg-gray h5,  .bg-gray h6, .bg-gray p, .bg-gray .eyebrow, .bg-gray a.button, .bg-gray ul,
.text-white h1,  .text-white h2,  .text-white h3,  .text-white h4,  .text-white h5,  .text-white h6, .text-white p, .text-white .eyebrow, .text-white ul  {
    color: var(--color-white);
}
.bg-white h1,  .bg-white h2,  .bg-white h3,  .bg-white h4,  .bg-white h5,  .bg-white h6, .bg-white p, .bg-white a, .bg-white a.eyebrow, .bg-white ul {
    color: var(--color-main);
}
h1, .h1 {
    font-size: var(--fs-109);
    line-height: 1;
    font-weight: 600;
    margin-bottom: 33px;
}
h1 em {
     color: var(--color-highlight);
}
h2, .h2 {
    font-size: var(--fs-62);
}
h3, .h3 {
    font-size: var(--fs-48);
    margin-bottom: 40px;
}
h4 { margin-bottom: 33px; }
.h4 {
    font-size: var(--fs-23);
}
p, ul {
    line-height: 1.59;
    font-size: var(--fs-20);
    margin-bottom: 40px;
    color: var(--color-main);
}
.small-text {
    font-size: var(--fs-16);
}
.main ul {
    padding-left: 10px;
}
.main ul li {
    margin-bottom: 34px;
}
.bg-blue {
    background-color: var(--color-primary);
    color: var(--color-white);
}
.bg-light-blue {
    background-color: var(--color-light-blue);
}
.color-highlight {
    color: var(--color-highlight);
}
.color-gray {
    color: var(--color-gray);
}
.container, .small.container, .big.container {
    width: 98%;
    max-width: 100%;
}
.d-flex.container, .d-flex.container-fluid{
    justify-content: space-between;
}
@media only screen and (min-width: 1200px) {
    .container {
        max-width: 1622px;
        width: 84.47917%;
    }
    .small.container {
        max-width: 1249px;
        width: 65.052083%;
    }
    .big.container {
        max-width: 1839px;
        width: 95.78125%;
    }
}
@media only screen and (max-width: 1921px) {
    .container-fluid {
        max-width: 1920px;
        margin: 0 auto!important;
    }

}
body.home section, footer {
    background: transparent url(assets/images/bg-pattern.png) no-repeat center center / cover scroll;
}
.w-bg-pattern {
    background: transparent url(assets/images/bg-pattern.png) no-repeat center center / cover scroll;
}
.bg-color-light-blue, body.home section:nth-child(even), footer {
    background-color: var(--color-light-blue);
}
section, main {
    padding-top: clamp(80px, 9.259vh, 100px);
    padding-bottom: clamp(80px, 9.259vh, 100px);
}
.button {
    padding: 17px clamp(12px, 2.031vw, 39px);
/*     gap: 24px; */
    font-size: var(--fs-18);
    background: var(--color-highlight);
    border: 1.5px solid #ED9411;
    border-radius: 100px;
    font-weight: 700;
    color: var(--color-white);
    display: inline-block;

    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.button:hover {
	background-color: #C67A08;
	color: var(--color-white);
}
.btn--transparent {
    background: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
}
.btn--transparent:hover {
	border-color: transparent;
    background: var(--color-highlight);
    color: var(--color-white);
}
.button i {
    color: var(--color-highlight);
}
.btn--transparent:hover i {
	color: var(--color-white);
}

@media only screen and (min-width: 992px) {  }
@media only screen and (min-width: 1300px) {
    .button i {
        margin-right: clamp(10px, 1.25vw, 24px);
    }
}




.sticky {
    position: sticky;
/*    overflow: auto;*/
    background: #fff;
    top: 0;
    left: 0;
    right: 0;
}
@media only screen and (min-width: 991px) {
    .clmn-2 {
        column-gap: 5.945%;
        column-count: 2;
    }
    .btn-lang {
        margin-left: clamp(40px, 5.104vw, 98px);
    }
    
}

.pagination {
    column-gap: 1%;
}
.pagination a {
    color: var(--color-main);
}
.pagination .next, .pagination .prev {
    background: transparent;
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    color: #9B9083;
}
.pagination .next:hover, .pagination .prev:hover {
    background: #9B9083;
    color: var(--color-white);
}

.object-fit-cover {
    object-fit: cover;
    object-position: center center;
}
.eyebrow {
    letter-spacing: .09em;
    text-transform: uppercase;
    line-height: 1.59;
    font-weight: 700;
    font-size: var(--fs-20);
    font-family: var(--font-main);
}
@media only screen and (min-width: 991px) {}
.position-relative { z-index:2; }

.btn-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.btn-pagination .slick-arrow:hover img {
      filter: brightness(0) saturate(100%) sepia(40%) hue-rotate(15deg) contrast(90%) brightness(90%);
}
.slick-dots {
    list-style-type: none;
    padding-left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 7px;
    margin-bottom: 20px;
/*    margin-top: 6px;*/
}
.slick-dots li button {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--color-primary);
    border: none;
    padding: 0;
    text-indent: -9999px;
}
.slick-dots li.slick-active button {
    background: var(--color-white);
}
.slick-custom-arrows {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 10px;
}
.slick-arrow {
    font-size: var(--fs-26);
    background: var(--color-highlight);
    color: var(--color-white);
    border: none;
    width: clamp(54px, 4.792vw, 92px);
    height: clamp(54px, 4.792vw, 92px);
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
/*    text-indent: -999px;*/
    position: relative;
}
.slick-arrow:after, .slick-arrow:before {
/*     content: '\f054'; */
    position: absolute;
    top: 0; right: 0; left: 0; bottom: 0;
    font-family: var(--fa-font-solid); 
    /*font-family: "Font Awesome 6 Free"; /* Or "Font Awesome 5 Free" */
    font-weight: 700;*/
}
/* .slick-prev:after { content: '\f053'; }

.slick-next:after { content: '\f054'; } */

.slick-custom-arrows .slick-arrow:hover {
    background-color: var(--color-white);
    color: var(--color-gray);
}

.slick-prev-team, .slick-next-team {
    /*background-color: var(--color-light-blue);
    color: var(--color-primary);*/
}
@media only screen and (min-width: 991px) {
    .icn-quote {
        height: 100%;
        width: clamp(80px, 7.5vw, 144px);
    }
    .testimonial-list .slick-dots {
        justify-content: flex-start;
    }
	section.testimonial .custom-dots {
		margin-bottom: 0!important;
		justify-content: flex-start;
		line-height: 1;
	}
	section.testimonial .custom-dots li {
		line-height: 1;
	}
}
/*END GENERAL*/

/*HEADER*/
.header {
    left: 0;
    right: 0;
    top: 0;
    z-index: 101;
    position: absolute;
    background: transparent;
    padding: 36px 0;
}
.header .logo {
    width: clamp(223px, 24.375vw, 468px);
    flex: 0 0 auto;
}
.header .logo img {
    width: 100%;
}
.logo:hover {
    opacity: .8;
}
.top-right-nav {
    padding: 14px calc((100% - 1328px) / 2) 20px;
}
.navigation {
}
.navigation ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.navigation ul li {
    display: inline-block;
    margin-right: 15px;
}
.navigation ul li:last-child {
    margin-right: 0;
}
.navigation ul li a {
    color: var(--color-main);
    font-family: var(--font-main);
    font-weight: 700;
    font-size: var(--fs-18);    
    position: relative;
    text-decoration: none;
    line-height: 1.2;
}
.navigation ul li a:before {
    content: '';
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    width: 0;
    border-top: solid 1px var(--color-highlight);
    margin: 0 auto; 
}
.menu-item-has-children:after {
/*    content: "\f0d7";*/
    font-family: "Font Awesome 5 Free"; 
    font-weight: 700;
    color: var(--color-main);
    display: inline-block;
    transform: scaleY(1);
    transition: transform 0.3s ease;
}
.menu-item-has-children:hover:after {
    color: var(--color-highlight);
    transform: scaleY(-1);
}
.menu-item-has-children {
    position: relative;
}
.navigation ul li a:hover {
    color: var(--color-highlight);
}
.navigation ul li.current-menu-item a:before,
.navigation ul li:hover > a:before {
/*    width: 100%;*/
    z-index: 2;
}
.navigation ul li ul.sub-menu {
    position: absolute;
    padding-top: 5px;
    transition: .15s linear;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-20px);
    z-index: 1;
    padding-top: 10px;
    z-index: 999;
}
.navigation ul li:hover > ul.sub-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0px);
}
.navigation ul li ul.sub-menu li {
    display: block;
    margin: 0;
}
.navigation ul li ul.sub-menu li a {
    display: block;
    border-bottom: none;
    text-transform: capitalize;
    padding: 5px 15px;
    transition: .3s linear;
    background: var(--color-primary);
    color: var(--color-white);
    letter-spacing: unset;
    font-size: var(--fs-16);
    line-height: 1;
    padding: 10px;
    position: relative;
    padding-right: 30px;
    border-radius: 2.5px;
    margin-bottom: 2.5px;
    width: 200px;
    font-weight: 400;
}
.navigation ul li ul.sub-menu li a:hover {
    background: var(--color-highlight);
    color: var(--color-white);
}

@media only screen and (min-width: 1400px) {
    .navigation ul li {
        margin-right: clamp(10px, 2.5vw, 48px);
    }
}
@media only screen and (max-width: 1500px) {
    .header .container {
        width: 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 1300px) {
    .header .button span { display:none; }
    .header .button.btn-phone {
        aspect-ratio: 1/1;
        padding: 10px;
        width: 47px;
    }
}
@media only screen and (max-width: 1199px) {
    .navigation { display:none; }
}
/*HEADER*/


/*FOOTER*/
.footer {
    padding-top: clamp(80px, 12.407vh, 134px);
}
.footer .d-lg-flex {
	overflow: hidden;
}
.footer, .footer span, .footer__bottom {
    font-size: var(--fs-20);
    line-height: 1.59;
    color: var(--color-primary);
}
.footer-nav ul {
    padding: 0;
    list-style-type: none;
    margin-bottom: 0;
}
.footer-nav ul li {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}
.footer-nav ul li:before {
    content: '|';
    padding: 0 8px;
    color: var(--color-primary);
}
.footer__bottom {
    padding-bottom: clamp(20px, 3.704vh, 40px);
}
.footer__bottom a, a.phone {
    color: var(--color-primary);
    font-weight: 400;
}
.social a {
    color: var(--color-primary);
    font-size: var(--fs-28);
}
.social a:last-child {
    margin-right: 0!important;
}
.footer a:hover, .footer a.color-highlight {
    color: var(--color-highlight);
}
.footer a.color-highlight:hover {
    text-decoration: underline;
}


.footer a.logo {
    display: block;
    width: clamp(200px, 27.552vw, 529px);
    margin-bottom: clamp(30px, 4.63vh, 50px);
}
.footer a.logo img {
    width: 100%;
}

@media only screen and (max-width: 992px) {
	.footer-nav ul li:first-child::before {
		display: none;
	}
}
@media only screen and (max-width: 768px) {
    .footer a.logo {
        width: 50%;
    }
    .footer__bottom a, .footer__bottom .lfs {
        font-size: 16px;
    }
    .ftop-wrapper {
        margin: 0 auto ;
    }
}
@media only screen and (max-width: 440px) {
    .footer a.logo {
        width: 100%;
    }
}

/*HOMEPAGE*/
#home-banner {
    position: relative;
    z-index: 2;
    background: transparent none no-repeat center center / cover scroll;
    height: 100vh;
    padding-bottom: clamp(150px, 26.481vh, 286px);
}
#home-banner h1 {
    max-width: 17ch;
    margin: 0 auto 33px;
	font-weight: 500;
}
#home-banner h1 span {
	display: inline-block;
}
#home-banner p {
    font-size: var(--fs-24);
    margin-bottom: clamp(25px, 3.981vh, 43px);    
}
.banner p {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .2em;
}
.banner p strong { font-weight: 600; }
.banner { position: relative;}
.vline {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    width: 2.43px;
    height: 82px;
    background: var(--color-highlight);
    z-index: 2;
    pointer-events: none;
    display: block;
    margin: 0 auto;
} 
.vline.vline-bottom {
    margin: 0 auto -40px;
}
.vline.vline-top {
    margin: -40px auto 0;
    top: 0;
    bottom: unset;
}
@media only screen and (max-width: 500px) {
    #home-banner {
        background-position: 100% 50%!important;
        padding-top: 433px;
        padding-bottom: 116px;
        height: 100%;
    }
    #home-banner .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    #home-banner h2, #home-banner .button {
        margin-left: 0;
    }
}
.page-banner {
    background: transparent none no-repeat center center / cover scroll;
    min-height: clamp(500px, 59.722vh, 645px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-top: clamp(30px, 4.63vh, 50px);
}
.page-banner:before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(360deg, rgba(255, 255, 255, 0) -88.37%, #FFFFFF 100%);
}
.page-banner h1 em {
    text-transform: lowercase;
}
.page-banner p a {
    color: var(--color-primary);
}
.page-banner p#breadcrumbs > span {
    font-size: var(--fs-24);
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 20px;
}
.page-banner p#breadcrumbs > span > span {
    display: contents;
    column-gap: 0;
}
.page-banner p#breadcrumbs > span > span:after {
    content: '';
    width: 2px;
    height: 40px;
    display: inline-block;
    background: var(--color-highlight);
}
.page-banner p#breadcrumbs > span > span.breadcrumb_last:after {
    display: none;
}

.col-team {
    margin-bottom: 35px;
}

@media only screen and (min-width: 1300px) {
    section.team {
        padding-left: clamp(30px, 8.542vw, 164px);
        padding-top: clamp(100px, 17.315vh, 187px);
        padding-bottom: clamp(100px, 17.315vh, 187px);
    }
}
@media only screen and (min-width: 992px) {
    .team-heading {
        max-width: 33ch;
        align-items: flex-start;
    }
    .team-heading .eyebrow {
        max-width: 20ch;
    }
    .team-list-wrapper {
        max-width: clamp(900px, 71.198vw, 1367px);
    }
}

section.testimonial {
    background-color: #B1D0F6!important;
    padding-bottom: clamp(150px, 20.926vh, 226px);
}
section.testimonial .testimonial-heading {
    margin-bottom: clamp(35px, 10.648vh, 115px);
}
section.testimonial .col-testimonial {
    padding-top: clamp(80px, 13.519vh, 146px);
}
strong.author, section.testimonial .slick-dots {
    margin-bottom: clamp(30px, 6.481vh, 70px);
}
.testimonial-pillar svg { width:100%; height:auto; }
body.home .testimonial-full-img {
    background: transparent url(assets/images/bg-pattern.png) no-repeat center center / cover scroll;
	padding-bottom: clamp(50px, 9.259vh, 100px);
}
.testimonial-full-img img {
    margin-top: clamp(-226px, -20.926vh, -150px);
    position: relative;
    z-index: 2;
	object-fit: cover;
	min-height: 430px;
}

@media only screen and (max-width: 768px) {
    .testimonial__icon {
        margin: 0 auto 35px;
    }
	.testimonial-full-img .container {
		padding: 0;
		width: 100%;
		object-fit: cover;
	}
}
@media only screen and (min-width: 769px) {
    .testimonial-pillar {
        max-width: clamp(400px, 36.927vw, 709px);
    }
}

section.blog-section {
    background-color: transparent!important;
}
.card-item__ft-img {
    position: relative;
    min-height: clamp(350px, 38.704vh, 418px);
}
.card-item__ft-img:after {
    content: '';
    position: absolute;
    top: 0; right: 0; left: 0; bottom: 0;
    transition: .3s ease-out;
    opacity: 0;
    background: linear-gradient(180deg, rgba(8, 28, 51, 0) 0%, rgba(8, 28, 51, 0) 39.66%, rgba(8, 28, 51, 0.3456) 67.31%, rgba(8, 28, 51, 0.72) 100%);
}
.card-item:hover .card-item__ft-img:after {
    opacity: 1;
}
.blog-item__ft-img {
    min-height: clamp(239px, 28.241vh, 305px);
}
.blog-item h3 {
    font-size: var(--fs-32);
}
.blog-item .date {
    color: #999999;
}
.blog-item .date:before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background: #999999;
    margin: 0 10px;
    display: inline-block;
}
.pa-item { background: #242424; }
.pa-item .card-item__ft-img { opacity: .68; }
.pa-item .card-item__ft-img:after { opacity:1; }
.pa-item:hover .card-item__ft-img:after { opacity: 0; }
.pa-item .eyebrow {
    font-family: var(--font-main);
    position: absolute;
    bottom: 0; right: 0; left: 0;
    text-align: center;
    margin-bottom: clamp(30px, 4.907vh, 53px);
    transition-duration: .5s;
}
.pa-item:hover .eyebrow {
    margin-bottom: clamp(60px, 16.852vh, 182px);
}


/*Single Templae*/
.main-single-template .d-flex {
    column-gap: 13.7vw;
}
.main-single-template .flex-fill h3 {
    font-size: var(--fs-26);
    font-family: var(--font-main);
    margin-bottom: 26px;
}
.left-bar,
.single-ft-img img {
    width: 100%;
    height: auto;
}
.left-bar {
    flex: 0 0 auto;
    width: 100%;
}
.left-bar .bg-light-blue ul {
	padding-left: 20px;
}
#single-bio .sidebar-menu {
/*     border-top: solid 1px rgba(0,0,0, .20); */
}
.sidebar-menu a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px 0;
    font-size: var(--fs-32);
    color: var(--color-primary);
    transition: .3s ease-out;
    border-bottom: solid 1px transparent;
}
.sidebar-attorney-menu.sidebar-menu a {
	padding: 5px 0;
	font-size: var(--fs-24);
}
.sidebar-menu a:after {
    content: url(assets/images/arrow-icon.svg);
    background: var(--color-highlight);
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1/1;
    width: clamp(40px, 2.552vw, 49px);
    height: clamp(40px, 2.552vw, 49px);
    border-radius: 100%;
	line-height: 0;
}
.sidebar-attorney-menu.sidebar-menu a:after {
	width: 25px;
    height: 25px;
}
.sidebar-menu a:hover {
    border-bottom: 1px solid rgba(0,0,0, .20);
}

@media only screen and (min-width: 992px) {
    .left-bar {
        max-width: clamp(400px, 33.438vw, 642px);
    }
}


details#accordion {
    transition: all 0.3s ease-out;
    background: #ECEAE8;
    padding: clamp(30px, 5vh, 54px) clamp(30px, 2.708vw, 52px);
}
details#accordion summary {
    position: relative;
    line-height: 1.1;
    color: var(--color-highlight);
    background: #ECEAE8;
    list-style: none;
    font-size: var(--fs-23);
    letter-spacing: .03em;
    font-weight: 600;
    padding: 0;
    text-transform: unset;
    transition-property: color, background-color, fill, transform, text-shadow, letter-spacing, outline, border, box-shadow, opacity, filter;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
}
details#accordion summary span {
    max-width: 41ch;
    display: block;
}
details#accordion[open] summary,
details#accordion:hover summary {
    color: var(--color-highlight);
    background: #ECEAE8;
}
details#accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    list-style: none;       
    -webkit-appearance: none; 
}
summary::-webkit-details-marker {
  display: none;
}
details#accordion summary:after {
    position: relative;
    padding: 0;
    display: block;
    width: 12px;
    height: 12px;
    transition-property: color, background-color, fill, transform, text-shadow, letter-spacing, outline, border, box-shadow, opacity, filter;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
}
summary:hover:after,
details[open] summary:after {
    transform: rotate(90deg);
}
details#accordion:not([open]) {
    padding: 0;
    overflow: hidden;
}
details#accordion:not([open]) summary {
    padding: clamp(30px, 5vh, 54px) clamp(30px, 2.708vw, 52px);
}
.content-block__accordion-description {
    border-top: solid 1px rgba(155, 144, 131, 0.4);
    padding-top: 16px;
    margin-top: 24px;
}

#page-blog {
    padding-top: clamp(80px, 14.815vh, 160px);
    padding-bottom: clamp(48px, 11.852vh, 128px);
}
#page-blog .container {
    max-width: 1476px;
    width: 98%;
}
.text-heading h2 {
    margin-bottom: clamp(40px, 7.407vh, 80px);

}
#page-blog .news-col {
    padding-left: 12px;
    padding-right: 12px;
}
#page-blog a:hover .img-wrapper img {
    filter: grayscale(100%);
}
#page-blog h3 {
    line-height: 1.1;
    color: var(--color-main);
    margin-bottom: 24px;
    font-size: var(--fs-23);
}
#page-blog .img-wrapper img {
    margin-bottom: 32px;
    width: 100%;
}
@media only screen and (min-width: 992px) {
    #page-blog .container {
        width: 76.875%;
    }
}

.firm-template {
    overflow: hidden;
}
.firm-template .col-auto img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.firm-template .flex-fill {
    padding-right: 30px;
    padding-left: 30px;
}
.firm-template .flex-fill h2 {
    margin-bottom: 59px;
}
.firm-template .flex-fill p strong.eyebrow {
    color: var(--color-highlight);
    margin-bottom: 11px;
}
.firm-template .flex-fill .text-content {
    padding-top: clamp(80px, 14.722vh, 159px);
    padding-bottom: clamp(60px, 9.259vh, 100px);
}
section.blurb .top-heading p {
    max-width: 35ch;
    margin-left: auto;
    margin-right: auto;
}
.blurb-item {
    opacity: 0;
    transform: translateY(30px);
}

.image-wrapper { 
    position: relative; 
    display: inline-block; 
    overflow: hidden; 
    aspect-ratio: 1/1; 
    border-radius: 100%; 
} 

.shine-overlay { 
    position: absolute; 
    top: 0; left: -150%; 
    width: 60%; 
    height: 100%; 
    background: linear-gradient( 75deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.6) 50%, rgba(255,255,255,0) 100% ); 
    transform: skewX(-20deg); 
    animation: shine 2s ease-out infinite; 
    animation-delay: 5s; 
} 
@keyframes shine { 
    0% { left: -150%; } 
    60% { left: 150%; } 
    100% { left: 150%; } 
}


.blurb-item h4 {
    line-height: 1.59;
    letter-spacing: .09em;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: var(--fs-20);
    max-width: 28ch;
    margin: 35px auto;
}
.blurb-item p {
    font-size: var(--fs-20);
}
.blurb-item__img {
    max-width: 202px;
    aspect-ratio: 1/1;
}
.pillar-icon {
    width: 100%;
    max-width: clamp(350px, 30.573vw, 587px);
    max-height: 820px;
    height: auto;
    right: -28%;
    top: 0;
    z-index: -1;
}
.pillar-icon svg {
    width: 100%;
    height: 100%;
}
.pillar-icon svg path, .pillar-icon svg rect {
    fill: #C9D6E5;
}

.ft-pillar svg {
    width: 100%;
    height: auto;
}
.ft-pillar svg path, .ft-pillar svg rect {
    fill: #D5E8FF;
}
@media only screen and (min-width: 992px) {
    .firm-template .d-lg-flex {
        column-gap: clamp(50px, 6.615vw, 127px);
    }
    .firm-template .col-auto {
        max-width: clamp(450px, 43.385vw, 833px);
    }
    #page-firm .flex-fill {
        padding-left: 0;
        padding-right: clamp(30px, 10.365vw, 199px);
    }
    #page-firm .flex-fill .text-content p {
        padding-right: clamp(50px, 10.417vw, 200px);
    }
    .blurb-item__content {
        padding: 0 clamp(10px, 1.042vw, 20px);
    }
    .ft-pillar {
        max-width: clamp(400px, 36.927vw, 709px);
    }
}


.team-item h2.h3 {
    color: var(--color-primary);
}
.team-item .img-wrapper img {
    max-height: clamp(400px, 52.5vh, 567px);
/* 	min-height: 500px; */
	min-height: clamp(400px, 52.5vh, 567px);
	
	max-height: clamp(550px, 58.333vh, 630px);
	min-height: clamp(550px, 58.333vh, 630px);
	object-fit: cover;
	object-position: top center;
}
#single-bio .bio-content h2 {
    font-size: var(--fs-48);
}
#single-bio .left-bar h2 {
    margin-bottom: 11px;
    padding-top: 19px;
}
.bio-info a {
    color: var(--color-main);
    margin-bottom: 11px;
    font-size: var(--fs-18);
}
.ft-img img, .ft-img {
    object-fit: cover;
    width: 100%;
    max-height: clamp(500px, 60.556vh, 654px);
}

@media only screen and (min-width: 992px) {
    .ft-img {
        max-width: clamp(400px, 37.292vw, 716px);
        width: 100%;
        flex: 0 0 auto;
    }
    #page-resources .flex-fill {
        max-width: clamp(400px, 37.292vw, 716px);
    }
}


#page-contact .map {
/*    flex: 0 0 auto;*/
    width: 100%;
}
#page-contact .map iframe {
    width: 100%;
    height: 100%;
    min-height: 400px;
}
#page-contact .web-info {
    padding: clamp(50px, 7.87vh, 85px) 30px;
    font-size: var(--fs-20);
    line-height: 1.59;
    flex: 0 0 auto;
}
#page-contact .web-info .button {
    margin-top: 35px;
    margin-bottom: 35px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--color-white);
}
.website-info-box {
    filter: drop-shadow(0px 0px 88px rgba(76, 76, 76, 0.25));
}

@media only screen and (min-width: 992px) {
    #page-contact .map {
        max-width: clamp(400px, 37.917vw, 728px);
    }
    #page-contact .web-info {
        padding: clamp(50px, 7.87vh, 85px) clamp(30px, 5.146vw, 118px);
    }
}
@media only screen and (max-width: 767px) {
	.map-image {
		object-fit: contain!important;
	}
}

