 :root {
     --bs-body-font-family: "JetBrains Mono", SFMono-Regular, Consolas, monospace;
     --bs-body-font-size: 16px;
     --bs-body-color: #1e1d1b;
     --font-title: 'Anton', sans-serif;
     --font-body: 'JetBrains Mono', monospace;
     --bs-body-bg: #f5f5ec;
     --bs-body-font-weight: 400;
     --bs-body-line-height: 1.5;
     --bs-body-font-style: normal;
     --bs-body-font-optical-sizing: auto;
     --bs-body-font-variant: normal;
     --bs-body-font-feature-settings: normal;
     --bs-body-text-decoration: none;
     --bs-body-text-transform: none;
     --bs-body-text-align: left;
     --bs-body-letter-spacing: normal;
     --bs-body-word-spacing: normal;
     --line-height-base: 1.6;
     --color-text: #222;
     padding: 0;
     margin: 0;
 }

 html {
  scroll-behavior: smooth;
}

 .jetbrains-mono-typo {
     font-family: "JetBrains Mono", monospace;
     font-optical-sizing: auto;
     font-weight: 400;
     font-style: normal;
 }


 .anton-regular {
     font-family: "Anton", sans-serif;
     font-weight: 400;
     font-style: normal;
 }

 /* Corps de texte */
 body {
     font-family: var(--font-body);
     font-size: var(--bs-body-font-size);
     line-height: var(--line-height-base);
     color: var(--color-text);
 }

 /* Titres */
 h1,
 h2,
 h3,
 h4 {
     font-family: var(--font-title);
 }

 .form-control:focus,
.form-select:focus {
  border-color: #212529;
  box-shadow: none; 
  outline: 0;
}

