/**
 * A2Z Services Widget Styles
 */

/* Main Container */
.a2z-services-container {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
    /* Added spacing under the widget */
    padding: 20px 30px;
    /* Reduced side padding to 30px */
    box-sizing: border-box;
}

/* Services Grid/Flexbox Layout */
.a2z-services-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    /* 6 columns (one line) for large desktop */
    justify-content: center;
    gap: 40px;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

/* Tablet/Desktop (3 columns, 2 rows) */
@media (max-width: 1440px) {
    .a2z-services-grid {
        grid-template-columns: repeat(3, 1fr);
        max-width: 1000px;
    }
}

/* Service Item */
.a2z-services-item-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.a2z-services-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
}

/* Circular Icon Wrapper */
.a2z-services-icon-wrapper {
    width: 130px;
    /* Reduced to 130px */
    height: 130px;
    /* Reduced to 130px */
    background-color: #f5f5f5;
    /* Light grey background */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
    overflow: hidden;
    /* Ensure image doesn't overflow the circle */
}

.a2z-services-icon-wrapper img {
    width: 100%;
    /* Fill width */
    height: 100%;
    /* Fill height */
    object-fit: cover;
    /* Maintain aspect ratio and fill */
    display: block;
    border-radius: 50%;
    /* Ensure image is also a circle */
}

/* Service Title with Underline Animation */
.a2z-services-title {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    /* Increased from 14px */
    font-weight: 600;
    /* Slightly bolder for larger scale */
    color: #1a1a1a;
    position: relative;
    padding-bottom: 2px;
    margin: 0;
}

/* Underline Animation (matches What We Do style) */
.a2z-services-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #1a1a1a;
    transition: width 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Hover Effects */
.a2z-services-item-link:hover .a2z-services-title::after {
    width: 100%;
}

/* Removed hover jump (translateY) as requested */

/* Mobile Responsiveness */
@media (max-width: 767px) {
    .a2z-services-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 35px;
        /* Spaced out 35px gap */
    }

    .a2z-services-item {
        width: 100%;
    }

    .a2z-services-icon-wrapper {
        width: 110px;
        /* Large 110px icons */
        height: 110px;
        /* Large 110px icons */
    }

    .a2z-services-title {
        font-size: 15px;
        /* Updated to 15px as requested */
    }
}

/* Initial Hidden State for Entrance Animation */
.a2z-services-hidden {
    opacity: 0 !important;
    visibility: hidden !important;
}