/* Bullio Landing — Custom Tailwind Utilities
   Used alongside the Tailwind CDN on all public pages.
   ---------------------------------------------------- */

/* Hero & CTA gradient backgrounds */
.gradient-hero {
    background: linear-gradient(135deg, #170F49 0%, #1e1566 40%, #2a1d7a 70%, #170F49 100%);
}

.gradient-glow {
    background: radial-gradient(ellipse at 50% 0%, rgba(121, 225, 144, 0.15) 0%, transparent 60%);
}

.gradient-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
}

/* Floating animation for decorative orbs */
.animate-float {
    animation: float 6s ease-in-out infinite;
}

.animate-float-delayed {
    animation: float 6s ease-in-out infinite;
    animation-delay: 2s;
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* Prose — minimal typographic defaults for legal / long-form pages */
.prose h1 {
    font-size: 2.25rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.025em;
    color: #170F49;
    margin-bottom: 1.5rem;
}

.prose h2 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.3;
    color: #170F49;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.prose h3 {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.4;
    color: #170F49;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
}

.prose p {
    margin-bottom: 1rem;
    line-height: 1.75;
    color: #4b5563;
}

.prose ul, .prose ol {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
}

.prose ul {
    list-style-type: disc;
}

.prose ol {
    list-style-type: decimal;
}

.prose li {
    margin-bottom: 0.5rem;
    line-height: 1.75;
    color: #4b5563;
}

.prose a {
    color: #2375ef;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.prose a:hover {
    color: #170F49;
}

.prose hr {
    border-color: #e5e7eb;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.prose table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5rem;
    font-size: 0.875rem;
}

.prose thead th,
.prose thead td {
    font-weight: 700;
    color: #170F49;
    text-align: left;
    padding: 0.75rem 1rem;
    border-bottom: 2px solid #e5e7eb;
    background-color: #f9fafb;
}

.prose tbody td {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    color: #4b5563;
}

.prose tbody tr:hover {
    background-color: #f9fafb;
}

/* Details / accordion animation */
details summary {
    list-style: none;
}

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