/* COLORS */

/* Variables Bootstrap */

:root {
  --bs-primary: #c19864;
  --bs-primary-rgb: 193, 152, 100;
  --bs-link-color: #c1451a;
  --bs-link-color-rgb: 193, 69, 26;
  --bs-secondary: #c1451a;
  --bs-secondary-rgb: 193, 69, 26;
  --bs-light: #fff9ef;
  --bs-light-rgb: 255, 249, 239;
  --bs-dark: #26221e;
  --bs-dark-rgb: 38, 34, 30;
  --bs-gray-dark: #514d48;
  --bs-gray-dark-rgb: 81, 77, 72;
}

/* Gris foncé : fond des visuels et des vignettes */
.bg-gray-dark {
  background-color: rgba(var(--bs-gray-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Body */

body {
  color: #26221e;
}

.bg-body {
  background-color: #fff9ef !important;
}

/* Primary */

a {
  color: #c1451a !important;
}

.text-primary, .link-primary, .btn-outline-primary, .btn-link {
  color: #c19864 !important;
}

.bg-primary, .alert-primary, .btn-outline-primary:hover, .page-link.current {
  background-color: #c19864 !important;
}

.btn-outline-primary:hover,
.btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  color: #ffffff !important;
}

.btn-outline-primary, .alert-primary, .border-primary, .page-link.current {
  border-color: #c19864 !important;
}

.overlay-primary::before {
  background-color: #c19864;
}

.overlay-gradient-primary-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c19864));
  background-image: linear-gradient(to bottom, transparent, #c19864);
}

@media (min-width: 768px) {
  .overlay-gradient-primary-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #c19864), to(#c19864));
    background-image: linear-gradient(to right, transparent, #c19864 50%, #c19864);
  }
}

.overlay-gradient-primary-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c19864));
  background-image: linear-gradient(to bottom, transparent, #c19864);
}

.overlay-gradient-primary-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c19864));
  background-image: linear-gradient(to bottom, transparent, #c19864);
}

@media (min-width: 768px) {
  .overlay-gradient-primary-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #c19864), to(#c19864));
    background-image: linear-gradient(to left, transparent, #c19864 50%, #e00c1e);
  }
}

/* Boutons : fond secondary */

.btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #c1451a !important;
  border-color: #c1451a !important;
}

/* Secondary */

.text-secondary, .link-secondary, .btn-outline-secondary {
  color: #c1451a !important;
}

.bg-secondary, .btn-secondary, .alert-secondary, .btn-outline-secondary:hover {
  background-color: #c1451a !important;
}

.btn-outline-secondary:hover {
  color: #ffffff !important;
}

.btn-secondary, .btn-outline-secondary, .alert-secondary, .border-secondary {
  border-color: #c1451a !important;
}

.overlay-secondary::before {
  background-color: #c1451a;
}

.overlay-gradient-secondary-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c1451a));
  background-image: linear-gradient(to bottom, transparent, #c1451a);
}

@media (min-width: 768px) {
  .overlay-gradient-secondary-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #c1451a), to(#c1451a));
    background-image: linear-gradient(to right, transparent, #c1451a 50%, #c1451a);
  }
}

.overlay-gradient-secondary-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c1451a));
  background-image: linear-gradient(to bottom, transparent, #c1451a);
}

.overlay-gradient-secondary-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#c1451a));
  background-image: linear-gradient(to bottom, transparent, #c1451a);
}

@media (min-width: 768px) {
  .overlay-gradient-secondary-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #c1451a), to(#c1451a));
    background-image: linear-gradient(to left, transparent, #c1451a 50%, #c1451a);
  }
}

/* Success */

.text-success, .link-success, .btn-outline-success {
  color: #93c463 !important;
}

.bg-success, .btn-success, .alert-success, .btn-outline-success:hover {
  background-color: #93c463 !important;
}

.btn-outline-success:hover {
  color: #ffffff !important;
}

.btn-success, .btn-outline-success, .alert-success, .border-success {
  border-color: #93c463 !important;
}

.overlay-success::before {
  background-color: #93c463;
}

.overlay-gradient-success-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#93c463));
  background-image: linear-gradient(to bottom, transparent, #93c463);
}

@media (min-width: 768px) {
  .overlay-gradient-success-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #93c463), to(#93c463));
    background-image: linear-gradient(to right, transparent, #93c463 50%, #93c463);
  }
}

.overlay-gradient-success-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#93c463));
  background-image: linear-gradient(to bottom, transparent, #93c463);
}

.overlay-gradient-success-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#93c463));
  background-image: linear-gradient(to bottom, transparent, #93c463);
}

