:root {
            /* Palette DriveTime */
            --dt-primary: #BD632F;
            --dt-primary-dark: #273E47;
            --dt-secondary-teal: #28987F;
            --dt-secondary-red: #A4243B;
            --dt-secondary-beige: #D8C99B;

            --dt-body-bg: #f6f3ea;     /* fond très léger tiré du beige */
            --dt-card-bg: #ffffff;
        }

        body {
            font-family: "Roboto", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background-color: var(--dt-body-bg);
            color: #111827;
        }

        /* Couleurs des boutons d'accordéon personnalisés */

        .bg-owners {
            background-color: var(--dt-primary-dark) !important;
        }

        .bg-drivers {
            background-color: var(--dt-primary) !important;
        }

        .bg-owners h3,
        .bg-drivers h3 {
            color: #eee !important; /* texte +, si currentColor, flèche */
        }

        .bg-owners.accordion-button,
        .bg-drivers.accordion-button {
            --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23eeeeee' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.75'%3e%3cpolyline points='1 5 8 12 15 5'/%3e%3c/svg%3e");
            --bs-accordion-btn-active-icon: var(--bs-accordion-btn-icon);
        }

        /* Hero */
        .hero-section {
            min-height: 80vh;
            display: flex;
            align-items: center;
            background: radial-gradient(circle at top left,
                        rgba(189, 99, 47, 0.35),
                        transparent 55%),
                        var(--dt-primary-dark);
            color: #f9fafb;
        }
        .hero-section h1 {
            letter-spacing: 0.02em;
        }
        .hero-section h1 span {
            color: var(--dt-primary);
        }

        /* Navbar / header */
        header {
            background-color: #ffffff;
        }
        .navbar {
            border-bottom: 1px solid rgba(39, 62, 71, 0.08);
        }
        .navbar-brand {
            color: var(--dt-primary-dark) !important;
            letter-spacing: 0.04em;
            text-transform: uppercase;
            font-weight: 700;
            font-size: 1.05rem;
        }
        .navbar-brand span:first-child {
            letter-spacing: 0.18em;
        }
        .nav-link {
            color: #4b5563 !important;
            font-weight: 400;
        }
        .nav-link:hover,
        .nav-link:focus {
            color: var(--dt-primary) !important;
        }

        /* Badge "Bêta" */
        .badge-soft {
            background: rgba(189, 99, 47, 0.12);
            color: var(--dt-primary);
            border: 1px solid rgba(189, 99, 47, 0.35);
            font-weight: 500;
            text-transform: uppercase;
            font-size: 0.65rem;
        }

        section {
            padding: 4rem 0;
        }

        /* Boutons aux couleurs de la charte */

        .btn-primary, .btn-check:checked + .btn {
            background-color: var(--dt-primary) !important;
            border-color: var(--dt-primary) !important;
            font-weight: 500 !important;
        }
        .btn-primary:hover,
        .btn-primary:focus {
            background-color: var(--dt-secondary-red);
            border-color: var(--dt-secondary-red);
        }

        .btn-outline-light {
            border-color: rgba(248, 250, 252, 0.7);
            color: #f9fafb;
        }
        .btn-outline-light:hover,
        .btn-outline-light:focus {
            background-color: #f9fafb;
            color: var(--dt-primary-dark);
        }

        .btn-outline-primary {
            border-color: var(--dt-primary) !important;
            color: var(--dt-primary) !important;
            font-weight: 500 !important;
        }
        .btn-outline-primary:hover,
        .btn-outline-primary:focus {
            background-color: var(--dt-primary) !important;
            border-color: var(--dt-primary) !important;
            font-weight: 500 !important;
            color: var(--bs-btn-active-color) !important;
        }

        /* Petits textes */
        .text-muted {
            color: #6b7280 !important;
        }
        .text-secondary {
            color: var(--dt-secondary-beige) !important;
        }

        /* Cards / blocs */
        .border {
            border-color: rgba(39, 62, 71, 0.12) !important;
        }
        .border.rounded-3,
        .border.rounded-4 {
            background-color: var(--dt-card-bg);
        }

        .feature-icon {
            font-size: 2rem;
            line-height: 1;
            color: var(--dt-primary);
        }

        /* Section formulaire */
        .form-section {
            background: linear-gradient(
                    135deg,
                    rgba(216, 201, 155, 0.38),
                    rgba(246, 243, 234, 0.9)
            );
        }

        /* Accordéon */
        .accordion-item {
            border: none;
            background-color: transparent;
        }
        .accordion-button {
            background-color: rgba(39, 62, 71, 0.03);
            color: #111827;
            font-weight: 500;
        }
        .accordion-button:not(.collapsed) {
            background-color: rgba(39, 62, 71, 0.08);
            color: var(--dt-primary-dark);
            box-shadow: none;
        }
        .accordion-button:focus {
            box-shadow: 0 0 0 0.12rem rgba(189, 99, 47, 0.3);
        }

        /* Input / form */
        .form-control,
        .form-select {
            border-radius: 0.6rem;
            border-color: rgba(39, 62, 71, 0.2);
        }
        .form-control:focus,
        .form-select:focus {
            border-color: var(--dt-primary);
            box-shadow: 0 0 0 0.12rem rgba(189, 99, 47, 0.25);
        }

        /* Footer */
        footer {
            background-color: #ffffff;
        }

        /* Toast */
        .toast.text-bg-success {
            background-color: var(--dt-secondary-teal) !important;
        }
        .toast.text-bg-danger {
            background-color: var(--dt-secondary-red) !important;
        }

        @media (max-width: 991.98px) {
            .hero-section {
                min-height: 70vh;
            }
        }
