/* Phase 2: Design Elevation & Polish */

/* 1. Typography Polish */
/* Ensure Assistant is used for all headings if not already inherited */
h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
    font-family: "Assistant", sans-serif !important;
}

/* Letter Spacing for uppercase or prominence */
h1,
h2,
.elementor-heading-title {
    letter-spacing: 0.5px;
}

/* Hierarchy Refinement */
h1 {
    font-weight: 700;
}

h2 {
    font-weight: 600;
    color: var(--law-blue, #0B2B5B);
}

/* 2. Micro-Interactions */

/* Service Cards (Icon Box) */
.elementor-widget-icon-box .elementor-widget-container {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 8px;
    /* Optional: adds subtle rounding if not present */
}

.elementor-widget-icon-box:hover .elementor-widget-container {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* Buttons */
.elementor-button {
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.elementor-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(11, 43, 91, 0.2);
}

.elementor-button .elementor-button-icon {
    transition: transform 0.3s ease;
}

.elementor-button:hover .elementor-button-icon {
    transform: translateX(-5px);
    /* Move left for RTL */
}

/* Menu Underline Effect */
.elementor-nav-menu--main .elementor-item {
    position: relative;
}

.elementor-nav-menu--main .elementor-item::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--law-blue, #0B2B5B);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.3s ease;
}

.elementor-nav-menu--main .elementor-item:hover::after {
    transform: scaleX(1);
    transform-origin: left;
}

/* 3. Visual Polish */

/* Overlays for Background Images */
/* Apply a dark blue gradient overlay to sections with background images that have an overlay div */
.elementor-background-overlay {
    background: linear-gradient(180deg, rgba(11, 43, 91, 0.4) 0%, rgba(11, 43, 91, 0.8) 100%) !important;
    opacity: 0.8 !important;
    /* Adjust based on preference */
}

/* Icons - Thinner look */
.elementor-icon svg,
.elementor-icon-list-icon svg {
    stroke-width: 1.5px;
}

.elementor-icon i,
.elementor-icon-list-icon i {
    font-weight: 300 !important;
    /* Attempt to use lighter weight of fontawesome if available */
}

/* Footer Links Polish */
.site-footer a {
    opacity: 0.8;
    transition: opacity 0.3s ease, color 0.3s ease;
}

.site-footer a:hover {
    opacity: 1;
    color: #ffffff !important;
    /* Ensure white on dark footer */
}

/* Utility classes referenced in plan */
.hover-lift {
    transition: transform 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
}