@media (min-width: 768px) {
  .overlay-gradient-success-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #93c463), to(#93c463));
    background-image: linear-gradient(to left, transparent, #93c463 50%, #93c463);
  }
}

/* Danger */

.text-danger, .link-danger, .btn-outline-danger {
  color: #dc3545 !important;
}

.bg-danger, .btn-danger, .alert-danger, .btn-outline-danger:hover {
  background-color: #dc3545 !important;
}

.btn-outline-danger:hover {
  color: #ffffff !important;
}

.btn-danger, .btn-outline-danger, .alert-danger, .border-danger {
  border-color: #dc3545 !important;
}

.overlay-danger::before {
  background-color: #dc3545;
}

.overlay-gradient-danger-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#dc3545));
  background-image: linear-gradient(to bottom, transparent, #dc3545);
}

@media (min-width: 768px) {
  .overlay-gradient-danger-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #dc3545), to(#dc3545));
    background-image: linear-gradient(to right, transparent, #dc3545 50%, #dc3545);
  }
}

.overlay-gradient-danger-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#dc3545));
  background-image: linear-gradient(to bottom, transparent, #dc3545);
}

.overlay-gradient-danger-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#dc3545));
  background-image: linear-gradient(to bottom, transparent, #dc3545);
}

@media (min-width: 768px) {
  .overlay-gradient-danger-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #dc3545), to(#dc3545));
    background-image: linear-gradient(to left, transparent, #dc3545 50%, #dc3545);
  }
}

/* Warning */

.text-warning, .link-warning, .btn-outline-warning {
  color: #f4d467 !important;
}

.bg-warning, .btn-warning, .alert-warning, .btn-outline-warning:hover {
  background-color: #f4d467 !important;
}

.btn-outline-warning:hover {
  color: #ffffff !important;
}

.btn-warning, .btn-outline-warning, .alert-warning, .border-warning {
  border-color: #f4d467 !important;
}

.overlay-warning::before {
  background-color: #f4d467;
}

.overlay-gradient-warning-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#f4d467));
  background-image: linear-gradient(to bottom, transparent, #f4d467);
}

@media (min-width: 768px) {
  .overlay-gradient-warning-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #f4d467), to(#f4d467));
    background-image: linear-gradient(to right, transparent, #f4d467 50%, #f4d467);
  }
}

.overlay-gradient-warning-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#f4d467));
  background-image: linear-gradient(to bottom, transparent, #f4d467);
}

.overlay-gradient-warning-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#f4d467));
  background-image: linear-gradient(to bottom, transparent, #f4d467);
}

@media (min-width: 768px) {
  .overlay-gradient-warning-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #f4d467), to(#f4d467));
    background-image: linear-gradient(to left, transparent, #f4d467 50%, #f4d467);
  }
}

/* Info */

.text-info, .link-info, .btn-outline-info {
  color: #2779b6 !important;
}

.bg-info, .btn-info, .alert-info, .btn-outline-info:hover {
  background-color: #2779b6 !important;
}

.btn-outline-info:hover {
  color: #ffffff !important;
}

.btn-info, .btn-outline-info, .alert-info, .border-info {
  border-color: #2779b6 !important;
}

.overlay-info::before {
  background-color: #2779b6;
}

.overlay-gradient-info-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#2779b6));
  background-image: linear-gradient(to bottom, transparent, #2779b6);
}

@media (min-width: 768px) {
  .overlay-gradient-info-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #2779b6), to(#2779b6));
    background-image: linear-gradient(to right, transparent, #2779b6 50%, #2779b6);
  }
}

.overlay-gradient-info-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#2779b6));
  background-image: linear-gradient(to bottom, transparent, #2779b6);
}

.overlay-gradient-info-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#2779b6));
  background-image: linear-gradient(to bottom, transparent, #2779b6);
}

@media (min-width: 768px) {
  .overlay-gradient-info-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #2779b6), to(#2779b6));
    background-image: linear-gradient(to left, transparent, #2779b6 50%, #2779b6);
  }
}

/* Light */

.text-light, .link-light, .btn-outline-light {
  color: #fff9ef!important
}

.bg-light, .btn-light, .alert-light, .form-control {
  background-color: #fff9ef!important;
}

.btn-outline-light:hover {
  background-color: rgba(255,255,255,0);
}

.btn-light, .btn-outline-light, .alert-light, .border-light, .form-control {
  border-color: #fff9ef !important;
}

.overlay-light::before {
  background-color: #fff9ef;
}

.overlay-gradient-light-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff9ef));
  background-image: linear-gradient(to bottom, transparent, #fff9ef);
}

@media (min-width: 768px) {
  .overlay-gradient-light-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #fff9ef), to(#fff9ef));
    background-image: linear-gradient(to right, transparent, #fff9ef 50%, #fff9ef);
  }
}

