/* Full Tailwind CSS - Load after critical render */
@import url('/assets/css/landing-critical.min.css');

/* Additional utility classes */
.grid {
    display: grid
}

.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr))
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

.gap-2 {
    gap: .5rem
}

.gap-3 {
    gap: .75rem
}

.gap-6 {
    gap: 1.5rem
}

.gap-8 {
    gap: 2rem
}

.gap-12 {
    gap: 3rem
}

.space-y-2>*+* {
    margin-top: .5rem
}

.space-y-6>*+* {
    margin-top: 1.5rem
}

.text-sm {
    font-size: .875rem;
    line-height: 1.25rem
}

.text-base {
    font-size: 1rem;
    line-height: 1.5rem
}

.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem
}

.text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem
}

.text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem
}

.text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem
}

.leading-relaxed {
    line-height: 1.625
}

.font-medium {
    font-weight: 500
}

.font-semibold {
    font-weight: 600
}

.text-slate-600 {
    color: #475569
}

.text-slate-700 {
    color: #334155
}

.text-slate-500 {
    color: #64748b
}

.text-brand-600 {
    color: #2563eb
}

.text-green-600 {
    color: #16a34a
}

.text-purple-600 {
    color: #9333ea
}

.bg-slate-50 {
    background-color: #f8fafc
}

.bg-slate-900 {
    background-color: #0f172a
}

.bg-brand-600 {
    background-color: #2563eb
}

.bg-purple-600 {
    background-color: #9333ea
}

.bg-green-500 {
    background-color: #22c55e
}

.bg-green-600 {
    background-color: #16a34a
}

.bg-red-600 {
    background-color: #dc2626
}

.bg-cyan-600 {
    background-color: #0891b2
}

.bg-indigo-50 {
    background-color: #eef2ff
}

.border {
    border-width: 1px
}

.border-slate-100 {
    border-color: #f1f5f9
}

.border-brand-200 {
    border-color: #bfdbfe
}

.rounded-xl {
    border-radius: .75rem
}

.rounded-2xl {
    border-radius: 1rem
}

.rounded-3xl {
    border-radius: 1.5rem
}

.rounded-full {
    border-radius: 9999px
}

.p-3 {
    padding: .75rem
}

.p-4 {
    padding: 1rem
}

.p-6 {
    padding: 1.5rem
}

.py-2 {
    padding-top: .5rem;
    padding-bottom: .5rem
}

.py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem
}

.px-2\.5 {
    padding-left: .625rem;
    padding-right: .625rem
}

.py-1\.5 {
    padding-top: .375rem;
    padding-bottom: .375rem
}

.mb-1 {
    margin-bottom: .25rem
}

.mb-2 {
    margin-bottom: .5rem
}

.mb-3 {
    margin-bottom: .75rem
}

.mb-4 {
    margin-bottom: 1rem
}

.mb-12 {
    margin-bottom: 3rem
}

.mt-0\.5 {
    margin-top: .125rem
}

.mt-1 {
    margin-top: .25rem
}

.mt-2 {
    margin-top: .5rem
}

.mt-4 {
    margin-top: 1rem
}

.w-12 {
    width: 3rem
}

.w-80 {
    width: 20rem
}

.h-12 {
    height: 3rem
}

.flex-shrink-0 {
    flex-shrink: 0
}

.overflow-hidden {
    overflow: hidden
}

.relative {
    position: relative
}

.absolute {
    position: absolute
}

.inset-0 {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.bottom-3 {
    bottom: .75rem
}

.left-1\/2 {
    left: 50%
}

.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-x-1\/2 {
    --tw-translate-x: -50%
}

.transition-colors {
    transition-property: color, background-color, border-color;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    transition-duration: 150ms
}

.hover\:border-brand-200:hover {
    border-color: #bfdbfe
}

.animate-bounce {
    animation: bounce 1s infinite
}

@keyframes bounce {

    0%,
    100% {
        transform: translateY(-25%);
        animation-timing-function: cubic-bezier(.8, 0, 1, 1)
    }

    50% {
        transform: translateY(0);
        animation-timing-function: cubic-bezier(0, 0, .2, 1)
    }
}

@media (min-width:640px) {
    .sm\:px-6 {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
}

@media (min-width:1024px) {
    .lg\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem
    }
}