:root{--orange:#c25510 !important;--orange-dark:#a34608 !important}.btn-primary:hover{background:#d66a1c}
.contact-error { color: #a12622; margin-bottom: 1rem; }

/* Cookie Banner Styles */
        .cookie-banner {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            background: #0f172a;
            color: #f8fafc;
            padding: 1.5rem 2rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 900; /* below the success modal (1000) so it never overlays dialogs */
            transform: translateY(100%);
            visibility: hidden; /* keeps the off-screen banner out of the tab order */
            /* visibility flips only after the slide-out finishes */
            transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s 0.4s;
            font-family: 'Figtree', sans-serif;
            box-shadow: 0 -4px 20px rgba(0,0,0,0.15);
        }

            .cookie-banner.show {
                transform: translateY(0);
                visibility: visible;
                transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s;
            }

        .cookie-text {
            font-size: 0.95rem;
            line-height: 1.6;
            flex: 1;
        }

        .cookie-actions {
            display: flex;
            gap: 0.75rem;
            margin-left: 2rem;
        }

            .cookie-text a {
                /* vivid brand orange: the AA --orange (#c25510) only hits ~3.9:1
                   on the dark cookie bar; --orange-brand clears 4.5. */
                color: var(--orange-brand, #ff7d27);
                text-decoration: none;
                font-weight: 600;
            }

                .cookie-text a:hover {
                    text-decoration: underline;
                }

        .cookie-btn {
            background: #f8fafc;
            color: #0f172a;
            border: 2px solid #f8fafc;
            padding: 0.75rem 1.5rem;
            border-radius: 6px;
            cursor: pointer;
            flex: 1;
            font-weight: 600;
            min-width: 195px;
            white-space: nowrap;
            transition: background 0.2s, color 0.2s;
        }

            .cookie-btn:hover {
                background: transparent;
                color: #f8fafc;
            }

        .cookie-settings-btn {
            position: fixed;
            left: 1rem;
            bottom: 1rem;
            z-index: 898;
            border: 1px solid #64748b;
            border-radius: 999px;
            background: #0f172a;
            color: #f8fafc;
            padding: 0.55rem 0.9rem;
            cursor: pointer;
            font: 600 0.8rem 'Figtree', sans-serif;
        }

            .cookie-settings-btn:hover {
                background: #1e293b;
            }

            .cookie-settings-btn[hidden] {
                display: none;
            }

        @media (max-width: 768px) {
            .cookie-banner {
                flex-direction: column;
                gap: 1rem;
                text-align: center;
                padding: 1.5rem 1rem;
            }

            .cookie-actions {
                flex-direction: column;
                gap: 0.75rem;
                margin-left: 0;
                width: 100%;
            }

            .cookie-btn {
                width: 100%;
            }
        }
