/* BEC – B Executive Cars
   Small custom layer on top of Tailwind. Keep this minimal. */

:root {
    --accent: #2563EB;
}

html { scroll-behavior: smooth; }

body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    /* Soft blue page background so white cards lift off the page. */
    background-color: #eef3fb;
    background-image: linear-gradient(180deg, #eef3fb 0%, #f4f7fd 40%, #eef3fb 100%);
}

/* Reusable form control styling (kept here so partials stay clean). */
.form-input {
    width: 100%;
    border-radius: 0.75rem;
    border: 1px solid #e2e8f0;
    background: #fff;
    padding: 0.75rem 0.9rem;
    font-size: 0.95rem;
    color: #1F2933;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.form-input::placeholder { color: #94a3b8; }
.form-input:focus {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .18);
}
.form-input[aria-invalid="true"] {
    border-color: #dc2626;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .12);
}

/* Form status message variants (toggled from JS). */
.form-message.is-success { background: #ecfdf5; color: #065f46; display: block; }
.form-message.is-error   { background: #fef2f2; color: #991b1b; display: block; }

/* Respect reduced motion preferences. */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* Subtle entrance for cards when they come into view. */
.reveal { opacity: 0; transform: translateY(12px); transition: opacity .5s ease, transform .5s ease; }
.reveal.is-visible { opacity: 1; transform: none; }
