/* ============================================
   Illustration Styles - unDraw Integration
   ============================================ */

/* Hero illustration container */
.hero__illustration {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-6);
}

.hero__illustration img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .hero__illustration {
        order: -1;
        max-width: 400px;
        margin-inline: auto;
        padding: var(--space-4);
    }
}

/* Service card images */
.card__image {
    width: 100%;
    aspect-ratio: 4/3;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--space-4);
    padding: var(--space-4);
}

.card__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card__image--portfolio {
    padding: 0;
    border-radius: var(--radius-md);
    overflow: hidden;
    border: var(--border-width) solid var(--border);
    background-color: var(--bg-surface-elevated);
    aspect-ratio: 16 / 10;
    min-height: 220px;
}

.card__image--portfolio img {
    object-fit: cover;
}

.card--with-image {
    text-align: center;
}

/* Hero container layout */
.hero__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-12);
    align-items: center;
    max-width: 1200px;
    margin-inline: auto;
}

.hero__content {
    max-width: 100%;
}

.hero__title {
    margin-bottom: var(--space-6);
    text-align: left;
}

.hero__subtitle {
    text-align: left;
}

.hero__ctas {
    justify-content: flex-start;
}

.hero__trust {
    text-align: left;
}

@media (max-width: 768px) {
    .hero__container {
        grid-template-columns: 1fr;
        gap: var(--space-8);
    }

    .hero__content {
        text-align: center;
    }

    .hero__title {
        text-align: center;
    }

    .hero__subtitle {
        text-align: center;
    }

    .hero__ctas {
        justify-content: center;
    }

    .hero__trust {
        text-align: center;
    }
}