.overlay-gradient-light-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff9ef));
  background-image: linear-gradient(to bottom, transparent, #fff9ef);
}

.overlay-gradient-light-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff9ef));
  background-image: linear-gradient(to bottom, transparent, #fff9ef);
}

@media (min-width: 768px) {
  .overlay-gradient-light-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #fff9ef), to(#fff9ef));
    background-image: linear-gradient(to left, transparent, #fff9ef 50%, #fff9ef);
  }
}

/* Dark */

.text-dark, .link-dark, .form-control, .form-control::-webkit-input-placeholder, .form-control::-moz-placeholder, .form-control:-ms-input-placeholder, .form-control::-ms-input-placeholder, .form-control::placeholder {
  color: #26221e!important;
}

.btn-dark, .alert-dark, .btn-outline-dark:hover {
  background-color: #26221e!important;
}

.btn-outline-dark:hover {
  background-color: rgba(0,0,0,0);
}

.btn-dark, .btn-outline-dark, .alert-dark, .border-dark {
  border-color: #26221e !important;
}

.overlay-dark::before {
  background-color: #26221e;
}

.overlay-gradient-dark-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#26221e));
  background-image: linear-gradient(to bottom, transparent, #26221e);
}

@media (min-width: 768px) {
  .overlay-gradient-dark-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #26221e), to(#26221e));
    background-image: linear-gradient(to right, transparent, #26221e 50%, #26221e);
  }
}

.overlay-gradient-dark-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#26221e));
  background-image: linear-gradient(to bottom, transparent, #26221e);
}

.overlay-gradient-dark-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#26221e));
  background-image: linear-gradient(to bottom, transparent, #26221e);
}

@media (min-width: 768px) {
  .overlay-gradient-dark-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #26221e), to(#26221e));
    background-image: linear-gradient(to left, transparent, #26221e 50%, #26221e);
  }
}

/* White */

.text-white, .link-white, .btn-outline-white, .btn-outline-black:hover, .btn-outline-dark:hover {
  color: #ffffff !important;
}

.bg-white, .btn-white {
  background-color: #ffffff !important;
}

.btn-outline-white:hover {
  background-color: rgba(255,255,255,0);
}

.btn-white, .btn-outline-white, .border-white {
  border-color: #ffffff !important;
}

.overlay-white::before {
  background-color: #fff;
}

.overlay-gradient-white-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff));
  background-image: linear-gradient(to bottom, transparent, #fff);
}

@media (min-width: 768px) {
  .overlay-gradient-white-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #fff), to(#fff));
    background-image: linear-gradient(to right, transparent, #fff 50%, #fff);
  }
}

.overlay-gradient-white-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff));
  background-image: linear-gradient(to bottom, transparent, #fff);
}

.overlay-gradient-white-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff));
  background-image: linear-gradient(to bottom, transparent, #fff);
}

@media (min-width: 768px) {
  .overlay-gradient-white-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, #fff), to(#fff));
    background-image: linear-gradient(to left, transparent, #fff 50%, #fff);
  }
}

/* Black */

.text-black, .link-black, .btn-outline-black {
  color: #000000 !important;
}

.bg-black, .btn-black, .btn-outline-black:hover {
  background-color: #000000 !important;
}

.btn-outline-black:hover {
  background-color: rgba(0,0,0,0);
}

.btn-outline-black:hover {
  color: #ffffff !important;
}

.btn-black, .btn-outline-black, .border-black {
  border-color: #000000 !important;
}

.overlay-black::before {
  background-color: #000000;
}

.overlay-gradient-black-right::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--bs-dark)));
  background-image: linear-gradient(to bottom, transparent, var(--bs-dark));
}

@media (min-width: 768px) {
  .overlay-gradient-black-right::before {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, var(--bs-dark)), to(var(--bs-dark)));
    background-image: linear-gradient(to right, transparent, var(--bs-dark) 50%, var(--bs-dark));
  }
}

.overlay-gradient-black-down::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--bs-dark)));
  background-image: linear-gradient(to bottom, transparent, var(--bs-dark));
}

.overlay-gradient-black-left::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--bs-dark)));
  background-image: linear-gradient(to bottom, transparent, var(--bs-dark));
}

@media (min-width: 768px) {
  .overlay-gradient-black-left::before {
    background-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(50%, var(--bs-dark)), to(var(--bs-dark)));
    background-image: linear-gradient(to left, transparent, var(--bs-dark) 50%, var(--bs-dark));
  }
}

/* Muted */

.text-muted, .link-muted {
  color: #6c757d!important;
}