@charset "utf-8";


/*
  vert #18806d
  vertclair #6ebfac
  JAUNE :
  bleu #00293a
  gris #e9f4f7
  vertfonce #002e40

*/

:root {
  --colorprimaire: #18806d;
  --colorverclaire: #6ebfac;
  --colorverteco : #7bc043;
  --colorjaune: #dee202;
  --colorbleu: #014d6d;
  --colorbleupur: #02202b;
  --colorbleufonce: #2002ff;
  --colorgris: #e9f4f7;
  --colorgrey: #696969;
  --colorsecond: #002e40;
  --colorblack : #000000;
  --colorrouge : #af0808;
  --colorrougefonce : #770202;
  --coloramber : #e65602;
  --colororange: #ff970f;
  --colorcyan : #1dc7e6;

  --colorcov: #1dc7e6;
  --textprincipal: #343a40;
  --titre: #17a2b8;
  --soustitre: #1dc7e6;
  --btnsecond: #ff6b6b;
  --container: #f8f9fa;
  --colorcard: #f8faf9;
  --containerfonce:  #343a40;
  --iconcolor:  #7bc043;
  

   --bs-blue: #094c8a;
    --bs-blueclair: #1686ee;
    --bs-bluedark: #01101d;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1; 
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #5f5f5f;
    --bs-gray-dark: #343a40;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --box-shadow: 0 25px 90px 0 rgb(4 2 0 / 3%);
    --iframe-filter: grayscale(0%);
    --bg-grey: #f0f1f5;
    --bg-lightgrey: #f1f3f8;
    --layer: rgb(6 1 14 / 58%);
    --footer-bg: #18191f;
    --footer-bglight: #222433;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0))
  
}

html,
body,
header,
.view {
  height: 70vh;
}


