/*
 * Geometry spacing tune
 * Reduces excessive whitespace on desktop + mobile across static pages.
 */

@media screen {
    :root {
        --gf-pad-x: clamp(1.25rem, 4vw, 4rem);

        /* Primary section spacing (original was often 7rem top / 4.75rem bottom). */
        --gf-section-pad-top: clamp(3.5rem, 4.8vw, 5.75rem);
        --gf-section-pad-bottom: clamp(3rem, 4.2vw, 4.75rem);

        /* Secondary section spacing (original was often ~5rem). */
        --gf-section-pad-secondary: clamp(2.75rem, 4vw, 4.25rem);
        --gf-trust-pad-bottom: clamp(2.5rem, 3.6vw, 3.25rem);

        /* Hero spacing */
        --gf-hero-pad-top: clamp(2.25rem, 3.2vw, 2.75rem);
        --gf-hero-pad-bottom: clamp(2.75rem, 4vw, 3.5rem);

        /* Rhythm */
        --gf-section-header-gap: clamp(1.75rem, 3vw, 2.25rem);
        --gf-icon-gap: 1.15rem;
        --gf-grid-gap: clamp(1.25rem, 2.2vw, 1.5rem);
    }

    /* Section padding */
    .hero {
        padding: var(--gf-hero-pad-top) var(--gf-pad-x) var(--gf-hero-pad-bottom);
    }

    .services,
    .pricing,
    .reviews,
    .case-studies,
    .faqs-section,
    .legal-section {
        padding: var(--gf-section-pad-top) var(--gf-pad-x) var(--gf-section-pad-bottom);
    }

    .support-services,
    .automated-types,
    .investigations,
    .whats-included,
    .cta-section {
        padding: var(--gf-section-pad-top) var(--gf-pad-x);
    }

    .service-area {
        padding: var(--gf-section-pad-secondary) var(--gf-pad-x);
    }

    .trust-section {
        padding: var(--gf-section-pad-secondary) var(--gf-pad-x) var(--gf-trust-pad-bottom);
    }

    /* Headings and section rhythm */
    .section-header {
        margin-bottom: var(--gf-section-header-gap);
    }

    .section-actions {
        margin-top: 1.25rem;
    }

    .section-title::before {
        margin: 0 auto 0.75rem;
    }

    /* Icon-to-text spacing */
    .service-icon,
    .situation-icon,
    .case-icon,
    .step-number {
        margin: 0 auto var(--gf-icon-gap);
    }

    /* Make sections feel less sparse */
    .hero-badge {
        margin-bottom: 1.25rem;
    }

    .hero h1 {
        margin-bottom: 1.25rem;
    }

    .hero-text {
        margin-bottom: 1.6rem;
    }

    .hero-trust {
        padding-top: 1.5rem;
    }

    /* Grids */
    .services-grid,
    .auto-types-grid,
    .situations-grid,
    .pricing-tiers,
    .reviews-grid,
    .case-studies-grid,
    .steps-grid {
        gap: var(--gf-grid-gap);
    }

    .trust-grid {
        gap: clamp(1.5rem, 3vw, 2.25rem);
    }

    .reviews-grid {
        margin-top: 2.25rem;
    }

    .pricing-tiers {
        margin-bottom: 2.5rem;
    }

    .steps-grid {
        margin-top: 3rem;
    }

    .hero-situations {
        margin-top: 3rem;
    }

    .cta-steps,
    .cta-content--steps {
        margin-top: 2.5rem;
    }

    .service-area-map {
        margin-top: 2rem;
    }

    /* Cards */
    .service-card,
    .situation-card,
    .case-card {
        padding: 2.25rem;
    }
}
