/* ===================================
   BASE TYPOGRAPHY & ELEMENTS
   =================================== */

p {
    color: #000;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 2rem;
}

h1 {
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem;
    text-transform: uppercase;
}

h5 {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}
h6{
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.75rem; /* 175% */
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}
b, strong {
    font-weight: 700;
}
li {
    color: #000;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 2rem;
}

b {
    font-weight: 800;
}

hr {
    color: #FFF;
    opacity: 0.35;
    margin: 0.5rem 0;
    border-top: 2px solid;
}
/* ===================================
   NAVIGATION
   =================================== */

/* Main Navigation Container */
#main-nav {
    width: 100%;
    z-index: 1;
    padding-top: 2.62rem;
}

.page-template-home #main-nav {
    position: absolute;
    top: 0;
}

.navbar-collapse {
    flex-grow: 1;
}

.navbar-nav {
    width: auto;
    display: flex;
    align-items: center;
    margin-left: auto;
}

.navbar-nav .nav-item {
    margin-right: 6vw;
}

.navbar-nav .nav-item:last-child {
    margin-right: 0;
}

.navbar-nav .nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5rem 1rem;
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.12rem;
    text-transform: uppercase;
}

.interior-nav .nav-link {
    color: #58222C;
}

.navbar-brand {
    flex-shrink: 0;
    margin-right: 0;
}

