/* Smooth scrolling */
*{
    color:black;
}
html {
    scroll-behavior: smooth;
}

/* Custom selection */
::selection {
    background-color: #0ea5e9;
    color: #ffffff;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f0f9ff;
}

::-webkit-scrollbar-thumb {
    background: #06b6d4;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #0ea5e9;
}

/* Fade-in animation utility */
.fade-in {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

.fade-in.delay-100 { transition-delay: 100ms; }
.fade-in.delay-200 { transition-delay: 200ms; }
.fade-in.delay-300 { transition-delay: 300ms; }

/* Header glass effect on scroll */
.header-glass {
    background-color: rgba(240, 249, 255, 0.98) !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
}

/* Form styling enhancements */
input:focus, textarea:focus, select:focus {
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.3);
}

/* Golden fill for icons */
.fill-gold,
[class*="fill-gold"] {
    fill: #ffec00 !important;
}

/* Mobile floating bar spacing for body */
@media (max-width: 1023px) {
    body {
        padding-bottom: 80px;
    }
}

/* Hero text shadow for better readability */
.hero-text-shadow {
    text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

/* Image hover zoom container fix */
.group:hover img {
    will-change: transform;
}

/* Ensure sticky header does not overlap anchor targets */
section[id] {
    scroll-margin-top: 100px;
}

/* Brightening color scheme overrides */
body {
    background-color: #f0f9ff !important;
    color: #000000 !important;
}

/* Header - Light blue gradient */
header {
    background-color: #f0f9ff !important;
    border-color: #0ea5e9 !important;
}

/* Dark slate backgrounds to light sky blue */
[class*="bg-slate-900"],
[class*="bg-slate-800"] {
    background-color: #e0f2fe !important;
    color: #000000 !important;
}

/* Mobile menu */
#mobile-menu {
    background-color: #f0f9ff !important;
    border-color: #06b6d4 !important;
}

/* Slate text to black */
[class*="text-slate-300"],
[class*="text-slate-400"] {
    color: #000000 !important;
}

[class*="text-slate-800"] {
    color: #000000 !important;
}

[class*="text-white"] {
    color: #000000 !important;
}

/* Amber to vivid orange */
[class*="bg-amber-"],
[class*="text-amber-"],
[class*="border-amber-"] {
    --tw-bg-opacity: 1;
    --tw-text-opacity: 1;
    --tw-border-opacity: 1;
}

.bg-amber-500,
[class*="bg-amber-500"] {
    background-color: #0ea5e9 !important;
}

.hover\:bg-amber-600:hover,
[class*="hover:bg-amber-600"]:hover {
    background-color: #0284c7 !important;
}

.text-amber-500,
[class*="text-amber-500"] {
    color: #0284c7 !important;
}

.text-black-500,
[class*="text-black-500"] {
    color: #000000 !important;
}

.hover\:text-amber-500:hover,
[class*="hover:text-amber-500"]:hover {
    color: #00123c !important;
}

.hover\:text-amber-400:hover,
[class*="hover:text-amber-400"]:hover {
    color: #00123c !important;
}

.border-amber-500,
[class*="border-amber-500"] {
    border-color: #0ea5e9 !important;
}

.bg-amber-500\/10,
[class*="bg-amber-500/10"] {
    background-color: rgba(14, 165, 233, 0.1) !important;
}

.bg-amber-500\/20,
[class*="bg-amber-500/20"] {
    background-color: rgba(14, 165, 233, 0.2) !important;
}

.border-amber-500\/20,
[class*="border-amber-500/20"] {
    border-color: rgba(14, 165, 233, 0.2) !important;
}

/* Gradient backgrounds */
[class*="bg-gradient-to-r"] {
    background: linear-gradient(to right, #f0f9ff, #cffafe, #e0f2fe) !important;
}

[class*="bg-radial-gradient"] {
    background: radial-gradient(circle at top right, rgba(255, 107, 53, 0.2), transparent 50%) !important;
}

/* Borders */
[class*="border-slate-800"] {
    border-color: #0ea5e9 !important;
}

/* Shadow adjustments for new accent */
[class*="shadow-amber-"] {
    box-shadow: 0 10px 15px -3px rgba(14, 165, 233, 0.3) !important;
}

/* Footer - Bright styling */
footer {
    background-color: #e0f2fe !important;
    color: #000000 !important;
    border-color: #0ea5e9 !important;
}

footer a,
footer [class*="text-"] {
    color: #0ea5e9 !important;
}

footer a:hover,
footer [class*="hover:text-"]:hover {
    color: #0284c7 !important;
}

.fill-gold,
[class*="fill-gold"] {
    color: #ffec00 !important;
}

/* Cookie banner */
.cookie-banner {
    animation: cookieBannerUp 0.35s ease-out;
}

@keyframes cookieBannerUp {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1023px) {
    .cookie-banner {
        bottom: 80px;
    }
}

/* Keep reCAPTCHA v3 badge visible above mobile floating CTA */
.grecaptcha-badge {
    z-index: 60 !important;
}

@media (max-width: 1023px) {
    .grecaptcha-badge {
        bottom: 88px !important;
    }
}
