
:root {
    --bs-primary: #0659a1;
}

.btn-primary {
  --bs-btn-bg: #0659a1;
  --bs-btn-border-color: #0659a1;
  --bs-btn-disabled-bg: #0659a1;
  --bs-btn-disabled-border-color: #0659a1;
}
.btn-primary:hover {
  background-color: var(--bs-btn-bg);
}

.pagination {
  --bs-pagination-active-bg: #0659a1;
  --bs-pagination-color: #1b4381;
}

.pagination a:hover {
  color: unset;
}

.pagination .active a:hover {
  color: white !important;
}


@font-face {
    font-family: 'GrilledCheese';
    src: url('../fonts/GrilledCheeseBTN.woff2') format('woff2'),
    url('../fonts/GrilledCheeseBTN.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'GrilledCheese';
    src: url('../fonts/GrilledCheeseBTNCnBold.woff2') format('woff2'),
    url('../fonts/GrilledCheeseBTNCnBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'AgencyFB';
    src: url('../fonts/AgencyFB-Bold.woff2') format('woff2'),
    url('../fonts/AgencyFB-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FengardoNeue';
    src: url('../fonts/FengardoNeue_Regular.otf') format('opentype'),
    url('../fonts/FengardoNeue_Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FengardoNeue';
    src: url('../fonts/FengardoNeue_Black.otf') format('opentype'),
    url('../fonts/FengardoNeue_Black.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


body {
    color: #1b4381;
    font-family: 'Inter', sans-serif;
    background-color: #ffffff;
}

.text-orange {
    color: #e45927;
}

a.link-orange,
a.link-orange:hover,
a.link-orange:active {
    color: #e45927 !important;
}

.text-grey-blue {
    color: #44788e;
}

.text-deep-blue {
    color: #0659a1;
}

.text-light-grey {
    color: #EEEEF1;
}

.text-very-light-grey {
    color: #F8F8F9;
}

.text-extrement-light-grey {
    color: #FCFCFC;;
}

.text-green {
    color: #466754;
}

a:hover.text-light-green,
.text-light-green {
    color: #a0d4b5 !important;
}

.text-famille-1 {
    font-family: 'AgencyFB', sans-serif;
}

.text-famille-2 {
    font-family: 'GrilledCheese', sans-serif;
}

a {
    color: #1b4381;
}

a:hover,
a:active,
a.btn:hover,
a.btn:active {
    color: #0659a1 !important;
}

a.navbar-brand img:hover {
    filter: brightness(1.24);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'FengardoNeue', serif;
    font-weight: 700;
}

.display-1, .display-2, .display-3, .display-4, .display-5, .display-6, .display-7, .display-8, .display-9 {
    font-family: 'FengardoNeue', sans-serif;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: -0.03em;
    line-height: 1;
}

.display-7 {
    font-size: calc(1.325rem + 0.9vw);
    font-weight: 300;
    line-height: 1.2;
}

.display-8 {
    font-size: calc(1.275rem + 0.3vw);
    font-weight: 300;
    line-height: 1.2;
}

.display-9 {
    font-size: calc(1.27rem + 0.1vw);
    font-weight: 300;
    line-height: 1.2;
}


/* .bg-menu{
background-color: #1D387C !important;
} */

.bg-menu,
.bg-gradient-pattern {
    background-color: #0659a1;
    background-size: cover;
}


.bg-footer {
    background-color: #0659a1;
    background-size: cover;
}


.bg-dark-blue {
    background-color: #1D387C;
}

.bg-grey-blue {
    background-color: #44788e;
}

.bg-deep-blue {
    background-color: #0659a1;
}

.bg-pure-blue {
    background: rgb(0, 0, 255);
}

.bg-light-blue {
    background-color: #1dbed2;
}

.bg-popsicle-orange {
    background-color: #F47234;
}

.bg-orange {
    background-color: #e45927;
}

.bg-light-grey {
    background-color: #EEEEF1;
}

.bg-very-light-grey {
    background-color: #F8F8F9;
}

.bg-extreme-light-grey {
    background-color: #FCFCFC;;
}

.bg-dark-grey {
    background-color: #393D3E;;
}

.bg-green {
    background-color: #466754;
}

.bg-light-green {
    background-color: #a0d4b5;
}

.bg-tetro-green {
    background-color: #92c1b0;
}

.btn-grey-blue {
    color: #fff;
    background-color: #44788e;
    border-color: #44788e !important;
}

.btn-deep-blue {
    color: #fff;
    background-color: #0659a1;
    border-color: #0659a1 !important;
}

a.btn-grey-blue:hover {
    color: #fff !important;
    background-color: #458AA7;
    border-color: #458AA7 !important;
}

a.btn-deep-blue:hover {
    color: #fff !important;
    background-color: #458AA7;
    border-color: #458AA7 !important;
}

.btn-orange {
    color: #fff;
    background-color: #e45927;
    border-color: #e45927 !important;
}

.btn-orange .bi {
    opacity: 0.95;
}

.btn-orange .btn-text {
    opacity: 0.99;
}

a.btn-orange:hover .bi,
a.btn-orange:hover .btn-text {
    opacity: 1;
    text-shadow: 0.5px 0.5px rgba(0, 0, 0, 0.2);;
}

.btn-dark-blue {
    color: #fff;
    background-color: #1b4381;
    border-color: #1b4381 !important;
}

a.btn-dark-blue:hover,
a.btn-dark-blue:active {
    color: #fff !important;
    background-color: #0659a1;
    border-color: #0659a1 !important;
}

.btn-pure-blue {
    color: #fff;
    background: rgb(0, 0, 255);
    border-color: rgb(0, 0, 255) !important;
}

.btn-mid-blue {
    color: #fff;
    background-color: #0044cc;
    border-color: #0044cc !important;
}

.btn-light-blue {
    color: #1D387C;
    background-color: #1dbed2;
    border-color: #1dbed2 !important;
}

.border-orange {
    border-color: #e45927 !important;
}

.border-grey-blue {
    border-color: #458AA7 !important;
}

.border-deep-blue {
    border-color: #0659a1 !important;
}

.border-light-grey {
    border-color: #EEEEF1 !important;
}

.border-dark-blue {
    border-color: #1D387C !important;
}

.border-pure-blue {
    border-color: rgb(0, 0, 255) !important;
}

.border-light-blue {
    border-color: #1dbed2 !important;
}

.border-green {
    border-color: #466754 !important;
}

.border-light-green {
    border-color: #a0d4b5 !important;
}

.border-tetro-green {
    border-color: #92c1b0 !important;
}

.text-dark-blue {
    color: #1D387C !important;
}

.text-pure-blue {
    color: rgb(0, 0, 255) !important;
}

.text-light-blue {
    color: #1dbed2 !important;
}

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

.text-yellow {
    color: #F6D31B !important;
}

.navbar-dark .navbar-toggler {
    color: #ffffff !important;
}

.navbar a.active,
.navbar a,
.navbar a:active {
    color: #ffffff !important;
    text-transform: uppercase;
}

.navbar a:hover {
    color: #00eaff !important;
}

footer a {
    color: #ffffff !important;
}

footer a:active,
footer a:hover {
    color: #00eaff !important;
}

.navbar a.active {
    font-weight: bold;
}

a.muted-link {
    text-decoration: none;
}

a.muted-link:hover {
    text-decoration: underline;
    color: inherit;
}

.btn-group-xs > .btn, .btn-xs {
    padding: .5rem .4rem;
    font-size: .8rem;
    line-height: .5;
    border-radius: .2rem;
}

.btn-ticket {
    display: flex;
    align-items: center;
}

.sep-dot {
    display: inline-block;
}

.sep-dot:first-child {
    display: inline;
}

.sep-dot:not(:last-child) {
    margin-right: 9px;
}

.sep-dot:not(:first-child)::before {
    content: '•';
    display: inline-block;
    width: 10px;
    margin-left: -10px;
}

hr {
    opacity: 1;
}

/* UTILITIES */


.font-lato {
    font-family: 'Lato', sans-serif !important;
}

.font-inter {
    font-family: 'Inter', sans-serif !important;
}

.border-dotted {
    border-style: dotted !important;
}

.no-wrap {
    white-space: nowrap;
}

.uppercase {
    text-transform: uppercase;
}

.fs-9-5px {
    font-size: 9.5px;
}
.fs-11px {
    font-size: 11px;
}
.fs-11-5px {
    font-size: 11.5px;
}
.fs-12px {
    font-size: 12px;
}
.fs-12-5px {
    font-size: 12.5px;
}
.fs-13px {
    font-size: 13px;
}
.fs-13-5px {
    font-size: 13.5px;
}
.fs-14px {
    font-size: 14px;
}

.fs-11px {
    font-size: 11px;
}

.fs-10px {
    font-size: 10px;
}

.fs-9px {
    font-size: 9px;
}

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

.fw-200 {
    font-weight: 200 !important;
}

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

.fw-400 {
    font-weight: 400 !important;
}

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

.fw-600 {
    font-weight: 600 !important;
}

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

.fw-800 {
    font-weight: 800 !important;
}

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

.display-spaced {
    letter-spacing: 0.01em !important;
}

.line-height-8px {
    line-height: 8px;
}

.line-height-1 {
    line-height: 1 !important;
}

.list-unstyled {
    list-style: none;
    padding-left: 0;
}

.icon-rotated {
    display: block;
    transform: rotate(-50deg);
    -moz-transform: rotate(-50deg);
    -webkit-transform: rotate(-50deg);
    -ms-transform: rotate(-50deg);
}

.text-justify {
    text-align: justify;
    text-justify: inter-word;
}

.no-radius {
    border-radius: 0 !important;
}

.link-unstyled {
    text-decoration: none;
}

.ms-mini {
  /* Parfois, les glyphes de FengardoNeue ont un petit d'espace avant le début du charactère. */
  /* Voir https://stackoverflow.com/questions/28809771/left-space-on-first-letter-css */
  margin-left: 0.1rem !important;
}

​
    /* ITEM SPECIFIC */
.form-control,
form .btn {
    border-radius: 0;
}

.ratio-still {
    object-fit: cover;
}

.titre-page {
    font-family: 'FengardoNeue', serif !important;
    text-transform: none !important;
}

.logo-partenaire {
    max-height: 100px;
}

.carousel .carousel-caption {
    text-shadow: 2px 2px 10px black;
}

.carousel .carousel-caption .fs-5{
    text-shadow: 2px 2px 10px black;
    font-size: calc(0.55rem + .3vw)!important;
}

.carousel .carousel-caption .fs-2{
    text-shadow: 2px 2px 10px black;
    font-size: calc(0.9rem + .3vw)!important;
}


.carousel .carousel-caption h2 {
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
    .carousel .carousel-caption h2 {
        font-size: 2.5rem;
    }

    .carousel .carousel-caption .fs-5{
        text-shadow: 2px 2px 10px black;
        font-size: calc(0.75rem + .3vw)!important;
    }
    
    .carousel .carousel-caption .fs-2{
        text-shadow: 2px 2px 10px black;
        font-size: calc(1.15rem + .3vw)!important;
    }
}

.carousel-item img:not(.ratio-still) {
    object-fit: contain;
}

.note-projection {
    font-family: 'FengardoNeue', serif !important;
    font-weight: 300;
    line-height: 90%;
    margin-top: 2px;
    line-height: 1.25;
}

.note-projection:first-letter {
    text-transform: uppercase
}

.download-link {
    font-size: 0.75rem !important;
}

.labels-ne {
    position: absolute;
    top: -4px;
    right: -4px;
    left: unset;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: end;
}

/* Projection extérieure */
.label-projection-ext {
    width: auto;
    height: 19px;
    padding: 2px 7px 2px 5px;
    background-color: #e45927;
    color: white;
    font-family: 'FengardoNeue', serif !important;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    margin-bottom: 2px;
    display: inline-block;
}

.label-projection-ext .bi {
    font-size: 9.7px;
    margin-right: 1px;
}

.projection-ext {
    color: #00a326;
}

.label-categorie {
    width: auto;
    height: 19px;
    padding: 2px 7px 2px 5px;
    position: absolute;
    top: unset;
    bottom: -4px;
    left: -4px;
    right: unset;
    z-index: 1;
    background-color: #1b4381;
    color: white;
    font-family: 'FengardoNeue', serif !important;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
}

.label-commanditaire {
  width: auto;
  height: 19px;
  padding: 2px 7px 2px 5px;
  top: unset;
  bottom: -4px;
  left: calc(100% - 122.5px);
  right: unset;
  z-index: 1;
  background-color: darkred;
  color: white;
  font-family: 'FengardoNeue', serif !important;
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  display: inline-block;
}

.logo-commanditaire {
    width: 130px;
    float: right;
    display: inline-block;
}

/* Previent le 'flash of unstyled content' */
.swiper {
  visibility: visible;
  opacity: 1;
}

.sv-recoit-invite {
  padding: 2px 0; 
}

.sv-recoit-nom,
.sv-recoit-titre,
.sv-recoit-film,
.sv-recoit-projection {
  display: flex;
}

.sv-recoit-nom {
  font-family: 'FengardoNeue';
  font-size: 18px;
  line-height: 18px;
  margin-bottom: 2px;
}

.sv-recoit-titre {
  line-height: 14px;
  margin-bottom: 8px;
}

.sv-recoit-film {
  font-family: 'FengardoNeue';
  font-size: 14px;
  line-height: 16px;
}

.sv-recoit-projection {
  line-height: 11px;
}

.sv-recoit-titre, .sv-recoit-projection {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 400;
}

/* TWEAKS pour logo "Desjardins - Présentateur principal" dans menu sur écran mobile très petit */
#logo-desjardins-navbar{
    height: 30px;
}

#titre-presentateur-principal{
    font-size: 12px;
}

@media (max-width: 415px) {

    a.navbar-brand img{
        width: 120px;
    }

    #logo-desjardins-navbar{
        height: 24px;
    }
    
    #titre-presentateur-principal{
        font-size: 10px;
    }

}

.hide-checkbox input[type="checkbox"],
.hide-checkbox input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.toggle-orange {
    /* This help for the focusing of labels */
    pointer-events: initial; 
}

.toggle-orange:focus-within {
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow);
    /* Maxime dit que c'était pas désitable: */
    /* color: var(--bs-btn-hover-color); */
    /* background-color: var(--bs-btn-hover-bg); */
}

.toggle-orange:has(input:checked) {
    color: #fff;
    background-color: #e45927;
    border-color: #e45927 !important;
}

.toggle-orange:hover {
  background-color: unset;
  color: unset;
}

/*
*
*
*MEDIA QUERIES
*
*
*/


/* X-small devices (no @media needed) */


/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {

}

/* ======== Lucide Icons sizing ======== */
.lucide-icon-lg {
    width: 28px;
    height: 28px;
    stroke-width: 1.75;
}
.lucide-icon-sm {
    width: 16px;
    height: 16px;
    stroke-width: 2;
}
.lucide-icon-mobile {
    width: 18px;
    height: 18px;
    stroke-width: 2;
}

/* Infolettre send button */
.btn-orange-send {
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 6px !important;
}
.btn-orange-send .lucide-icon-sm {
    color: #fff;
}
.btn-orange-send:hover .lucide-icon-sm {
    color: #0659a1 !important;
}

/* Feuillet download button */
.btn-orange-rounded {
    border-radius: 6px !important;
    height: 36px;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 36px;
}

/* Infolettre email input */
.infolettre-input {
    height: 36px;
    max-width: 70%;
    font-size: 0.85rem;
}

/* Infolettre form row */
.infolettre-row {
    justify-content: flex-start;
}

/* Feuillet negative margin tweak */
.mt-n1 {
    margin-top: -0.25rem;
}