/* Max Mega Menu - Essential styling only */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.12rem;
    text-transform: uppercase;
    padding: 0.5rem 1rem;
    margin-right: 6vw;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus {
    font-weight: 300 !important;
    text-decoration: none;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:focus {
    font-weight: 300 !important;
    text-decoration: none;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link {
    font-weight: 300 !important;
}

.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    color: #58222C;
}

.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus {
    font-weight: 300 !important;
    text-decoration: none;
}

.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:hover,
.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:focus {
    font-weight: 300 !important;
    text-decoration: none;
}

.interior-nav #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link {
    font-weight: 300 !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:last-child > a.mega-menu-link {
    margin-right: 0;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
    font-family: 'Alexandria', serif;
    font-weight: 300;
    color: #58222C;
    line-height: 3.5rem;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover{
    font-family: 'Alexandria', serif;
    font-weight: 700;
    color: #58222C;
}
.mega-sub-menu{
    box-shadow: 4px 2px 4px 2px rgba(0, 0, 0, 0.15)!important;
}
@media (max-width: 968px) {
    .mega-sub-menu{
    box-shadow: none!important;
}
}
/* ===================================
   UTILITY CLASSES
   =================================== */

.textPrimary {
    color: #58222C;
}

.textWhite {
    color: #FFF;
}

.textRed {
    color: #58222C;
}

.text-dark {
    color: #231F20;
}

.blackTxt {
    color: #000;
}

.bg-secondary {
    background-color: #F0EEEE !important;
}
/* ===================================
   HOME PAGE SECTIONS
   =================================== */

.meetAttorneys1 {
    background-size: cover;
    background-position: 50% 60%;
    padding: 160px 0;
    color: white;
    position: relative;
}   

.meetAttorneys1 h2 {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.25rem;
    text-transform: uppercase;
}

.meetAttorneys1 h1 {
    color: #FFF;
}

.meetAttorneys1 a {
    color: #FFF;
}

.home-hero {
    position: relative;
    margin-bottom: -6px;
}

.home-hero video {
    object-fit: cover;
    height: 50rem;
    width: 100%;
}

.home-hero .video-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.35) 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.video-cover .hero-text {
    color: #FFF;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.video-cover .pre-text {
    color: #FFF;
    font-family: Alexandria;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.video-cover .post-text {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.12rem;
}

.about-bg-image {
    opacity: 40%;
    position: relative;
    right: -150px;
    bottom: 4vh;
    width: 100%;
    height: auto;
}

.intro-about-section {
    padding-top: 3.5rem;
    padding-bottom: 150px;
}

.homeImage1 {
    width: 100%;
    height: auto;
    padding-top: 3.5rem;
}

.home-intro .thin {
    color: #000;
    font-family: Alexandria;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.home-intro .bold {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
    padding-bottom: 2rem;
}

.homeIntroRow {
    padding-top: 3.5rem;
}

.homeBG1 {
    width: 100%;
    height: auto;
    position: relative;
    z-index: -1;
    margin-top: -200px;
}

.redRow .col-12 {
    background-color: #58222C;
    padding: 1.5rem;
}

.redRow .red-title {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.25rem;
    text-transform: uppercase;
}

.hero-heading {
    color: #58222C;
}

.hero-subheading {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.intro-section .hero-subheading {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}
.navbar-brand img{
    width: 275px;
    height: auto;
}
.intro-section .hero-heading {
    color: #58222C;
}
.home-hero{
    position: relative;
    margin-bottom: -6px;
}

/* ===================================
   TEAM PAGE
   =================================== */

.team-page {
    padding-top: 2rem;
    padding-bottom: 80px;
}

/* Tab Navigation Styling */
.team-page .nav-pills.team-tabs {
    justify-content: center;
}

.team-page .nav-pills.team-tabs .nav-link {
    background-color: #F0EEEE;
    color: #58222C;
    border: none;
    border-radius: 0;
    padding: 15px 30px;
    font-weight: bold;
    text-transform: uppercase;
    margin-right: 5px;
}

.team-page .nav-pills.team-tabs .nav-link.active {
    background-color: #58222C;
    color: white;
}

.team-page .nav-pills.team-tabs .nav-link:hover {
    background-color: #58222C;
    color: white;
}

/* Attorney Section Styling */
.team-page .attorney-title {
    color: #58222C;
    font-weight: bold;
    font-size: 2.5rem;
    margin-bottom: 2rem;
}

.team-page .attorney-card {
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    border-radius: 0;
}

.team-page .attorney-image {
    width: 100%;
    height: 400px;
    overflow: hidden;
    position: relative;
}

.team-page .attorney-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 20%;
}

.team-page .attorney-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(88, 34, 44, 0.00) 0%, #58222C 100%);
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.team-page .attorney-name {
    color: white;
    font-size: 1.1rem;
    font-weight: bold;
    text-transform: uppercase;
    margin: 0;
    font-family: 'Alexandria';
}

.team-page .attorney-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: 10px;
}

.team-page .bio-link {
    color: white;
    text-decoration: none;
    font-size: 0.9rem;
    text-transform: uppercase;
    font-family: 'Alexandria';
}

.team-page .bio-link:hover {
    color: #f8f9fa;
    text-decoration: underline;
}

.team-page .email-link {
    color: white;
    font-size: 1.2rem;
}

.team-page .email-link:hover {
    color: #f8f9fa;
}

/* Staff Section Styling */
.team-page .staff-intro-title {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.team-page .staff-intro-content {
    color: #666;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 3rem;
    max-width: 800px;
}

.team-page .staff-section-title {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.team-page .staff-card {
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    border-radius: 0;
}

.team-page .staff-image {
    width: 100%;
    height: 400px;
    overflow: hidden;
    position: relative;
}

.team-page .staff-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 20%;
}

.team-page .staff-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(88, 34, 44, 0.00) 0%, #58222C 100%);
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.team-page .staff-name {
    color: white;
    font-size: 1.1rem;
    font-weight: bold;
    margin: 0;
    text-transform: uppercase;
}
.home-hero video {
    object-fit: cover;
    height: 50rem;
    width: 100%;
}
.home-hero .video-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.35) 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.intro-about-section{
    padding-top: 3.5rem;
    padding-bottom: 150px;
}
.video-cover .hero-text {
color: #FFF;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}
.video-cover .pre-text {
    color: #FFF;
    font-family: Alexandria;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem; /* 130% */
    text-transform: uppercase;
}
.video-cover .post-text {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.12rem;
}
/* ===================================
   BUTTONS
   =================================== */

.btn {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.btn-primary {
    font-family: Alexandria;
    display: inline-flex;
    padding: 1.375rem 1.75rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    border-radius: 0;
    background: transparent;
    border: 1px solid #FFF;
}
.btn-primary:hover{
    background-color: #58222C;
    color: #fff;
    border: 1px solid #58222C;
}
.btn-secondary {
    display: inline-flex;
    padding: 1.25rem 1.75rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    background-color: #58222C;
    border: 1px solid #58222C;
    color: #FFF;
    border-radius: 0;
}
.btn-secondary:hover{
    background-color: #3b171c;
    color: #fff;
    border: 1px solid #3b171c;
}
.btn-outline-secondary {
    display: inline-flex;
    padding: 1.25rem 1.75rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;
    background-color: transparent;
    border: 1px solid #58222C;
    color: #58222C;
    border-radius: 0;
}

.btn-outline-secondary:hover {
    background-color: #58222C;
    color: #F8F6F6;
}

.btn-cta {
    background-color: #4A1A22;
    color: #FFFFFF;
    font-family: Alexandria, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    padding: 15px 30px;
    border: none;
    text-decoration: none;
    display: inline-block;
    transition: background-color 0.3s ease;
}

.btn-cta:hover {
    background-color: #3A151A;
    color: #FFFFFF;
    text-decoration: none;
}

.read-more-btn {
    display: inline-block;
    background-color: #58222C;
    color: #FFF;
    font-family: Alexandria;
    font-size: 0.875rem;
    font-weight: 400;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0.75rem 1.5rem;
    border-radius: 0;
    align-self: flex-start;
    transition: all 0.3s ease;
}

.read-more-btn:hover {
    background-color: #4a1d24;
    color: #FFF;
    text-decoration: none;
}
.redRow .col-12{
    background-color: #58222C;
    padding: 1.5rem;
}
.redRow .red-title{
   color: #FFF;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.25rem;
    text-transform: uppercase;
}
.homeImage1{
    width: 100%;
    height: auto;
    padding-top: 3.5rem;
}
.home-intro .thin{
    color: #000;
    font-family: Alexandria;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem; /* 130% */
    text-transform: uppercase;
}
.home-intro .bold{
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
    padding-bottom: 2rem;
}
.homeIntroRow{
    padding-top: 3.5rem;
}
.homeBG1{
    width: 100%;
    height: auto;
    position: relative;
    z-index: -1;
    margin-top: -200px;
}
/* ===================================
   PRACTICE AREAS
   =================================== */

.practice-areas-text {
    background-color: #F8F6F6;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
}

.text-content {
    text-align: center;
    width: 100%;
}

.practice-areas-text .thin {
    color: #666;
    font-family: Alexandria;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 200;
    line-height: 2.5rem;
    text-transform: uppercase;
    margin-bottom: 0;
}

.practice-areas-text .bold {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.65rem;
    font-style: normal;
    font-weight: 800;
    line-height: 2.4rem;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

.practice-areas-grid {
    padding: 0;
}

.grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    height: 100%;
    gap: 0;
}

.grid-item {
    position: relative;
    overflow: hidden;
}

.practice-area-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;
}
.practice-area-link:hover{
    text-decoration: none;
    color: #fff;
}    
.practice-area-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%);
    transition: filter 0.3s ease;
    display: block;
}
.trusted-by-section .vertical-badge {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}
.practice-area-link:hover img {
    filter: grayscale(0%);
}

.practice-area-overlay {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 2;
}

.practice-area-overlay h5 {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.15rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.practice-area-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #58222C;
    opacity: 0;
    transition: opacity 0.3s ease;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 1rem;
    z-index: 3;
}

.practice-area-link:hover .practice-area-hover {
    opacity: 1;
}

.hover-content h5 {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.15rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.hover-content p {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-weight: 300;
    font-style: normal;
    line-height: 1.75rem;
    margin: 0;
    text-align: left;
}

.practice-areas-box {
    margin-left: 10vw;
    background-color: #58222C;
    padding: 80px;
    margin-top: -130px;
    position: relative;
    z-index: 1;
}

.practice-areas-box h3 {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.practice-areas-box li {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 2.5rem;
}

.practice-areas-list {
    list-style-type: none;
    padding-inline-start: 0px;
}

.main-services-section {
    background-color: #F0EEEE;
    padding-top: 100px;
    padding-bottom: 100px;
}

.main-services-section h1 {
    color: #58222C;
}

.main-services-section .blackTxt {
    margin-bottom: -10px;
}
/* Responsive adjustments */
@media (max-width: 768px) {
    .hover-content h5 {
        font-size: 0.7rem;
        line-height: normal;
}
    .hover-content p {
        color: #FFF;
        font-family: Alexandria;
        font-size: 0.7rem;
        font-weight: 300;
        font-style: normal;
        line-height: normal;
        margin: 0;
        text-align: left;
}
    .about-bg-image{
        position: relative;
        right: 0px;
        bottom: 0px;
        width: 100%;
        height: auto;
    }
    .practice-areas-text {
        padding: 1.5rem 1rem;
    }
    
    .practice-areas-text .thin {
        font-size: 1.2rem;
        line-height: 1.5rem;
    }
    
    .practice-areas-text .bold {
        font-size: 1.6rem;
        line-height: 2rem;
    }
    
    .practice-area-overlay h5 {
        font-size: 0.7rem;
        line-height: 0.9rem;
    }
    
    .grid-container {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr 1fr;
    }
}

/* ===================================
   TESTIMONIALS
   =================================== */

.testimonials-section {
    background-size: cover;
    background-position: 50% 60%;
    padding: 120px 0;
    color: white;
    position: relative;
}

.testimonials-title {
    color: #FFF;
    text-align: center;
    font-family: Alexandria;
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.75rem;
    letter-spacing: 0.1125rem;
    text-transform: uppercase;
}

.testimonials-slider-wrapper {
    max-width: 900px;
    margin: 0 auto;
}

.testimonial-content {
    text-align: center;
    padding: 40px 20px;
}

.testimonial-text p {
    color: #FFF;
    text-align: center;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.625rem;
}

.testimonial-author {
    color: #fff;
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Splide Custom Styles */
.testimonials-slider .splide__pagination {
    bottom: -40px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.testimonials-slider .splide__pagination__page {
    background: transparent;
    border: 2px solid white;
    width: 12px;
    height: 12px;
    margin: 0;
    transition: all 0.3s ease;
    border-radius: 50%;
    cursor: pointer;
}

.testimonials-slider .splide__pagination__page.is-active {
    background: white;
    transform: scale(1.2);
}

.testimonials-slider .splide__pagination__page:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: scale(1.1);
}

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

.site-footer {
    color: #FFF;
    padding: 60px 0 20px;
}

.footer-content {
    width: 100%;
}

.footer-logo {
    margin-bottom: 30px;
}

.footer-logo-img {
    max-width: 300px;
    height: auto;
}

.footer-logo .custom-logo-link {
    display: block;
}

.footer-logo .custom-logo-link img {
    max-width: 300px;
    height: auto;
    filter: brightness(0) invert(1);
}

.footer-logo-text {
    display: flex;
    flex-direction: column;
}

.footer-logo-text .logo-main {
    font-family: 'Times New Roman', serif;
    font-size: 2.5rem;
    font-weight: 700;
    color: #FFF;
    border: 2px solid #FFF;
    padding: 10px 15px;
    display: inline-block;
    margin-bottom: 5px;
}

.footer-logo-text .logo-sub {
    font-family: Alexandria, sans-serif;
    font-size: 0.9rem;
    font-weight: 300;
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.footer-copyright {
    font-family: Alexandria, sans-serif;
    font-size: 0.9rem;
    font-weight: 300;
    color: #FFF;
    margin-top: 20px;
}

.footer-location {
    margin-bottom: 30px;
}

.location-title {
    font-family: Alexandria, sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.location-info {
    font-family: Alexandria, sans-serif;
    font-size: 0.9rem;
    font-weight: 300;
    color: #FFF;
    margin-bottom: 8px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.location-info i {
    color: #FFF;
    font-size: 1rem;
    margin-top: 2px;
    flex-shrink: 0;
}

.location-info a {
    color: #FFF;
    text-decoration: none;
}

.footer-services {
    margin-bottom: 30px;
}

.services-title {
    font-family: Alexandria, sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.footer-menu {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.footer-menu li {
    margin-bottom: 8px;
}

.footer-menu a {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.12rem;
    text-decoration: none;
    text-transform: uppercase;
}

.footer-menu a:hover {
    opacity: 0.8;
}
.footer-services a i{
    color: #FFF;
    opacity: 1;
}
.social-media {
    margin-top: 20px;
}

.social-media a {
    color: #FFF;
    font-size: 1.5rem;
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.social-media a:hover {
    opacity: 0.8;
}

.footer-bottom {
    margin-top: 40px;
    padding-top: 20px;
}

.footer-bottom-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.footer-legal-links {
    font-family: Alexandria, sans-serif;
    font-size: 0.8rem;
    font-weight: 300;
    color: #FFF;
}

.footer-legal-links a {
    color: #FFF;
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.footer-legal-links a:hover {
    opacity: 0.8;
}

.footer-legal-links .separator {
    margin: 0 10px;
    opacity: 0.6;
}

#wrapper-footer {
    padding: 0; 
    background-color: #58222C;
}

.footer-content i {
    opacity: 0.25;
}

.about-cta-side2 {
    background-color: #58222C;
}
@media (max-width: 1440px) {
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
        margin-right: 2vw;
    }
}
/* Footer Responsive adjustments */
@media (max-width: 768px) {
    .site-footer {
        padding: 40px 0 20px;
    }
    
    .footer-logo-text .logo-main {
        font-size: 2rem;
    }
    
    .location-title,
    .services-title {
        font-size: 1rem;
    }
    
    .footer-bottom-content {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .footer-bottom {
        margin-top: 30px;
    }
}

/* ===================================
   AREAS OF PRACTICE TEMPLATE
   =================================== */

.area-practice-card .card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 0;
    overflow: hidden;
}

.area-practice-card .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.15) !important;
}

.area-practice-card .card-img-top {
    height: 275px;
    object-fit: cover;
    width: 100%;
    border-radius: 0;
}

.area-practice-card .card-body {
    background-color: #F0EEEE;
    padding: 1.25rem;
}

.area-title-container {
    flex-grow: 1;
}

.area-practice-card .card-title {
    color: #58222C;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.area-practice-card .card-title a:hover {
    color: #007bff !important;
}

.arrow-container {
    margin-left: 1rem;
}

.arrow-container i {
    color: #58222C;
    font-size: 1.1rem;
    transition: transform 0.3s ease;
}

.area-practice-card a:hover .arrow-container i {
    transform: translateX(3px);
}
.practice-areas-box{
    margin-left: 10vw;
    background-color: #58222C;
    padding: 80px;
    margin-top: -130px;
    position: relative;
    z-index: 1;
}
.main-services-section{
    background-color: #F0EEEE;
    padding-top:100px;
    padding-bottom: 100px;
}
.main-services-section h1{
    color: #58222C;
}
.main-services-section .blackTxt{
    margin-bottom: -10px;
}
.blackTxt{
    color: #000;
}
/* ===================================
   BADGES & COMPONENTS
   =================================== */

.badge {
    border-radius: 0;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    padding: 10px 20px;
}
.text-dark{
    color:#231F20;
}
.intro-section .hero-subheading{
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}
.intro-section .hero-heading{
    color: #58222C;
}
.textRed{
    color: #58222C;
}
.services-cta{
    background-size: cover;
    background-position: 50% 60%;
    padding: 125px 0;
    position: relative;
}
.practice-areas-box h3{
    color: #FFF;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}
.practice-areas-box li{
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 2.5rem;
}
.practice-areas-list{
    list-style-type: none;
    padding-inline-start: 0px;
}
.alumni-cta{
    background-size: cover;
    background-position: 50% 60%;
    min-height: 650px;
    position: relative;
    padding-bottom: 80px;
}
.alumni-cta .cta-heading{
    margin-bottom: 2rem;
}
.services-cta a{
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
    text-decoration: none;
}
.two-column-grey-section{
    background-color: #F0EEEE;
    padding-top: 80px;
    padding-bottom: 80px;
}

@media (max-width: 768px) {
    .area-practice-card .card-img-top {
        height: 150px;
    }
    
    .area-practice-card .card-title {
        font-size: 1rem;
    }
    #mega-menu-wrap-primary #mega-menu-primary {
    top: 73px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
    }
}

/* ===================================
   CALL TO ACTION SECTIONS
   =================================== */

.cta-section {
    padding: 80px 0;
}

.cta-visual {
    height: 100%;
}

.cta-content {
    text-align: left;
}

.cta-heading {
    color: #FFFFFF;
    font-family: Alexandria, sans-serif;
    font-size: 2.5rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
    margin-bottom: 3rem;
}

.services-cta .cta-heading {
    color: #FFF;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.cta-heading strong {
    font-weight: 700;
}

.cta-tagline {
    color: #FFFFFF;
    font-family: Alexandria, sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
    margin-bottom: 2rem;
}

.services-cta {
    background-size: cover;
    background-position: 50% 60%;
    padding: 125px 0;
    position: relative;
}

.services-cta a {
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
    text-decoration: none;
}

.alumni-cta {
    background-size: cover;
    background-position: 50% 60%;
    min-height: 650px;
    position: relative;
    padding-bottom: 80px;
}

.alumni-cta .cta-heading {
    margin-bottom: 2rem;
}
/* ===================================
   CONTACT FORM
   =================================== */

.contact-form-container {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    padding: 120px 0;
    background-blend-mode: hard-light;
}

.contact-form {
    background-color: #FFF;
    padding: 50px;
    border-radius: 0;
}

.contact-intro h1 {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.forminator-label {
    font-family: Alexandria !important;
    font-size: 1rem !important;
    font-weight: 300 !important;
    color: #231F20 !important;
}

.forminator-button-submit {
    display: block !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    color: #FFF !important;
    font-family: Alexandria !important;
    font-size: 1rem !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: normal !important;
    letter-spacing: 0.08rem !important;
    text-transform: uppercase;
}

.contact-locations {
    margin-bottom: 6rem;
}
.navbar-toggler{
    display: none;
}
/* ===================================
   RESPONSIVE DESIGN
   =================================== */

/* Practice Areas Responsive */
@media (max-width: 768px) {
    .practice-areas-text {
        padding: 1.5rem 1rem;
    }
    
    .practice-areas-text .thin {
        font-size: 1.2rem;
        line-height: 1.5rem;
    }
    
    .practice-areas-text .bold {
        font-size: 1.6rem;
        line-height: 2rem;
    }
    
    .practice-area-overlay h5 {
        font-size: 0.7rem;
        line-height: 0.9rem;
    }
    
    .grid-container {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr 1fr;
    }
}

/* Testimonials Responsive */
@media (max-width: 768px) {
    .testimonials-title {
        font-size: 2rem;
        margin-bottom: 40px;
    }

    .testimonial-text {
        font-size: 1rem;
    }

    .testimonial-author {
        font-size: 1rem;
    }
}

/* Footer Responsive */
@media (max-width: 768px) {
    .site-footer {
        padding: 40px 0 20px;
    }
    
    .footer-logo-text .logo-main {
        font-size: 2rem;
    }
    
    .location-title,
    .services-title {
        font-size: 1rem;
    }
    
    .footer-bottom-content {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .footer-bottom {
        margin-top: 30px;
    }
}

/* Areas of Practice Responsive */
@media (max-width: 768px) {
    .area-practice-card .card-img-top {
        height: 150px;
    }
    
    .area-practice-card .card-title {
        font-size: 1rem;
    }
}

/* CTA Responsive */
@media (max-width: 768px) {
    .cta-section {
        padding: 60px 0;
    }
    
    .cta-heading {
        font-size: 2rem;
    }
    
    .cta-tagline {
        font-size: 1rem;
    }
    
    .cta-content {
        text-align: center;
    }
    
    .cta-visual {
        height: 200px;
        margin-bottom: 2rem;
    }
}

/* Team Page Responsive */
@media (max-width: 768px) {
    .team-page .nav-pills.team-tabs .nav-link {
        padding: 10px 15px;
        font-size: 0.9rem;
    }
    
    .team-page .attorney-title,
    .team-page .staff-section-title {
        font-size: 2rem;
    }
    
    .team-page .staff-intro-title {
        font-size: 1.5rem;
    }
    
    .team-page .attorney-links,
    .team-page .staff-info {
        flex-direction: column;
        gap: 10px;
    }
}

/* Staff Page Responsive */
@media (max-width: 992px) {
    .staff_page .staff-content {
        padding-right: 0;
        margin-bottom: 2rem;
    }
    
    .staff_page .attorney-name {
        font-size: 2rem;
        line-height: 2.5rem;
    }
    
    .staff_page .attorney-portrait-container {
        height: 400px;
    }
}

@media (max-width: 768px) {
    .staff_page .attorney-name {
        font-size: 1.75rem;
        line-height: 2.25rem;
    }
    
    .staff_page .attorney-portrait-container {
        height: 350px;
    }
}

/* Blog Single Responsive */
@media (max-width: 1024px) {
    .blog-hero-content {
        padding: 2rem 0 2rem 2rem;
    }
    
    .blog-hero-image {
        height: 350px;
    }
    
    .blog-single-container {
        gap: 2rem;
    }
    
    .blog-single-title {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .blog-hero-section {
        min-height: auto;
    }
    
    .blog-hero-content {
        max-width: 100%;
        position: relative;
        z-index: 2;
    }
    
    .blog-hero-image {
        position: relative;
        width: 100%;
        height: 300px;
        margin-top: 2rem;
    }
    
    .blog-single-container {
        flex-direction: column;
        gap: 2rem;
    }
    
    .blog-single-content,
    .blog-single-sidebar {
        max-width: 100%;
    }
    
    .blog-single-title {
        font-size: 1.75rem;
    }
    
    .social-share-icons {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .blog-hero-container {
        padding: 1rem 0;
    }
    
    .blog-single-container {
        padding: 1rem 0;
    }
    
    .blog-single-title {
        font-size: 1.5rem;
    }
    
    .blog-single-body {
        font-size: 0.9rem;
    }
    
    .social-share-icons {
        gap: 0.75rem;
    }
    
    .social-icon {
        width: 35px;
        height: 35px;
    }
}

/* Trusted By Responsive */
@media (max-width: 768px) {
    .trusted-by-container {
        flex-direction: column;
        text-align: center;
    }
    
    .trusted-by-slider-container {
        padding: 0 1rem;
    }
    
    .trusted-by-slider .splide__arrow--prev {
        left: 0;
    }
    
    .trusted-by-slider .splide__arrow--next {
        right: 0;
    }
}

@media (max-width: 480px) {
    .trusted-by-section {
        padding: 2rem 0;
    }
    
    .trusted-by-slider .splide__arrow--prev {
        left: 0;
    }
    
    .trusted-by-slider .splide__arrow--next {
        right: 0;
    }
}

/* Blog Archive Responsive */
@media (max-width: 992px) {
    .blog-category-tabs {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    
    .nav-tab {
        padding: 0.75rem 1rem;
        font-size: 0.8rem;
    }
    
    .news-article {
        flex-direction: column;
        gap: 1rem;
    }
    
    .article-image {
        flex: none;
        height: 250px;
    }
    
    .blog-sidebar {
        padding-left: 0;
        margin-top: 2rem;
    }
}

@media (max-width: 768px) {
    .blog-title {
        font-size: 2rem;
        line-height: 2.5rem;
    }
    
    .blog-category-tabs {
        flex-direction: column;
        align-items: center;
    }
    
    .nav-tab {
        width: 100%;
        max-width: 300px;
        text-align: center;
    }
    
    .article-title a {
        font-size: 1.1rem;
    }
}

@media (max-width: 480px) {
    .blog-title {
        font-size: 1.75rem;
        line-height: 2.25rem;
    }
    
    .news-article {
        padding: 1rem;
    }
    
    .article-image {
        height: 200px;
    }
    
    .read-more-btn {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
    }
}

/* ===================================
   CONTACT PAGE LOCATION CARDS
   =================================== */

.location-details .contact-info {
    line-height: 2rem !important;
}

.contact-page .location-card {
    background-color: #F0EEEE;
    border: none;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 2rem;
    overflow: hidden;
    height: 100%;
}

.contact-page .location-image {
    height: 400px;
    overflow: hidden;
}

.contact-page .location-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contact-page .location-info {
    background-color: #F0EEEE;
    padding: 3.5rem;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.contact-page .location-title {
    color: #58222C;
    font-family: Alexandria;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.contact-page .location-details p {
    margin-bottom: 0.5rem;
    font-family: Alexandria;
    font-size: 0.9rem;
    line-height: 1.4;
    color: #333333;
}

.contact-page .location-details strong {
    color: #333333;
    font-weight: 600;
}

.contact-page .location-info .btn {
    background-color: #FFF;
    border: none;
    color: #58222C;
    font-weight: 600;
    text-transform: uppercase;
    margin-top: auto;
}

.contact-page .location-info .btn i {
    color: #58222C;
}

.contact-page .location-info .btn:hover i {
    color: #FFF;
}

.contact-page .location-info .btn:hover {
    background-color: #58222C;
    color: #Fff;
}
.forminator-label{
    font-family: Alexandria !important;
    font-size: 1rem !important;
    font-weight: 300 !important;
    color: #231F20 !important;
}
.contact-locations{
    margin-bottom: 6rem;
}
.forminator-button-submit { /* Replace with your actual button selector */
        display: block !important   ;
        margin-left: auto !important; /* Pushes the button to the right */
        margin-right: 0 !important;
        color: #FFF !important;
        font-family: Alexandria !important;
        font-size: 1rem !important;
        font-style: normal !important;
        font-weight: 700 !important;
        line-height: normal !important;
        letter-spacing: 0.08rem !important;
        text-transform: uppercase;
        
    }

/* ===================================
   TRUSTED BY SECTION
   =================================== */

.trusted-by-section {
    padding: 7rem 0;
    background-color: #FFF;
    position: relative;
}

.trusted-by-container {
    display: flex;
    align-items: center;
    position: relative;
    min-height: 120px;
}

.trusted-by-slider-container {
    flex: 1;
    padding: 0 2rem;
    max-width: 100%;
    overflow: hidden;
}

.trusted-by-slider {
    width: 100%;
}

.trusted-by-slider .splide__track {
    overflow: hidden;
}

.trusted-by-slider .splide__list {
    align-items: center;
}

.trusted-by-slider .splide__slide {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 120px;
}

.company-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    max-width: 200px;
}

.company-logo img {
    max-height: 120px;
    max-width: 100%;
    object-fit: contain;
}

/* Splide Arrow Customization */
.trusted-by-slider .splide__arrow {
    background: transparent;
    border: none;
    color: #231F20;
    opacity: 1;
    width: 40px;
    height: 40px;
    transform: none;
}

.trusted-by-slider .splide__arrow:hover {
    background: transparent;
    color: #58222C;
}

.trusted-by-slider .splide__arrow svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

.trusted-by-slider .splide__arrow--prev {
    left: 0;
}

.trusted-by-slider .splide__arrow--next {
    right: 0;
}

/* ===================================
   BLOG SINGLE POST
   =================================== */

.blog-single-post {
    margin-bottom: 60px;
    padding: 0;
}

/* Hero Section with Title and Image Side by Side - Full Width */
.blog-hero-section {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-bottom: 3rem;
    position: relative;
    min-height: 500px;
    z-index: -1;
}

.blog-hero-content {
    position: relative;
    z-index: 2;
    padding-left: 15px;
    max-width: 40%;
    padding-right: 4rem;
    height: 500px;
}

.blog-hero-top {
    /* No flexbox here - keeps badge normal */
}

.blog-single-tagline {
    position: absolute;
    bottom: 0;
    left: 15px;
    right: 4rem;
}

.blog-hero-image {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 500px;
    z-index: 1;
}

.blog-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.blog-single-container {
    display: flex;
    gap: 4rem;
}

/* Left Column - Main Content */
.blog-single-content {
    flex: 2;
    max-width: 75%;
}

.blog-category-tag {
    display: inline-block;
    background-color: #f5f5f5;
    color: #333;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 0.5rem 1rem;
    margin-bottom: 1.5rem;
    align-self: flex-start;
}

.blog-single-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #58222C;
    line-height: 1.2;
    margin: 0 0 1rem 0;
    text-transform: uppercase;
    word-wrap: break-word;
    letter-spacing: -0.5px;
}

.blog-single-date h2 {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.blog-single-tagline h5 {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
}

.blog-single-subtitle {
    font-size: 1.25rem;
    font-weight: 700;
    color: #333;
    text-transform: uppercase;
    margin-bottom: 2rem;
    line-height: 1.3;
}

.blog-single-body {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    margin-bottom: 3rem;
}

.blog-single-body p {
    margin-bottom: 1.5rem;
}
.staff-content h5{
    margin-top: 2rem;
}
/* Social Share Section */
.blog-social-share {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid #e0e0e0;
}

.social-share-title {
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.social-share-icons {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #58222C;
    text-decoration: none;
}

.social-icon:hover {
    color: #333;
}

.social-icon i {
    font-size: 1.5rem;
}

/* Right Column - Sidebar */
.blog-single-sidebar {
    flex: 1;
    max-width: 25%;
}

/* Search Widget */
.blog-search-widget {
    margin-bottom: 2rem;
}

.blog-search-form {
    position: relative;
    display: flex;
    align-items: center;
}

.blog-search-input {
    width: 100%;
    padding: 0.75rem 1rem 0.75rem 2.5rem;
    border: 1px solid #e0e0e0;
    font-size: 0.9rem;
    color: #666;
    background-color: #f9f9f9;
    box-sizing: border-box;
}

.blog-search-input::placeholder {
    color: #999;
}

.blog-search-button {
    position: absolute;
    left: 0.75rem;
    background: none;
    border: none;
    color: #999;
    cursor: pointer;
    padding: 0;
}

.blog-search-button:hover {
    color: #58222C;
}

/* Categories Widget */
.blog-categories-widget {
    margin-bottom: 2rem;
}

.widget-title {
    font-size: 1rem;
    font-weight: 700;
    color: #58222C;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.blog-categories-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.blog-categories-list li {
    margin-bottom: 0.5rem;
}

.blog-categories-list a {
    font-size: 0.9rem;
    color: #58222C;
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-categories-list a:hover {
    color: #333;
}

/* Archive Widget */
.blog-archive-widget {
    margin-bottom: 2rem;
}

.blog-archive-select {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    font-size: 0.9rem;
    color: #666;
    background-color: #f9f9f9;
    cursor: pointer;
    box-sizing: border-box;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 1rem;
    padding-right: 2.5rem;
}

.blog-archive-select:focus {
    outline: none;
    border-color: #58222C;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .blog-hero-content {
        padding: 2rem 0 2rem 2rem;
    }
    
    .blog-hero-image {
        height: 350px;
    }
    
    .blog-single-container {
        gap: 2rem;
    }
    
    .blog-single-title {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .blog-hero-section {
        min-height: auto;
    }
    
    .blog-hero-content {
        max-width: 100%;
        position: relative;
        z-index: 2;
    }
    
    .blog-hero-image {
        position: relative;
        width: 100%;
        height: 300px;
        margin-top: 2rem;
    }
    
    .blog-single-container {
        flex-direction: column;
        gap: 2rem;
    }
    
    .blog-single-content,
    .blog-single-sidebar {
        max-width: 100%;
    }
    
    .blog-single-title {
        font-size: 1.75rem;
    }
    
    .social-share-icons {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .blog-hero-container {
        padding: 1rem 0;
    }
    
    .blog-single-container {
        padding: 1rem 0;
    }
    
    .blog-single-title {
        font-size: 1.5rem;
    }
    
    .blog-single-body {
        font-size: 0.9rem;
    }
    
    .social-share-icons {
        gap: 0.75rem;
    }
    
    .social-icon {
        width: 35px;
        height: 35px;
    }
}

/* Responsive Design */
@media (max-width: 768px) {
    .trusted-by-container {
        flex-direction: column;
        text-align: center;
    }
    
    .trusted-by-slider-container {
        padding: 0 1rem;
    }
    
    .trusted-by-slider .splide__arrow--prev {
        left: 0;
    }
    
    .trusted-by-slider .splide__arrow--next {
        right: 0;
    }
}

@media (max-width: 480px) {
    .trusted-by-section {
        padding: 2rem 0;
    }
    
    .trusted-by-slider .splide__arrow--prev {
        left: 0;
    }
    
    .trusted-by-slider .splide__arrow--next {
        right: 0;
    }
}

/* ===================================
   BLOG ARCHIVE PAGE
   =================================== */

#blog-archive-wrapper {
    padding: 3rem 0;
    background-color: #FFF;
}

.blog-header {
    margin-bottom: 3rem;
}

.blog-title {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.blog-category-tabs {
    display: flex;
    gap: 1rem;
    margin-top: 2rem;
}

.nav-tab {
    display: inline-block;
    padding: 1rem 1.5rem;
    background-color: #F5F5F5;
    color: #58222C;
    text-decoration: none;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
    border: none;
    border-radius: 0;
    transition: all 0.3s ease;
}

.nav-tab:hover {
    background-color: #58222C;
    color: #FFF;
    text-decoration: none;
}

.nav-tab.active {
    background-color: #58222C;
    color: #FFF;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.blog-content-area {
    margin-top: 3rem;
}

.news-articles {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.news-article {
    background-color: #F8F8F8;
    border-radius: 0;
    margin-bottom: 2rem;
}

.news-article .row {
    align-items: stretch;
}

.news-article .col-md-4 {
    display: flex;
}

.article-image {
    height: 100%;
    overflow: hidden;
}

.article-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

.article-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 3rem;
}

.article-title {
    margin: 0 0 0.5rem 0;
}

.article-title a {
    color: #58222C;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    line-height: 1.4;
}

.article-title a:hover {
    color: #58222C;
    text-decoration: none;
}

.article-date {
    color: #231F20;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    margin-bottom: 2rem;
}

.article-excerpt {
    color: #000;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.75rem;
}

.blog-pagination {
    text-align: center;
    margin-top: 3rem;
}

.blog-pagination .page-numbers {
    display: inline-block;
    padding: 0.5rem 1rem;
    margin: 0 0.25rem;
    color: #666;
    font-family: Alexandria;
    font-size: 0.875rem;
    text-decoration: none;
    border: 1px solid #E0E0E0;
    border-radius: 0;
    transition: all 0.3s ease;
}

.blog-pagination .page-numbers:hover,
.blog-pagination .page-numbers.current {
    background-color: #58222C;
    color: #FFF;
    border-color: #58222C;
}

.blog-sidebar {
    padding-left: 2rem;
}

.search-blog {
    margin-bottom: 2rem;
}

.search-input-wrapper {
    position: relative;
    background-color: #F8F8F8;
    border-radius: 0;
    overflow: hidden;
}

.search-icon {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #666;
    font-size: 0.875rem;
}

.search-input-wrapper input[type="search"] {
    width: 100%;
    padding: 1rem 1rem 1rem 2.5rem;
    border: none;
    background-color: transparent;
    font-family: Alexandria;
    font-size: 0.875rem;
    color: #666;
}

.search-input-wrapper input[type="search"]::placeholder {
    color: #999;
}

.search-input-wrapper input[type="search"]:focus {
    outline: none;
}

.news-archive h3 {
    color: #58222C;
    font-family: Alexandria;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.archive-dropdown {
    width: 100%;
    padding: 1rem;
    background-color: #F8F8F8;
    border: none;
    border-radius: 0;
    font-family: Alexandria;
    font-size: 0.875rem;
    color: #666;
    cursor: pointer;
}

.archive-dropdown:focus {
    outline: none;
}

/* Responsive Design for Blog Archive */
@media (max-width: 992px) {
    .blog-category-tabs {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    
    .nav-tab {
        padding: 0.75rem 1rem;
        font-size: 0.8rem;
    }
    
    .news-article {
        flex-direction: column;
        gap: 1rem;
    }
    
    .article-image {
        flex: none;
        height: 250px;
    }
    
    .blog-sidebar {
        padding-left: 0;
        margin-top: 2rem;
    }
}

@media (max-width: 768px) {
    .blog-title {
        font-size: 2rem;
        line-height: 2.5rem;
    }
    
    .blog-category-tabs {
        flex-direction: column;
        align-items: center;
    }
    
    .nav-tab {
        width: 100%;
        max-width: 300px;
        text-align: center;
    }
    
    .article-title a {
        font-size: 1.1rem;
    }
}

@media (max-width: 480px) {
    .blog-title {
        font-size: 1.75rem;
        line-height: 2.25rem;
    }
    
    .news-article {
        padding: 1rem;
    }
    
    .article-image {
        height: 200px;
    }
    
    .read-more-btn {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
    }
}

/* ===================================
   STAFF PAGE TEMPLATE
   =================================== */

.staff_page {
    background-color: #FFF;
    padding: 3rem 0;
}

.staff_page .staff-content {
    padding-right: 2rem;
}

/* Attorney Header */
.staff_page .attorney-header {
    margin-bottom: 2rem;
}

.staff_page .attorney-name {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 3.25rem;
    text-transform: uppercase;
}

.staff_page .attorney-title {
    color: #58222C;
    font-family: Alexandria;
    font-size: 2.75rem;
    font-style: normal;
    font-weight: 200;
    line-height: 3.25rem;
    text-transform: uppercase;
}

/* Contact Information */
.staff_page .contact-info {
    margin-bottom: 3rem;
}

.staff_page .email-container {
    display: inline-flex;
    align-items: center;
    background-color: #F5F5F5;
    padding: 0.75rem 1rem;
    color: #231F20;
    font-family: Alexandria;
    font-size: 0.875rem;
    font-weight: 500;
}

.staff_page .email-container i {
    color: #231F20;
    margin-right: 0.5rem;
}

.email-container .email-text {
    color: #58222C;
    font-family: Alexandria;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.75rem;
    letter-spacing: 0.16rem;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-transform: uppercase;
}

/* Attorney Visual */
.staff_page .attorney-visual {
    position: relative;
}

.staff_page .attorney-portrait-container {
    position: relative;
    width: 100%;
    height: 750px;
    overflow: hidden;
}

.staff_page .attorney-portrait {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

/* Staff Practice Areas Box */
.staff_page .practice-areas-box {
    background-color: #58222C;
    padding: 80px;
    margin-top: -130px;
    position: relative;
    z-index: 1;
}
.hero-image-container img{
    height: 600px;
    width: auto;
    object-fit: cover;
}

/* Vertical Badge for Logo Slider */
.logo-slider-section {
    position: relative;
    padding-top: 120px;
    padding-bottom: 120px;
}

.vertical-badge {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.vertical-badge .badge {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
    white-space: nowrap;
    color: #58222C!important;
    font-family: Alexandria;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    letter-spacing: 0.225rem;
    text-transform: uppercase;
}

.logo-slider-content {
    margin-left: 60px;
    width: calc(100% - 60px);
}

/* Mobile menu styling - keep red color */
@media only screen and (max-width: 768px) {
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
        color: #58222C !important;
        font-weight: 300 !important;
    }
    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus {
        color: #58222C !important;
        font-weight: 300 !important;
        text-decoration: none;
    }
    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link {
        color: #58222C !important;
        font-weight: 300 !important;
    }
    
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:hover,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link:focus {
        color: #58222C !important;
        font-weight: 300 !important;
        text-decoration: none;
    }
}

