.hero-gradient {
    background: linear-gradient(135deg, #1e3a8a 0%, #3730a3 50%, #1e40af 100%);
}

.card-hover {
    transition: all 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.animate-fade-in {
    animation: fadeIn 0.8s ease-in;
}

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

.pulse-border {
    animation: pulseBorder 2s infinite;
}

@keyframes pulseBorder {
    0%, 100% { border-color: #3b82f6; }
    50% { border-color: #1d4ed8; }
}

.counter {
    font-weight: bold;
    color: #1e40af;
}

.g-recaptcha {
    display: flex;
    justify-content: center;
}

.cookie-bar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
    background: #0b1220; color: #fff; box-shadow: 0 -6px 24px rgba(0,0,0,.25);
    display: none;
}

.cookie-bar__inner {
    max-width: 1100px; margin: 0 auto; padding: 14px 16px;
    display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap;
}

.cookie-bar__text { margin: 0; line-height: 1.4; opacity: .95; }
.cookie-link { color: #7cc7ff; text-decoration: underline; }
.cookie-bar__actions { display: flex; gap: 8px; }
.cookie-btn {
    background: #2a7df6; color: #fff; border: 0; padding: 9px 14px; border-radius: 10px;
    font-weight: 600; cursor: pointer;
}

.cookie-btn:hover { filter: brightness(1.05); }
.cookie-btn-outline { background: transparent; border: 1px solid #5b6b8b; color: #fff; }

@media (max-width: 560px) {
    .cookie-bar__inner { flex-direction: column; align-items: stretch; }
    .cookie-bar__actions { width: 100%; }
    .cookie-btn, .cookie-btn-outline { flex: 1 1 auto; }
}