 :root{
      --bs-primary: #6bc34c;            /* Couleur dominante */
      --brand-ink: #0f172a;              /* Gris très foncé pour textes */
      --brand-muted: #68718a;           /* Gris pour sous-titres */
      --section-bg: #f6fbf4;            /* Légère teinte verte */
    }
    body{ color: var(--brand-ink); }
    .navbar{ box-shadow: 0 2px 10px rgba(0,0,0,.05); }
    .btn-primary{ --bs-btn-bg: var(--bs-primary); --bs-btn-border-color: var(--bs-primary); --bs-btn-hover-bg: #5ab43d; --bs-btn-hover-border-color: #5ab43d; --bs-btn-active-bg:#4ea835; }
    .link-primary{ color: var(--bs-primary) !important; }
    .hero{
      background: linear-gradient(180deg, rgba(107,195,76,.08), rgba(107,195,76,.0));
      padding-top: clamp(6rem, 12vh, 9rem);
      padding-bottom: 4rem;
    }
    .hero .badge{ background: #e8f6e3; color:#2d6a1e; }
    .hero-cta{ gap: 1rem; }
    .shadow-soft{ box-shadow: 0 10px 30px rgba(0,0,0,.06); }
    .feature-icon{ width: 44px; height: 44px; border-radius: 12px; background:#e8f6e3; display:grid; place-items:center; font-size:1.25rem; color:#2d6a1e; }
    .section-muted{ background: var(--section-bg); }
    .editor-frame{ border: 1px solid rgba(0,0,0,.08); border-radius: 1rem; overflow: hidden; }
    .list-checked li{ padding-left: 1.75rem; position: relative; margin: .5rem 0; }
    .list-checked li::before{ content: "\f26e"; /* bi-check2-circle */ font-family: bootstrap-icons; position:absolute; left:0; top:.1rem; color: var(--bs-primary); }
    .kbd{ border:1px solid #d0d7de; border-bottom-width: 2px; padding:.125rem .375rem; border-radius:.375rem; background:#fff; }
    .brand-card{ border:1px solid rgba(0,0,0,.08); border-radius:1rem; }
    .brand-card .logo{ height: 52px; }
    .footer{ border-top:1px solid rgba(0,0,0,.08); }
    .badge-neutral{ background:#eef2ff; color:#26347c; }
    .text-muted{ color: var(--brand-muted) !important; }

    /* Back-to-top */
    #toTop{ position: fixed; right: 1rem; bottom: 1rem; display: none; z-index: 1030; }

    /* Small decorative grid */
    .grid-bg{ background-image: radial-gradient(rgba(107,195,76,.25) 1px, transparent 1px); background-size: 22px 22px; background-position: center; }

    /* Smooth anchor offset for fixed navbar */
    :target::before{ content:""; display:block; height:4.5rem; margin-top:-4.5rem; visibility:hidden; }

    .bg-vert {
      background-color: #6bc34c !important;
    }
    .navbar-brand { color: #fff !important; }
    .nav-link { color: #fff !important; }
    .nav-link:hover { color: #2d6a1e !important; }