  :root{
      --bg:#0b0f1a;
      --muted:#9fb0d0;
      --text:#eaf0ff;
      --brand:#76b7ff;
      --brand2:#a9ffda;
      --line:rgba(255,255,255,.10);
      --shadow: 0 12px 35px rgba(0,0,0,.35);
      --radius:18px;
    }

    html{scroll-behavior:smooth}
    body{
      color:var(--text);
      background:
        radial-gradient(1000px 600px at 12% 10%, rgba(118,183,255,.22), transparent 60%),
        radial-gradient(900px 500px at 90% 18%, rgba(169,255,218,.16), transparent 55%),
        linear-gradient(180deg, #070a12 0%, var(--bg) 55%, #070a12 100%);
    }

    /* Bootstrap helpers */
    .text-muted-2{ color: var(--muted) !important; }
    .soft-border{ border:1px solid var(--line)!important; }
    .soft-card{
      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      border:1px solid var(--line);
      box-shadow: var(--shadow);
      border-radius: var(--radius);
    }

    /* Header glass */
    .glass-nav{
      backdrop-filter: blur(10px);
      background: rgba(7,10,18,.65) !important;
      border-bottom: 1px solid var(--line);
    }

    /* Logo "montagnes en traits" */
    .sw-logo{
      width:40px;height:40px;border-radius:14px;
      background: linear-gradient(135deg, rgba(118,183,255,1), rgba(169,255,218,1));
      box-shadow: 0 10px 25px rgba(118,183,255,.18);
      position:relative; flex: 0 0 auto;
    }
    .sw-logo:before,.sw-logo:after{
      content:"";
      position:absolute; left:9px; right:9px; height:2px;
      background: rgba(6,16,24,.85);
      border-radius:10px;
    }
    .sw-logo:before{top:15px; transform:skewX(-20deg)}
    .sw-logo:after{top:23px; transform:skewX(18deg)}

    /* Pills / tags */
    .pill{
      display:inline-flex; align-items:center; gap:10px;
      padding:8px 12px;
      border:1px solid var(--line);
      border-radius:999px;
      background:rgba(255,255,255,.04);
      color:var(--muted);
      font-size:.92rem;
    }
    .pill .dot{width:8px;height:8px;border-radius:999px;background:var(--brand)}

    .tag{
      display:inline-flex; align-items:center; gap:8px;
      margin-top:12px;
      font-size:.82rem;
      color: rgba(234,240,255,.9);
      padding:6px 10px;
      border-radius:999px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.03);
      width: fit-content;
    }

    /* Buttons */
    .btn-soft{
      border:1px solid var(--line);
      background: rgba(255,255,255,.05);
      color: var(--text);
      border-radius: 12px;
      font-weight: 700;
    }
    .btn-soft:hover{
      background: rgba(255,255,255,.08);
      border-color: rgba(118,183,255,.35);
      color: var(--text);
      transform: translateY(-1px);
    }
    .btn-brand{
      border:0;
      color:#061018;
      border-radius: 12px;
      font-weight: 800;
      background: linear-gradient(135deg, rgba(118,183,255,.95), rgba(169,255,218,.85));
    }
    .btn-brand:hover{
      background: linear-gradient(135deg, rgba(118,183,255,1), rgba(169,255,218,.95));
      color:#061018;
      transform: translateY(-1px);
    }

    /* Hero spacing */
    .hero{ padding: 3rem 0 1.5rem; }
    h1{
      letter-spacing: -0.02em;
      line-height: 1.08;
    }

    /* Accordion */
    .accordion-item{
      background: rgba(255,255,255,.03);
      border:1px solid var(--line);
      border-radius: 14px !important;
      overflow: hidden;
    }
    .accordion-button{
      background: transparent !important;
      color: var(--text) !important;
      font-weight: 800;
    }
    .accordion-button:focus{ box-shadow: none; }
    .accordion-body{ color: var(--muted); }

    /* Footer */
    footer{
      border-top:1px solid var(--line);
      color: var(--muted);
    }

    /* Anchor offset for sticky header */
    section{ scroll-margin-top: 90px; }
	
	.titre{
	font-weight: 700;
	}
	
	/* Fix dropdown Bootstrap en mode dark */

.form-select {
  background-color: rgba(255,255,255,.03) !important;
  color: var(--text) !important;
  border: 1px solid var(--line);
}

.form-select option {
  background-color: #0f1525; /* fond sombre */
  color: #ffffff;            /* texte visible */
}

.form-select:focus {
  box-shadow: none;
  border-color: rgba(118,183,255,.45) !important;
}