.view.introheader {
  height: 30vh;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body {
  margin: 0;
  font-family: 'Hubballi', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.1;
  color: #343a40;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1.5px;
    font-family: 'Orbitron', sans-serif;
}

.pubtrajets h6,
.pubtrajets h5,
.pubtrajets h4 {
  font-family: 'Hubballi', sans-serif;
}


.scroll-to-top {
  width: 40px; 
  height: 40px; 
  margin-left: auto;
  margin-right: 30px;
  margin-bottom: 50px;
}

 /* Carousel styling */
 #introCarousel,
 .carousel-inner,
 .carousel-item,
 .carousel-item.active {
   height: 80vh; /* 70vh  */
 }

 .view.img1 {
  background: url("../img/bg_sp2.webp")no-repeat center center;
  background-size: cover;
  clip-path: polygon(0% 0%, 100% 0, 100% 69%, 63% 81%, 0% 100%);
 }

 .view.img2 {
  background: url("../img/bg_002.jpg")no-repeat bottom center;
  background-size: cover;
  clip-path: polygon(0% 0%, 100% 0, 100% 69%, 63% 81%, 0% 100%);
 }

 .view.img3 {
  background: url("../img/bg_003.jpg")no-repeat bottom center;
  background-size: cover;
  clip-path: polygon(0% 0%, 100% 0, 100% 69%, 63% 81%, 0% 100%);
 }

 .view.img4 {
  background: url("../img/bg_003.png")no-repeat bottom center;
  background-size: cover;
  clip-path: polygon(0% 0%, 100% 0, 100% 69%, 63% 81%, 0% 100%);
 }

 .view .viewtexte {
  position: absolute;
  width: 50%;
  margin: auto;
  left: 20%;
  top: 22%;
  
 }

 .view .viewtexte h1 {
  font-size: 1.8em;
  font-family: "Kanit", sans-serif;
 }
 .view .viewtexte h6 {
  font-size: 1.3em;
  font-family: 'Hubballi', sans-serif;
 }

 .view .viewtexte .img {
  bottom: 0;
 }

 
hr {
  margin: 1rem 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: .25
}

hr:not([size]) {
  height: 1px
}
 
.btnteam {
  width: 250px;
  padding: 10px;
  background-color: var(--titre);
  color: #fff;
  border-radius: 50px;
  transition: 0.3s;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 18px;
  border: 2px solid var(--colorcyan);
}


.btnteam:hover {
  box-shadow: var(--box-shadow);
}

.btnsecond {
  width: 200px;
  padding: 10px;
  margin: auto;
  background-color: var(--btnsecond);
  color: var(--colorcard);
  border-radius: 50px;
  transition: 0.3s;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 20px;
  border: 2px solid var(--colorrouge);
}

.btnsecond:hover {
  box-shadow: var(--box-shadow);
}


.btnvertcov {
  width: 200px;
  padding: 10px;
  margin: auto;
  background-color: var(--colorsecond);
  color: var(--colorcard);
  border-radius: 50px;
  transition: 0.3s;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 20px;
  border: 2px solid var(--colorbleu);
}

.btnvertcov:hover {
  box-shadow: var(--box-shadow);
}



 .sectioncontainer {
  position: relative;
  width: 100%;
  margin: auto;
  margin-top: -40vh;
  padding: 50px;
 }

 input[name="codevalide"] {
  font-size: 1.5rem;
  letter-spacing: 1px;
 }

 .marginmoinstop {
  margin-top: -50vh;
 }

 .marginmoinstop30 {
  margin-top: -40vh;
 }

 .colorblack {
  color: var(--colorblack);
 }

 .colororange {
  color: var(--colororange);
 }
 .coloramber {
  color: var(--coloramber);
 }

 .colorcyan {
  color: var(--colorcyan);
 }

.colorverteco {
  color: var(--colorverteco);
}

 .colorbleufonce {
  color: var(--colorbleufonce);
 }
 .colorbleu {
  color: var(--colorbleu);
 }

 .bgcolorgris {
  background-color: var(--colorgris);
 }
 .colorgris {
  color: var(--colorgris);
 }

 
 .bgcolorrouge {
  background-color: var(--colorrouge);
 }
 .colorrouge {
  color: var(--colorrouge);
 }
 
 .colorrougefonce {
  color: var(--colorrougefonce);
 }
 
 .bgcolorgrey {
  background-color: var(--colorgrey);
 }
 .colorgrey {
  color: var(--colorgrey);
 }
 .colorsecond {
  color: var(--colorsecond);
 }

 .colorvertclair { color: var(--colorverclaire); }

 .colorbleupur {
  color: var(--colorbleupur);
 }

 .bgcolorjaune {
  background-color: var(--colorjaune);
 }
 .colorjaune {
  color: var(--colorjaune);
 }

 .bgcolorprimaire {
  background-color: var(--colorprimaire);
 }

 .bgcolorwhite {
  background-color: #fff;
 }
 
 .bgcolororange {
  background-color: var(--bs-yellow);
 }
 .colorprimaire {
  color: var(--colorprimaire);
 }

 .bgcolorsecond {
  background-color: var(--colorsecond);
 }
 
 .bgcolorbleupur {
  background-color: var(--colorbleupur);
 }

 .bgcolorbleu {
  background-color: var(--colorbleu);
 }

 .bgcolorvertclair {background-color: var(--colorverclaire);}

 .bgcolorcov {background-color: var(--colorcov);}
 .bgcolortitre {background-color: var(--titre);}

 
.bluetext { color: var(--bs-blue) !important; }
.blueclairtext { color: var(--bs-blueclair) !important; }
.gristext { color: var(--bs-gray-dark) !important; }

.bgblueclairtext { background-color: var(--bs-blueclair) !important; }

 .fontsize20 {
  font-size: 20px;
  letter-spacing: 1.5px;
 }

h1 {
  font-size: 25px;
  font-family: 'Kanit', sans-serif;
}

 h4, h3 {
  color: var(--colorsecond);
  font-weight: bold;
 }

 .carousselteam {
  position: relative;
  width: 100%;
  height: 1200px;
  margin: auto;
 }

 .clippath {
  clip-path: polygon(100% 0%,100% 48%,100% 100%,25% 100%,0% 50%,25% 0%);
 }

 .conducteurs p {
  font-size: 1em;
 }

 .conducteurs h4 {
  font-size: 1em;
 }

 .conducteurs .img {
 width: 220px;
 height: 220px;
 margin: auto;
 margin-top: 50px;
 border: 3px solid var(--colorverclaire);
 border-radius: 100%;
 background: url("../img/img_condcteur_800.png")no-repeat center;
 background-size: cover;
 }

 
 .conducteurs .img2 {
  width: 220px;
  height: 220px;
  margin: auto;
  margin-top: 50px;
  border: 3px solid var(--colorverclaire);
  border-radius: 100%;
  background: url("../img/txt_bg4.png")no-repeat center;
  background-size: cover;
  }

/* ---- INPUT FORMULAIRE  ------- */

input[type="checkbox"] {
  width: 15px;
  height: 15px;

}
input:checked + .slider {
  background-color: var(--colorprimaire);
}

input:focus + .slider {
  box-shadow: 0 0 1px var(--colorprimaire);
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}
/*
input[type="text"], 
input[type="text"]:focus, 
input[type="text"]:hover {
  border:darkgray;
  
}
*/

input[type="radio"] {
  width: 20px;
  height: 20px;
  
}

button[type=submit] {
  background-color: var(--colorprimaire);
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

button[type=submit]:hover {
  background-color: var(--colorprimaire);
}

.btnclick {
  background-color: var(--colorprimaire);
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 1.3em;
}

.btnclick:hover { color: var(--colorjaune); }

.cardrecherche {
  position: relative;
  width: 75% !important;
  margin: auto;
}
.cardrecherchemobile {
  visibility: hidden;
}

.cardrecherche h2 {
 font-size: 1.2em;
}
.formrecherche {
  position: relative;
  height: auto;
  width: 100% !important;
  background-color: #fff;
  border-radius: 20px;
  margin: auto;
  padding: 5px;
  
}

.formrecherche .form-row {margin: 10px 0;}

.formrecherche .input-group {
  margin-top: 9px;
}


.intro-2 {
  position: relative;
  background: url("../img/img_bg100.png")no-repeat center center;
  background-size: cover;
}
.intro-2 .formrecherche {
  bottom: 20px;
}

.margintop {
  margin-top: 250px;
}

.view.img-view {
  height: 100%;
  margin-top: 100px;
}

.rgba-black-light,.rgba-black-light:after{background-color:rgba(24, 24, 24, 0.6)}

/*  ---- MENU ------------ */

.navbar {
  background-color: transparent;
  padding: 20px;
}

.navbar-brand {
  position: absolute;
  width: 150px;
  height: 30px;
  font-family: 'League Spartan', sans-serif;
  font-size: 30px;
  top: 10%;
}

.navbar-brand img {
  position: absolute;
  top: 60%;
  left: 62%;
}
.navbar-brand .t2 {
  position: absolute;
  top: 10%;
  left: 73%;
}


.navbar-brand.logo {
  position: absolute;
  width: 250px;
  height: 30px;
  font-family: 'League Spartan', sans-serif;
  font-size: 60px;
  top: 10%;
  color: #000000;

}

.navbar-brand.logo img {
  position: absolute;
  top: 100%;
  left: 72%;
}

.navbar-brand.logo .t2 {
  position: absolute;
  top: 15%;
  left: 83%;
}



.top-nav-collapse {
  background-color: #fff;   /*002e40;  */
}

.top-nav-collapse.navbar .nav-link {
  color: #002e40 !important;
  transition: all 0.5s ease;
}
.top-nav-collapse.navbar .navbar-brand {
  color: #002e40 !important;
}
/*
.navbar.navbar-dark .navbar-brand:focus,
.navbar.navbar-dark .navbar-brand:hover {
    color: var(--bs-blueclair)!important;
}
*/
.navbar .nav-link {
  color: #fff !important;
  font-family: 'Hubballi', sans-serif;
  font-size: 20px;
}

.navbar .nav-link:hover {
 color: var(--bs-blueclair) !important;
 font-family: 'Hubballi', sans-serif;
}
.navbar .nav-link.dropdown-toggle:hover {
  color: var(--colorjaune);
}

.navbar .nav-link:focus {
  color: var(--bs-blueclair) !important;
  font-family: 'Hubballi', sans-serif;
 }

 .navbar .navbar-nav .nav-item.active {
  color: var(--bs-blueclair) !important;
  background-color: transparent !important;
  font-family: 'Hubballi', sans-serif;
 }
/*
 .navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .show > .nav-link {
    color: var(--bs-blueclair) !important;
    background-color: transparent !important;
}
*/
/*
nav ul li a,
nav ul li a:after,
nav ul li a:before {
    transition: all .5s;
}
*/

nav .menulink a,
nav .menulink a:after,
nav .menulink  a:before {
    transition: all .5s;
}

a.nav-link.menu:before {
    position: absolute;
    content: '';
    background: var(--bs-blueclair);
    width: 0px;
    height: 2px;
    bottom: 8px;
}

.navbar-nav .nav-link.menu:hover:before {
    width: 90%;
}

 /* ----- CARDE TRAJET --------- */

.cardtrajet {
  font-size: 18px;
}
.cardnomtrajet {
 display: flex;
 justify-content: space-between;
}
.carddateadresse {
  display: flex;
 justify-content:start;
}

.traittrajet {
  width: 2px;
  height: 80px;
  background-color: var(--colorblack);
  padding: 0;
  margin: 0;
  margin-left: 7px;
  margin-top: -4px;
}
.barretrajet .fa-dot-circle {
  font-size: 15px;
}
.barretrajet .fa-map-marker-alt {
  font-size: 18px;
  margin-left: 1px;
  margin-top: 1px;
}

.datearrivetrajet {
  margin-top: 50px;
}

.monttrajet h6 {
  font-size: 20px;
}

.containertrajet {
  position: relative;
  width: 80%;
  margin: auto;
 }

 .trajetdate,
 .trajetplaces,
 .trajetpri,
 .trajerecap {
  height: 100%;
 }

 .nbreplaces {
  font-size: 60px;
 }

 .htmx-settling .spinner-border {
  opacity: 0;
}
.spinner-border {
  position: absolute;
  align-content: center;
 transition: opacity 3000ms ease-in;
}

/* ---------- LOGIN ----------------- */
.container .cardlogin {
  position: relative;
  width: 60%;
  margin: auto;
}

/* ---------- CARD TRAJET RESERVATION ----------------- */
.pointrassembler {
  font-size: 11px;
}

/*------- COMPTE -----------------  */

.containercompte {
  position: relative;
  width: 50% !important;
  margin: auto;
 }

 .containercompte input[type="text"] {
  font-size: 1.2em;
  font-weight: bold;
 }
 
.container75 {
  position: relative;
  width: 75%;
  margin: auto;
  padding: 20px;
 }

 .containercompte h6 { font-size: 20px; }

 .nav.nav-tabs .nav-item {
   font-size: 20px;
  /* width: 150px; */
   color: var(--colorblack);
 }
 .nav.nav-tabs .nav-item .nav-link {
  background-color: transparent !important;
  border: none;
  color:  var(--colorblack);
 
}

 .nav.nav-tabs .nav-item .nav-link.active {
  background-color: transparent !important;
  border: none;
  color: var(--colorsecond);
  font-weight: bold;
  border-bottom: var(--colorsecond) 3px solid;
}

.fa-edit, 
.fa-angle-right { 
  font-size: 22px; 
}

.btnprofil {
  color: #000000;
  font-size: 20px;
  text-align: left;
  background-color: transparent;
}

.btnprofil:hover {
  color: #000000;
  background-color: var(--colorverclaire);
}

/* ------------ MAP CARTE ----------------------- */

.carte {
  position: relative;
  width: 100%;
  height: 600px;
  margin: auto;
  z-index: 50;
}

.carte .btnadresse {
  z-index: 100;
}

.floating-panel {
  position: absolute;
  top: 15%;
  left: 40%;
  z-index: 5;
 /* padding-top: 5px;*/
  text-align: center;
  /*padding-left: 10px;*/
  /*margin-left: -52px;*/
}

/*--- PLAY SOTRE ----------- */
.playstore {
  position:relative;
  width: 100% !important;
  margin: auto;
  padding: 50px;
  background: url('../img/bg_playstore.png')no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
}

.playstore h3 {
  font-family: 'Kanit', sans-serif;
}

.playstore p {
  font-size: 1.2em;
  font-weight: 500;
}

.playstore .img {
  position: absolute;
  left: 30%;
  top: 37px;
}

.paiemobile {
  margin-top: -45px;
}

/*------ FOOTER --------- */
footer a {
  color: var(--colorcard);
 }

 footer a:hover {
  color: var(--soustitre);
 }

.iconreso a:hover {
  color: var(--iconcolor);
}

