:root{
    /* Taille / espacement */
    --bs-navbar-toggler-padding-y: 0.25rem;
    --bs-navbar-toggler-padding-x: 0.75rem;
    --bs-navbar-toggler-font-size: 1.25rem;
    /* Couleurs */
    --bs-navbar-color: #444;
    --bs-navbar-toggler-border-color: "white";

    /* Bordures */
    --bs-border-width: 1px;
    --bs-navbar-toggler-border-radius: 0.375rem;

    /* Transition */
    --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");

    --primary: #82bc00;
    --neutral: #444;
    --blue: #313444;
    --blue-light: #005fac;

    --font-family-base: "Roboto";
    --font-family-title: "Bricolage Grotesque";


    --swiper-theme-color: #444;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
    font-family: var(--font-family-base), sans-serif;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

.flex-1{
    flex: 1;
}
.vh-50 {
    height: 50vh !important;
}
.bottom-40 {
    bottom: -40px !important;
}

.object-fit-cover{
    object-fit: cover !important;
}
.object-position-center{
    object-position: center !important;
}
.bg-blue{
    background-color: var(--blue) !important;
}
.bg-blue-light{
    background-color: var(--blue-light) !important;
}

.text-blue {
    --bs-text-opacity: 1;
    color: var(--blue) !important;
}
.text-black {
    --bs-text-opacity: 1;
    color: black !important;
}

.text-white {
    --bs-text-opacity: 1;
    color: white !important;
}
.text-primary {
    --bs-text-opacity: 1;
    color: var(--primary) !important;
}
.text-neutral{
    --bs-text-opacity: 1;
    color: var( --neutral) !important;
}

.vw-90{
    width: 90vw !important;
}
.w-px-40{
    width: 40px !important;
}
.w-px-80{
    width: 80px !important;
}

.dvh-35{
    height: 35dvh !important;
}
.dvh-75{
    height: 75dvh !important;
}
.dvh-80{
    height: 80dvh !important;
}

.mt-px-188{
    margin-top: 188px !important;
}
.pt-px-200{
    padding-top: 188px !important;
}
.btn-outline-primary {
    --bs-btn-color: var(--blue-light);
    --bs-btn-border-color: var(--blue-light);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--blue-light);
    --bs-btn-hover-border-color: var(--blue-light);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--blue-light);
    --bs-btn-active-border-color: var(--blue-light);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #0d6efd;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0d6efd;
    --bs-gradient: none;
}
.btn{
    width: fit-content;
    min-width: 140px;
    padding: 10px;
    display: flex;
    flex-direction: row;
    align-items: center;
    border-radius: 2px;
    text-align: center;
    &.btn-blue{
        color: white;
        background-color:  var(--blue) !important;
    }
    &.btn-title{
        font-family: var(--font-family-title), sans-serif;
        font-weight: 700 ;
        font-size: 25px;
    }
}
