:root{
  --bs-primary: #0c274b !important;
  --bs-primary-rgb: 12, 39, 75 !important;
}

body { padding-top:110px ; overflow-x: hidden; color: #333;}
.header-with-topbar .navbar-top, .header-with-topbar .navbar-fixed-top { top: 34px; }
#body { width: 100vw; height: 100vh; position: fixed; z-index: 1; opacity: 0.08; background-color: beige; }
#contenu { position: relative; z-index: 20;}
.navbar .logo img {  transition: 0.5s ease-in-out !important;  display: block;  max-height: none; max-width: 100px; }
.navbar .logo { padding-top: 5px;}
header nav .navbar-nav li a {margin: 0 16px;}
header nav.navbar .navbar-nav > li > a, nav.navbar.bootsnav ul.nav > li > a {color: var(--bs-primary);font-weight: 600; letter-spacing: 1px;}

.color-secondaire { color: #197343; }
.bg-secondaire { background: #197343;}

.btn.btn-secondaire {
    background: #197343;
    border-color: #197343;
    color: #ffffff;
}
.btn.btn-secondaire:hover {
    background: transparent;
    border-color: #197343;
    color: #ffffff;
}

.blog-post-style7:hover {
  background-color: #071a33 !important;
}

a.text-link-white-secondaire:hover, a.text-link-white-secondaire:hover i, a.text-link-white-secondaire:focus, a.text-link-white-secondaire:focus i { color: #197343; }
nav.navbar.sidebar-nav { box-shadow: 0px 0px 10px rgba(0,0,0,0.5); padding-top:20px; }
.fixed .logo { padding: 0px !important; }
.fixed .logo img { max-width: 85px; }
.footer-logo { max-height: 150px; }

a:hover { color: var(--base-color); }

footer a, footer a:active, footer a:focus {
  color: #dddddd;
  text-decoration: none;
}

.box-link{ width: 100%; position: absolute; height: 100%; top: 0; left: 0; }

.opacity-full2{
  position: absolute; height: 100%; width: 100%; opacity: 0.5; top:0; left: 0;
}

.diapo-texte { height: 80vh; }
.swiper-slide .title-large  {  font-size:35px; line-height:35px }
@media (min-width:600px) {  .swiper-slide .title-large  { font-size:45px; line-height:45px} }
@media (min-width:991px) {  .swiper-slide .title-large  { font-size:53px; line-height:53px;  } }
@media (min-width:1223px) {  .swiper-slide .title-large  { font-size:60px; line-height:60px} }

@media (max-width:991px) { 

  body { padding-top:100px; }

  #diapo-texte { background: var(--base-color); } 
  .diapo-texte { height: auto !important; }  
  .swiper-slide .title-large  { text-align: center !important; } 

  header nav.navbar .navbar-nav > li > a, nav.navbar.bootsnav ul.nav > li > a {color: white;font-weight: 600; letter-spacing: 1px;}

}

@media (max-width: 1198px) {
  nav.navbar.bootsnav.no-full .navbar-collapse {
      max-height: 635px;
      overflow-y: auto !important;
  }
}

h1 { font-size:25px; line-height:25px } h2 {  font-size: 20px;  line-height: 20px;}
@media (min-width:600px) {  h1 { font-size:30px; line-height:30px }  h2 {  font-size: 25px;  line-height: 25px;} }
@media (min-width:991px) {  h1 { font-size:35px; line-height:35px }  h2 {  font-size: 30px;  line-height: 30px;} }
@media (min-width:1223px) { h1 { font-size:60px; line-height:60px }  h2 {  font-size: 50px;  line-height: 50px;} }

.relative { position: relative;}
/* LAODING SITE */
#loading_site {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999999;
  display: block;
}
#loading_haut {  position: absolute;  width: 50vw;  height: 100vh;  top: 0;  left: 0;  z-index: 2;  background-color: #fff;  transition: 1.2s ease-out;}
#loading_haut img {  display:block; position: absolute;  width: 250px;  transition: 1.2s; left: 50%; transform: translateX(-50%); top: 100px; }
#loading_bas {  position: absolute;  width: 50vw;  height: 100vh;  top: 0;  right: 0;  z-index: 2;  background-color:#fff;  transition: 1.2s ease-out; }
/* #loading_bas img { display: block; position: absolute; bottom: 0; left:0; margin-left:75px; margin-bottom: 130px; z-index: 9; height: 40px;} */
#loading_logo {  position: absolute;  left: 50%;  top: 50%;  transform: translate(-50%, -50%);  text-align: center;  z-index: 5;}
/* #loading_haut.invisible {  left: -100%;}
#loading_bas.invisible {  right: -100%;} */
#loading_haut.invisible {  opacity: 0;}
#loading_bas.invisible {  opacity: 0;}
#loading_logo.invisible img {  opacity: 0;}

.spinner {
  border-width: 6px;
  border-style: solid;
  border-color: var(--base-color) var(--base-color) var(--base-color) transparent;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  animation: spin 5s infinite;
  position: relative;
  margin: 30px auto;
}
.spinner:before,
.spinner :after {
  content: "";
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  left: 3px;
}
.spinner :before {
  top: 3px;
}
.spinner :after {
  bottom: 3px;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}

@font-face 
{
    font-family: "fontello";
    src: url("./fonts/fontello.eot?60183468");
    src: url("./fonts/fontello.eot?60183468#iefix") format("embedded-opentype"),
      url("./fonts/fontello.woff?60183468") format("woff"),
      url("./fonts/fontello.ttf?60183468") format("truetype"),
      url("./fonts/fontello.svg?60183468#fontello") format("svg");
    font-weight: normal;
    font-style: normal;
}

.demo-icon {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: 0.2em;
  text-align: center;
  opacity: .8;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  font-size: 120%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3);
}

.section_video{
  height: 600px;
}


/* Tarifs */

.table_tarif {
    width: 100% !important;
    height: auto !important;
    border-width: 0;
}
.table_tarif tr {
    width: 100% !important;
    height: auto !important;
}
.table_tarif tr {
    background-color: none;
}
.table_tarif td {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
    padding: 0px;
    font-size: 1.125rem;
    height: auto !important;
}
.table_tarif td:last-child {
    text-align: right;
    font-size: 0.875rem;
    font-weight: 300;
    position: relative;
    border-bottom: 8px solid rgba(200, 33, 40, 0.2); 
    margin-bottom: 3rem;
    padding-bottom: 1rem;
}
.table_tarif td:last-child::before {
    content: "Tarifs";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}

.prices {
    display: grid;
    gap: 6rem;
    border: none;
}

.prices__item {
    padding-bottom: 1rem;
    border-bottom: 8px solid rgba(200, 33, 40, 0.2);
    margin-bottom: 3rem;
}
.prices__item:last-of-type {
  padding-bottom: 0;
  border-bottom: none;
  margin-bottom: 0;
}

.prices__label {
    font-size: 1.125rem;
}

.prices__price {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 0.875rem;
    font-weight: 300;
}

.prices__from {
    text-transform: uppercase;
    letter-spacing: 1px;
}

@media (min-width:991px) {
    .prices__item,
    .prices__item:last-of-type {
        display: flex;
        justify-content: space-between;
        align-items: center;

        padding: 4rem;
        border-bottom: 0;
        margin-bottom: 0;
        background-color: rgba(200, 33, 40, 0.3);
    }

    .prices__item:nth-child(2n) {
        background-color: rgba(200, 33, 40, 0.2);
    }

    .table_tarif td {
        display: table-cell;
        box-sizing: content-box;
        width: 50% !important;
        padding: 4rem;
        padding: 16px;
        border-bottom: 0;
        margin-bottom: 0;
    }
    .table_tarif td:last-child {
        width: 50% !important;
        text-align: right;
        border: 0;
    }
    .table_tarif td:last-child::before {
        display: none;
    }
    .table_tarif tr {
        background-color: rgba(200, 33, 40, 0.3);
    }
    .table_tarif tr:nth-child(2n) {
        background-color: rgba(200, 33, 40, 0.2);
    }
}
