/* TAILLES D'ECRAN */
/* TAILLES D'ECRAN */
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-Black.ttf");
  font-weight: 900;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-BlackItalic.ttf");
  font-style: italic;
  font-weight: 900;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-Bold.ttf");
  font-weight: 700;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-BoldItalic.ttf");
  font-style: italic;
  font-weight: 700;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro.ttf");
  font-weight: 500;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-Italic.ttf");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-Medium.ttf");
  font-weight: 300;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-MediumItalic.ttf");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-Light.ttf");
  font-weight: 100;
}
@font-face {
  font-family: "DINPro";
  src: url("../fonts/DINPro-LightItalic.ttf");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedBlack.ttf");
  font-weight: 900;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedBlackItalic.ttf");
  font-style: italic;
  font-weight: 900;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedBold.ttf");
  font-weight: 700;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedBoldItalic.ttf");
  font-style: italic;
  font-weight: 700;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedRegular.ttf");
  font-weight: 500;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedItalic.ttf");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedMedium.ttf");
  font-weight: 300;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedMediumItalic.ttf");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedLight.ttf");
  font-weight: 100;
}
@font-face {
  font-family: "DINPro-Condensed";
  src: url("../fonts/DINPro-CondensedLightItalic.ttf");
  font-weight: 100;
  font-style: italic;
}
* {
  font-family: "Ubuntu";
  font-size: 12px;
  line-height: 18px;
}

html, body {
  height: 100vh;
  overflow: auto;
  min-width: 320px;
}

body {
  display: flex;
  flex-direction: column;
  background: #F6F6F6;
}

main {
  flex: 1;
  padding-bottom: 0.25rem;
}

.sf-dump {
  margin-bottom: 0 !important;
}

.adblock {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  background: rgba(0, 0, 0, 0.95);
  z-index: 1000000;
}

.bg-theme-night {
  background: #0C2340 !important;
}

.bg-theme-primary {
  background: #236192 !important;
}

.bg-theme-secondary, .nav-pills .nav-item .nav-link.active {
  background: #78BE20 !important;
}

.bg-theme-gray {
  background: #9ea2a2 !important;
}

.bg-theme-light-gray {
  background: #ECECEC !important;
}

.bg-theme-light {
  background: #F6F6F6 !important;
}

.text-night {
  color: #0C2340 !important;
}

.text-primary {
  color: #236192 !important;
}

.text-secondary {
  color: #78BE20 !important;
}

.text-gray {
  color: #9ea2a2 !important;
}

.text-light {
  color: #F6F6F6 !important;
}