.btn-cta-mobile {
  height: 90px;
  font-size: 1.50rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
 .bg-one {
     background-color: #babf951a;
 }

 .aside {
     background-color: #181714;
 }

 hr {
     border: 1px dotted #d1d1d1;
     opacity: 1;
 }

 .form-label {
     margin-bottom: .5rem;
 }

 .list-inline-item {
     margin: .5rem 0;
 }

 .text-dashed {
     border-bottom: 1px dashed #161711;
 }

 a {
     text-decoration: none;
     color: #222222;
 }

 a:hover {
     text-decoration: underline;
 }

 figcaption {
     margin-top: 0.250rem;
     font-size: 0.750rem;
     font-style: italic;
     color: #666;
 }

 .text-none {
     text-transform: none;
 }

 body {
     padding-top: 0;
 }

 .navbar-toggler {
     border: none;
     font-size: 1rem;
 }

 .sidebar {
     position: fixed;
     top: 0;
     left: 0;
     bottom: 0;
     z-index: 100;
 }

 .border-dark {
     --bs-border-opacity: 0.3;
 }

 .border-dashed {
     border-style: dashed;
     border-width: 3px;
     border-color: #222222;
 }

 /* .btn {
     --bs-btn-padding-x: 3.75rem;
     --bs-btn-padding-y: 1.375rem;
 } */

 .btn-xl {
    padding: 1.2rem 3rem;   /* Augmente le rembourrage vertical (1.2rem) et horizontal (3rem) */
    font-size: 1.5rem;     /* Augmente la taille de la police */
    /* font-weight: 600; */
 } 
 /* .btn-outline-dark {
     --bs-btn-color: #212529;
     --bs-btn-border: 1px dashed;
     --bs-btn-border-color: #423a2b;
     --bs-btn-hover-color: #212529;
     --bs-btn-bg: transparent;
     --bs-btn-hover-bg: whitersmoke;
     --bs-btn-hover-text-decoration: underline;
 } */

 /* .btn-outline-orange {
     color: blue;
     --bs-btn-color: #whitesmoke;
     border: 1px blue solid;
     --bs-btn-border-color: #423a2b;
     --bs-btn-bg: transparent;
     --bs-btn-hover-text-decoration: underline;
 }

 .bg-orange {
     background-color: #F29F05;
 } */

 @media (max-width: 991.98px) {

     .sidebar {
         width: 100%;
         height: auto;
         position: static;
         padding-top: 0;
     }

     .main-content {
         padding-left: 0;
     }

     .nav-link {
         padding: 2rem 0 0;
         font-size: 1.5rem;
     }

     .form-label {
         font-size: 1.25rem;
     }
 }

 @media (max-width: 767.98px) {
     .col-aside {
         padding-top: 2rem;
         padding-bottom: 0;
     }

     #backToTopBtn {
         font-size: 32px;
     }
 }

 @media screen {
     .form-select-lg {
         font-size: 1rem;
     }
 }

 .nav-link {
     color: #333;
     background-color: transparent;
     transition: all 0.3s ease;
     padding: 0.75rem;
 }

 .nav-link:hover {
     background-color: transparent;
     color: blue;
 }

 summary.nav-link::after,
 summary.nav-link .arrow {
     display: none;
 }

 details[open] summary .arrow {
     display: none;
 }

 .ms-3 .nav-link {
     border-bottom: 1px solid #e0e0e0;
 }

 .ms-3 .nav-link:hover {
     color: blue;
     text-decoration: underline;
 }

 .video-wrapper {
     max-width: 560px;
 }

 .youtube-facade {
     position: relative;
     cursor: pointer;
     width: 100%;
     padding-top: 56.25%;
     background-size: cover;
     background-position: center;
 }

 .nav-pills {
     --bs-nav-pills-border-radius: none;
     --bs-nav-pills-link-active-color: #222222;
     --bs-nav-pills-link-active-bg: none;
 }

 .blue {
     color: blue;
 }

 .blue-contact {
     color: #518DD7;
 }

 #backToTopBtn {
     position: fixed;
     bottom: 10px;
     right: 30px;
     z-index: 99;
     outline: none;
     color: blue;
     cursor: pointer;
     padding: 15px;
     font-size: 14px;
 }


 .list-group-item {
     padding: 0.50rem 0;
 }

 .table {
     --bs-table-bg: transparent;
     --bs-table-border-color: var(--bs-btn-border-color)
 }

 .table> :not(caption)>*>* {
     padding: 1.5rem .5rem;
     font-size: 1rem;
 }

 .bg-blue {
     background-color: blue;
 }

 .navbar-toggler {
     padding: 0.25rem 0.75rem 0.25rem 0rem;
 }

 .current-page-indicator {
     position: relative;
     overflow: hidden;
 }

 .current-page-indicator::after {
     content: '';
     position: absolute;
     top: 0;
     right: 0;
     width: 0;
     height: 0;
     border-style: solid;
     border-width: 0 12px 12px 0;
     border-color: transparent blue transparent transparent;
     transition: all 0.3s ease;
 }

 .current-page-indicator:hover::after {
     border-color: transparent #FFA500 transparent transparent;
 }



 button {
     border: none;
     background-color: transparent;
     color: #222222;
     padding: 0;
     font-weight: 700;
     text-decoration: underline;
 }

 button:hover {
     text-decoration: underline;
 }

 .modal {
     display: none;
     position: fixed;
     z-index: 1;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     background-color: rgba(0, 0, 0, 0.6);
 }

 .modal-content {
     display: flex;
     justify-content: center;
     align-items: center;
     flex-direction: column;
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     background: white;
     padding: 20px;
     border-radius: 5px;
     width: 80%;
     max-width: 600px;
 }

 iframe {
     display: block;
     margin: auto;
 }

 .video-container {
     position: relative;
     width: 100%;
     padding-top: 56.25%;
 }

 .video-container iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
 }

 .fs-7 {
        font-size: 0.875rem;
 }

 .form-control,
 .form-select {
     background-color: #cfd5b49c;
     border: 1px solid #ddd;
 }

 .close {
     position: absolute;
     right: 10px;
     top: 10px;
     cursor: pointer;
 }

 nav link {
     text-decoration: none;
     color: #222222;
     text-transform: uppercase;
 }

 nav link:hover {
     text-decoration: underline;
 }

 .list-group-item {
     background-color: transparent;
     border: none;
 }

 .card {
     border: 0;
 }