/* ==========================================================================
   HOME PAGE — Zeta IT Consulting
   Page-specific styles for the home page sections.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. HERO SECTION
   -------------------------------------------------------------------------- */

.hero-canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.hero-content {
    position: relative;
    z-index: var(--z-base);
    max-width: 44rem;
}

.hero-badge {
    margin-bottom: var(--space-6);
}

.hero-headline {
    font-size: var(--text-6xl);
    font-weight: 700;
    line-height: var(--leading-tight);
    letter-spacing: var(--tracking-tight);
    margin-bottom: var(--space-6);
}

.hero-tagline {
    font-size: var(--text-xl);
    color: var(--color-text-muted);
    line-height: var(--leading-normal);
    max-width: 36rem;
    margin-bottom: var(--space-8);
}

.hero-actions {
    display: flex;
    gap: var(--space-4);
    flex-wrap: nowrap;
}


/* --------------------------------------------------------------------------
   2. HERO WORD ANIMATION
   -------------------------------------------------------------------------- */

.hero-word {
    display: inline-block;
}

.hero-headline .gradient-text {
    /* Ensure gradient renders on inline-block word spans */
    display: inline;
}

.hero-headline .gradient-text .hero-word {
    background: var(--gradient-accent);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* --------------------------------------------------------------------------
   3. SERVICES OVERVIEW SECTION
   -------------------------------------------------------------------------- */

#services-overview .section-header {
    margin-bottom: var(--space-12);
}

#services-overview .section-header .badge {
    margin-bottom: var(--space-4);
}

#services-overview .section-header p {
    color: var(--color-text-muted);
    margin-top: var(--space-4);
}

#services-overview .card {
    text-align: center;
    padding: var(--space-8) var(--space-6);
}

#services-overview .card-icon {
    margin-inline: auto;
}

#services-overview .card-icon svg {
    width: 1.5rem;
    height: 1.5rem;
}

.services-cta {
    margin-top: var(--space-12);
}

/* Center the incomplete last row (5 items in a 3-col grid).
   Flexbox with justify-content: center naturally centers the last row,
   unlike CSS Grid which always fills columns left-to-right. */
@media (min-width: 64em) {
    #services-overview .grid-3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    #services-overview .grid-3 > * {
        width: calc((100% - var(--space-6) * 2) / 3);
    }
}


/* --------------------------------------------------------------------------
   4. CREDIBILITY / STATS STRIP
   -------------------------------------------------------------------------- */

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-8);
    text-align: center;
}

@media (max-width: 48em) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--space-6);
    }
}

@media (max-width: 30em) {
    .stats-grid {
        grid-template-columns: 1fr;
    }
}


/* --------------------------------------------------------------------------
   5. RESPONSIVE — ALL HOME SECTIONS
   -------------------------------------------------------------------------- */

/* --- Tablet (< 48em / 768px) --- */
@media (max-width: 48em) {
    #services-overview .section-header {
        margin-bottom: var(--space-8);
    }
}

/* --- Mobile (< 40em / 640px) --- */
@media (max-width: 40em) {
    /* Hero */
    .hero-headline {
        font-size: var(--text-5xl);
    }

    .hero-tagline {
        font-size: var(--text-lg);
    }

    .hero-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-actions .btn {
        justify-content: center;
    }

    /* Services */
    #services-overview .card {
        padding: var(--space-6) var(--space-4);
    }

    .services-cta {
        margin-top: var(--space-8);
    }
}