.bg-theme-primary-gradient {
  background: linear-gradient(45deg, #0C2340, #236192);
}

.bg-theme-primary-secondary-gradient, .pagination .page-link.active {
  background: linear-gradient(45deg, #236192, #78BE20);
}

.hover-zoom {
  transition: all 0.3s cubic-bezier(0, 0, 0.5, 1) !important;
  cursor: pointer !important;
}
.hover-zoom:hover {
  transform: scale3d(1.01, 1.01, 1.01) !important;
}

.rounded, .btn, .hoverable:hover, .accordion-button, .table, .tab-link {
  border-radius: 0px !important;
  overflow: hidden !important;
}

.rounded-left {
  border-top-left-radius: 0px !important;
  border-bottom-left-radius: 0px !important;
}

.rounded-right {
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}

.rounded-top {
  border-top-left-radius: 0px !important;
  border-top-right-radius: 0px !important;
}

.rounded-bottom {
  border-bottom-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}

.border {
  border: 1px solid #F6F6F6 !important;
}

.border-top {
  border-top: 1px solid #F6F6F6 !important;
}

.border-bottom {
  border-bottom: 1px solid #F6F6F6 !important;
}

.border-right {
  border-right: 1px solid #F6F6F6 !important;
}

.disabled {
  background: #9ea2a2 !important;
  color: #F6F6F6 !important;
}

.row {
  margin-right: 0;
  margin-left: 0;
}

h1, h2, h3, h4, h5, h6 {
  text-align: center;
}

h1 {
  margin: 3rem 0;
  padding: 0;
}

h2 {
  text-align: start;
  margin: 2.5rem 0;
}
h2 i {
  font-size: 24px;
}

p {
  text-align: justify;
}
@media only screen and (max-width: 575px) {
  p {
    font-size: 11px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  p {
    font-size: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  p {
    font-size: 13px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  p {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  p {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1400px) {
  p {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  p {
    line-height: 13px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  p {
    line-height: 14px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  p {
    line-height: 15px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  p {
    line-height: 16px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  p {
    line-height: 17px;
  }
}
@media only screen and (min-width: 1400px) {
  p {
    line-height: 18px;
  }
}

.link-hoverable:hover {
  text-decoration: underline;
}

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

/**
 * Text
 */
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xxl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-giant {
  font-size: 3rem;
  line-height: 4rem;
}

.font-light {
  font-weight: 100 !important;
}

.font-medium {
  font-weight: 300 !important;
}

.font-regular {
  font-weight: 500 !important;
}

.font-bold {
  font-weight: 700 !important;
}

.font-black {
  font-weight: 900 !important;
}

/**
 * Tabs
 */
.nav-pills {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow-x: auto;
}
.nav-pills .nav-item {
  margin: 0;
}
.nav-pills .nav-item:first-child {
  margin-left: 0;
}
.nav-pills .nav-item:last-child {
  margin-right: 0;
}
.nav-pills .nav-item .nav-link {
  background: white;
  color: #9ea2a2;
  text-transform: uppercase;
  white-space: nowrap;
  position: relative;
}
.nav-pills .nav-item .nav-link:hover {
  background-color: #F6F6F6;
}
.nav-pills .nav-item .nav-link.active {
  position: relative;
  color: white !important;
}

.navbar {
  z-index: 3;
}

.subnav {
  background: #236192 !important;
  z-index: 2;
}
.subnav .nav-link {
  border: none !important;
}
.subnav .nav-link.active {
  color: white;
  background: transparent !important;
  position: relative;
}
.subnav .nav-link.active:after {
  content: " ";
  position: absolute;
  bottom: 1px;
  height: 3px;
  left: 0;
  width: 100%;
  background: #78BE20;
}

/**
 * Medias
 */
img {
  border-radius: 0px;
}

/**
 * Forms
 */
.form-control, .form-select, .form-submit {
  border-radius: 0px;
}

.form-submit, [type=submit] {
  border-radius: 0px;
  background: black;
  font-weight: 500;
  border: none;
  padding: 1rem;
}
.form-submit:hover, [type=submit]:hover {
  background: #78BE20;
  color: white;
}

.table {
  overflow: initial !important;
  border-collapse: collapse;
}
.table tr {
  border-bottom: 1px solid #ECECEC;
}

.table-hover tr {
  cursor: pointer;
}
.table-hover tr[aria-expanded=true] {
  border-top: 1px solid #9ea2a2;
}
.table-hover tr[aria-expanded=true] + tr .accordion-body {
  border-bottom: 1px solid #9ea2a2;
}

.form-floating .form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23444' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position-x: 100% !important;
  background-position-y: 50% !important;
  padding-right: 30px;
}
.form-floating .form-select, .form-floating .form-control {
  font-weight: 600;
  color: black;
  font-size: 14px;
  line-height: 20px;
  border: none;
  background-color: white;
  padding: 20px 20px 5px 13px;
}
.form-floating .form-select.form-select-center, .form-floating .form-control.form-select-center {
  text-align: center;
}
.form-floating .form-select:disabled ~ label, .form-floating .form-control:disabled ~ label {
  background: #F6F6F6 !important;
  color: #9ea2a2 !important;
}
.form-floating .form-select ~ label, .form-floating .form-control ~ label {
  transform: scale(0.75) translateY(0rem) translateX(0rem) !important;
  opacity: 1 !important;
  font-size: 12px;
  text-transform: uppercase;
  color: #236192 !important;
  height: auto;
  margin: 2px 0 0 6px;
  padding: 0;
  border-radius: 0px 0 0px 0;
  width: auto;
}

.accordion-button {
  border-radius: 0px;
}
.accordion-button::after {
  background: none;
  content: "\f105";
  font-family: "FontAwesome";
  font-size: 13px;
  text-align: center;
}
.accordion-button:not(.collapsed)::after {
  background: none;
  transform: rotateZ(90deg) !important;
}
.accordion-button:hover {
  background: #F6F6F6;
}
.accordion-button:focus {
  box-shadow: none;
}

.form-submit {
  background: black;
  border-radius: 0px;
}
.form-submit:hover {
  background: #78BE20;
}

.accordion-collapse, .accordion-body {
  border-radius: 0px;
}

.list-group-item {
  border: none;
}

.modal-content {
  padding: 0px;
  border-radius: 0px !important;
  border: none;
}

.modal-header {
  background: #0C2340;
  color: white;
  border: none;
}
.modal-header .close {
  color: white;
  background: transparent;
}
.modal-header .close span {
  font-size: 20px;
}
.modal-header .close:hover {
  background: transparent !important;
  color: #78BE20 !important;
}

.hoverable:hover {
  background: #F6F6F6;
  cursor: pointer;
}

.row.border-bottom:last-child {
  border-bottom: none !important;
}

.bg-parallax {
  background-attachment: fixed !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.voile {
  background: rgba(0, 0, 0, 0.8);
}

.modal-body img {
  max-width: 100%;
}

.progress .progress-bar {
  background-color: #236192;
}

.pagination .page-link {
  border-radius: 0px;
  border: none;
  background: white;
  color: #9ea2a2;
}
.pagination .page-link.disabled {
  background-color: #9ea2a2;
  color: #F6F6F6;
}
.pagination .page-link:hover {
  background-color: #F6F6F6;
  color: #9ea2a2;
}
.pagination .page-link.active {
  position: relative;
  color: white !important;
}

.shadow, .btn, .table, .form-floating .form-select, .form-floating .form-control {
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.04) !important;
}

.swiper {
  width: 100%;
  height: 100%;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper-buttons {
  height: 60px;
  position: absolute;
  top: 0;
  width: 100px;
  margin-top: -48px;
  right: 0;
}

.btn {
  background: white;
  border: none;
}
.btn:hover {
  background-color: #78BE20 !important;
  color: white !important;
}
.btn:active, .btn:focus {
  border: none;
  background: #F8F9FA;
}

.card-header, .card-body, .card-footer {
  border: none !important;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

.mt-10 {
  margin-top: 6rem !important;
}

.mb-10 {
  margin-bottom: 6rem !important;
}

.form-floating > .form-control-plaintext ~ label::after, .form-floating > .form-control:focus ~ label::after, .form-floating > .form-control:not(:placeholder-shown) ~ label::after, .form-floating > .form-select ~ label::after {
  display: none;
}

.loadingRow {
  position: relative;
}
.loadingRow:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: gradient;
  animation-timing-function: linear;
  background: linear-gradient(to right, white 8%, #F0F0F0 18%, white 33%);
  background-size: 300% 100%;
}

@keyframes gradient {
  0% {
    background-position: -150% 0;
  }
  100% {
    background-position: 150% 0;
  }
}
.col-fixed {
  position: sticky;
  left: 0;
}

.palmares-line:nth-child(odd) {
  background-color: #F6F6F6;
}

.modal-content {
  width: auto;
  margin: 0 auto;
}

.modal-dialog {
  max-width: 80%;
  margin: 20px auto;
}

.image-link {
  cursor: pointer;
  width: 100%;
  height: 100%;
  text-align: center;
}
.image-link:hover {
  color: #78BE20 !important;
}
