.wp-block-dynamic-practice-areas {
    margin: 1.5em 0;
}

.practice-areas-block-title {
    margin-bottom: 1em;
    font-size: 1.2em;
    line-height: 1.4;
}

.dynamic-practice-areas-widget ul.practice-areas-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dynamic-practice-areas-widget ul.practice-areas-list li {
    margin-bottom: 0;
    padding-left: 0;
}

.dynamic-practice-areas-widget ul.practice-areas-list li a {
    display: block;
    padding: 5px 0;
    text-decoration: none;
    transition: all 0.3s ease;
}

.dynamic-practice-areas-widget ul.practice-areas-list li a:hover {
    padding-left: 5px;
}

.dynamic-practice-areas-widget .select-city-message,
.dynamic-practice-areas-widget .loading,
.dynamic-practice-areas-widget .no-practice-areas {
    color: #666;
    font-style: italic;
}

/* Widget titles styling */
.widget_dynamic_practice_areas_widget .widget-title,
.widget_dynamic_related_locations_widget .widget-title,
.practice-areas-title,
.related-locations-title {
    position: relative;
    display: block;
    margin-bottom: 15px;
    line-height: 1.4;
}

/* Ensure customized widget titles appear properly */
.practice-areas-title[style],
.related-locations-title[style] {
    display: block;
}

/* dynamic-related-locations.css */

.elementor-dynamic-related-locations {
    margin: 1.5em 0;
}

.related-locations-title {
    margin-bottom: 1em;
    font-size: 1.2em;
    line-height: 1.4;
}

.dynamic-related-locations-widget ul.related-locations-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dynamic-related-locations-widget ul.related-locations-list li {
    margin-bottom: 0;
    padding-left: 0;
}

.dynamic-related-locations-widget ul.related-locations-list li a {
    display: block;
    padding: 5px 0;
    text-decoration: none;
    transition: all 0.3s ease;
}

.dynamic-related-locations-widget ul.related-locations-list li a:hover {
    padding-left: 5px;
}

.dynamic-related-locations-widget .loading,
.dynamic-related-locations-widget .no-related-locations,
.dynamic-related-locations-widget .error {
    color: #666;
}

/* Add any additional styles needed for display_text and anchor_text formatting */
.dynamic-related-locations-widget ul.related-locations-list li a.using-anchor-text {
}
/* Title Center Align */
.practice-areas-title {
    text-align: center;
}

/* Vertical layout (default) */
.practice-areas-layout-vertical .practice-areas-list {
    display: block;
    text-align: left;
}
.practice-areas-layout-vertical .practice-areas-list li {
    display: block;
    margin-bottom: 8px;
}
.practice-areas-layout-vertical .practice-areas-list li a {
    font-size: 17px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
}

/* Horizontal layout - Responsive grid */
.practice-areas-layout-horizontal .practice-areas-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Desktop - 3 columns */
    justify-items: center;
    gap: 10px;
    padding: 0;
    margin: 0 auto;
    list-style: none;
    text-align: center;
}
.practice-areas-layout-horizontal .practice-areas-list li {
    width: 100%;
}

/* HR line only in horizontal layout */
.practice-areas-layout-horizontal .practice-areas-title {
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 20px;
}
.practice-areas-layout-horizontal .practice-areas-title::after {
    content: "";
    display: block;
    width: 80%;       /* shorter than title width for nice look */
    height: 2px;
    background: #E3B934;
    margin: 10px auto 0; /* center align */
    border-radius: 2px;
}

/* Responsive Breakpoints */
@media (max-width: 992px) {
    .practice-areas-layout-horizontal .practice-areas-list {
        grid-template-columns: repeat(2, 1fr); /* Tablet - 2 columns */
    }
}

@media (max-width: 600px) {
    .practice-areas-layout-horizontal .practice-areas-list {
        grid-template-columns: 1fr; /* Mobile - 1 column */
    }
}


