:root {
    /*
     * COLOR PRINCIPAL DE AVANZA IGLESIAS
     *
     * #4f46e5
     */
    --brand-rgb: 79 70 229;

    /*
     * Variante oscura
     *
     * #3730a3
     */
    --brand-dark-rgb: 55 48 163;
}


html {
    scroll-behavior: smooth;
}


body {
    overflow-x: hidden;
}


.hero-pattern {
    background-color: #f8fafc;

    background-image:
        radial-gradient(
            rgba(148, 163, 184, 0.18) 1px,
            transparent 1px
        );

    background-size: 28px 28px;
}


.soft-grid {
    background-image:
        linear-gradient(
            rgba(148, 163, 184, 0.07) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(148, 163, 184, 0.07) 1px,
            transparent 1px
        );

    background-size: 32px 32px;
}


.text-gradient {
    color: transparent;

    background:
        linear-gradient(
            90deg,
            rgb(var(--brand-rgb)),
            #2563eb
        );

    background-clip: text;

    -webkit-background-clip: text;
}


@keyframes float {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}


.floating {
    animation:
        float
        6s
        ease-in-out
        infinite;
}


details summary::-webkit-details-marker {
    display: none;
}


@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .floating {
        animation: none;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}