/* Le theme provient d'ici : https://github.com/GouvernementFR/dsfr-theme-tarteaucitron
 Et j'ai rajouté des modifications

 */

/* Si on veut un dark mode */
/*:root[data-rf-theme="dark"] {
    --bf500: #bfbfe3;
    --w-bf500: #000091;
    --t-plain: transparent;
    --g800: #fff;
    --g700: #f0f0f0;
    --g600: #e7e7e7;
    --g400: #9c9c9c;
    --g300: #6a6a6a;
    --g200: #383838;
    --w: #1e1e1e;
    --g100-g800: #1e1e1e;
    --focus: #5398ff;
    --rm500: #f7bfc3;
    --overlay: rgba(206, 206, 206, 0.08);
}*/

/* Suite à une mise à jour de tarte au citron */
#tac_title,
#tarteaucitronPremium {
    display: none;
}

#tarteaucitronRoot {
    --bf500: var(--e-global-color-primary, #000091);
    --bf500-hover: var(
        --e-global-color-primary,
        #0735ef
    ); /* C'est le hover des btn */
    --w-bf500: #fff;
    --t-plain: transparent;
    --g800: #1e1e1e;
    --g700: #383838;
    --g600: #6a6a6a;
    --g400: #cecece;
    --g300: #e7e7e7;
    --g200: #f0f0f0;
    --w: #fff;
    --g100-g800: #f8f8f8;
    --focus: var(--e-global-color-primary, #2a7ffe);
    --rm500: #e1000f;
    --overlay: rgba(40, 40, 40, 0.6);
    --focus-z-index: 2000;
}

@font-face {
    font-family: "dsfr-tac-icons";
    src: url("data:font/truetype;charset=utf-8;base64,d09GRgABAAAAAASYAAsAAAAABtgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAQwAAAFY4wUKAY21hcAAAAYgAAABVAAABjOEvI+NnbHlmAAAB4AAAALEAAAC8RwSAoGhlYWQAAAKUAAAAMAAAADYcco6VaGhlYQAAAsQAAAAeAAAAJAgEA+1obXR4AAAC5AAAAA8AAAAQDhAAAGxvY2EAAAL0AAAACgAAAAoAcgAubWF4cAAAAwAAAAAeAAAAIAEQAChuYW1lAAADIAAAATEAAAIuRB1J2XBvc3QAAARUAAAAQwAAAF18Wox+eJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGRuYZzAwMrAwPST2YOBgWEFhGZyYLBiNAXSDKzMDFhBQJprCoPDA4YHTMwv/lsw5DC/YDgBFGYEyQEA8HwMsgB4nO2QsQ2AQAwDL59AgZiDipJJqBifTR4n/2Ng6SzZilIYWAAXpwiwByN1q7Xqna364KibyP5tvctJV47ylp9s5ddefs3kudSgtptoL+04wD9smw0NAAAAeJxjYGQAAuZpTL4MrAwMjObinIzmTBE/XP8d/nfIjTHsu/u/Q4x27kAlEHXTmc4xcIPVsYuzq7Orm6uDVX/74fbzu9u3726M1364/QCygPwfbgxMDAz/z7FIMQcxCDFIA3WJKgsqmhoLirApKyqpmQqamBmrCiqbMqozAokvv5jUUmRF/5aJysqKMgel/KtyY2x7xrQn5e+tX/+ugASZukRlp/0reAaWSQG6BgBlHzlCAAAAeJxjYGRgYADiImfHBfH8Nl8ZuFk2AEUY7sxZ8gRB/z/HIsUcBORyMDCBRAFWOQxBeJxjYGRgYH7x34KBgWUDAxCwSDEwMqACFgBU5AL7AAB4nGNgYGBg2YDAAA7gAh0AAAAAAAAUAC4AXgAAeJxjYGRgYGBhkGFgYgABEMkFhAwM/8F8BgALoAE5AAB4nG2RPU7DMBiG3/QP0UoIBGJh8QILavozdmRo9w7d08RJUyVx5LgVvQMn4BAcgoEzcAgOwVvzSZVQbcl+vsfvFysJgGt8IcBxBOj79ThauGD1x23SjXCH/CDcxQCPwj36sXAfz5gJD3ALzScEnUuaO7wKt3CFN+E2/btwh/wh3MU9PoV79N/CfazwIzzAU/CSNKkd5rGpmqXOdkVkT+JEK22b3FRqEo5PcqErbSOnE7U+qGafTZ1LVWpNqeamcroojKqt2erYhRvn6tlolIoPY1MiQYMUFkPkiGFQsV7yfTPsUCDiybnEObdil+We+1phgpDf81xywWTl0xEc94TpNQ5cG+x585TWsUv5ToOSNPe9x3TBaWhqf7alielDbHxXzf824kz/5UN/e/kLsDVkLAAAAHicY2BigAAeBuyAhZGJkZmRhZGVQTCxqCi/XDclvzxPt1g3JzMvlSs5J784FcwUSq0oSS3KS8wB8bLBQgwMANcAEdUA")
        format("truetype");
}

/*# sourceMappingURL=core.css.map*/

#tarteaucitronRoot button {
    box-shadow: unset !important;
}

#tarteaucitronRoot {
    box-sizing: border-box;
    color: var(--g700);
    font-family: "Marianne", arial, sans-serif;
    text-rendering: optimizeSpeed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#tarteaucitronRoot *,
#tarteaucitronRoot *::before,
#tarteaucitronRoot *::after {
    box-sizing: inherit;
}

#tarteaucitronRoot h1 {
    font-size: 2.75rem;
    line-height: 1.25;
    color: var(--g800);
    font-weight: bold;
}

@media (min-width: 48em) {
    #tarteaucitronRoot h1 {
        font-size: 3rem;
    }
}

#tarteaucitronRoot h2 {
    font-size: 2rem;
    line-height: 1.25;
    color: var(--g800);
    font-weight: bold;
}

#tarteaucitronRoot h3 {
    font-size: 1.5rem;
    line-height: 1.25;
    color: var(--g800);
    font-weight: bold;
}

#tarteaucitronRoot h4 {
    font-size: 1.375rem;
    line-height: 1.375;
    color: var(--g800);
    font-weight: bold;
}

/*** Liens ***/
#tarteaucitronRoot a {
    box-shadow: 0 1px 0 0 currentColor;
    color: inherit;
}

#tarteaucitronRoot a:focus {
    outline: 2px solid;
    outline-color: var(--focus);
    outline-offset: 2px;
    z-index: var(--focus-z-index);
}

#tarteaucitronRoot a {
    text-decoration: none;
}

#tarteaucitronRoot a[target="_blank"]::after {
    content: "";
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 1rem;
    margin-left: 0.25rem;
    vertical-align: baseline;
}

/*** Boutons ***/
#tarteaucitronRoot button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: inherit;
    border: none;
    cursor: pointer;
}

#tarteaucitronRoot button:focus {
    outline: 2px solid;
    outline-color: var(--focus);
    outline-offset: 2px;
    z-index: var(--focus-z-index);
}

/*** Listes ***/
#tarteaucitronRoot ul,
#tarteaucitronRoot ol {
    list-style: none;
    padding: 0;
    margin: 0;
}

/*** Overlay ***/
#tarteaucitronBack {
    background-color: var(--overlay);
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    opacity: 1 !important;
    z-index: 2147483646;
}

/*** Positionnements du bouton d'ouverture du gestionnaire ***/
.tarteaucitronIconBottomLeft {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 4000;
}
.tarteaucitronIconBottomRight {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 4000;
}
.tarteaucitronIconTopLeft {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 4000;
}
.tarteaucitronIconTopRight {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 4000;
}

/*** Affichage de l'icône TAC sous forme de bouton design system ***/
#tarteaucitronIcon #tarteaucitronManager > img {
    display: none;
}



#tarteaucitronIcon #tarteaucitronManager {
    background: grey;
    color: var(--w);
    padding: 0 1em;
    line-height: 1em;
    min-height: 21px;
    font-size: 12px;
    border-radius: 0;
}


#tarteaucitronIcon #tarteaucitronManager:hover {
    background: var(--bf500-hover);
    filter: brightness(1.2);
}

#tarteaucitronIcon #tarteaucitronManager::before {
    content: "Cookies";
}

/*---------------------------------------------*/

/**
  Styles du bandeau (#tarteaucitronAlertBig) et des éléments du bandeau
 **/

/*** Bandeau ***/
div#tarteaucitronRoot.tarteaucitronBeforeVisible:before {
    opacity: 1 !important;
    background-color: var(--overlay) !important;
}

div#tarteaucitronAlertBig:before {
    content: none !important;
}

body #tarteaucitronRoot div#tarteaucitronAlertBig {
    border-radius: 0;
}

.tarteaucitronBeforeVisible #tarteaucitronAlertBig {
    display: flex !important;
}

#tarteaucitronAlertBig {
    position: fixed;
    flex-wrap: wrap;
    justify-content: flex-end;
    bottom: 0 !important;
    top: unset !important;
    left: 0 !important;
    width: 100% !important;
    padding: 3rem 1rem 1rem 1rem !important;
    color: var(--g700);
    background: var(--g200);
    box-shadow: inset 0 0 0 1px var(--g400) !important;
    z-index: 2147483645 !important;
    max-height: 73vh;
    overflow-y: scroll;
    background: linear-gradient(#f0f0f0 33%, rgba(240, 240, 240, 0)),
        linear-gradient(rgba(240, 240, 240, 0), #f0f0f0 66%) 0 100%,
        radial-gradient(
            farthest-side at 50% 0,
            rgba(34, 34, 34, 0.5),
            rgba(0, 0, 0, 0)
        ),
        radial-gradient(
                farthest-side at 50% 100%,
                rgba(34, 34, 34, 0.5),
                rgba(0, 0, 0, 0)
            )
            0 100%;
    background-color: #f0f0f0;
    background-repeat: no-repeat;
    background-attachment: local, local, scroll, scroll;
    background-size: 100% 18px, 100% 18px, 100% 6px, 100% 10px;
    transform: unset !important;
    border-radius: 0 !important;
}

/* Bandeau >= 768px */
@media screen and (min-width: 48em) {
    #tarteaucitronRoot #tarteaucitronAlertBig {
        width: 42rem !important;
        bottom: 2.5rem !important;
        left: 2.5rem !important;
        padding: 3.5rem 2rem 2rem 2rem !important;
        margin: auto;
        top: auto !important;
        transform: none !important;
        box-shadow: inset 0 0 0 1px var(--g400) !important;
        border-radius: 0 !important;
    }
}

/*** Texte du bandeau ***/
#tarteaucitronDisclaimerAlert {
    margin-bottom: 2rem;
    text-align: left !important;
    font-size: 16px !important;
}

@media screen and (min-width: 48em) {
    #tarteaucitronAlertBig {
        max-height: initial;
        height: auto;
        padding-right: 0;
        overflow: initial;
    }
}

/*** Surcharge des margin bottom trop importantes du design system ***/
#tarteaucitronDisclaimerAlert > p {
    margin-bottom: 1rem;
}

#tarteaucitronDisclaimerAlert > p:last-child {
    margin-bottom: 0;
}

/*** Bouton fermer le bandeau optionnel (closePopup) ***/
#tarteaucitronRoot #tarteaucitronCloseCross::first-letter {
    color: transparent;
}

#tarteaucitronRoot #tarteaucitronCloseCross {
    position: relative;
    background-color: var(--t-plain);
    color: var(--bf500);
    padding: 0.25rem 0.75rem;
    display: block;
    line-height: 1.5rem;
    min-height: 2rem;
    font-size: 0.875rem;
    border-radius: 1rem;
    width: 5rem;
    margin-bottom: 0.5rem;
    border-radius: 1rem;
}

#tarteaucitronRoot #tarteaucitronCloseCross:before {
    content: "Fermer";
    position: absolute;
    left: 0.75rem;
}

#tarteaucitronRoot #tarteaucitronCloseCross:after {
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "";
    font-size: 1rem;
    height: 1rem;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

/*** Boutons d'action du bandeau ***/
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton {
    font-size: inherit;
    cursor: pointer;
    background: var(--bf500);
    color: var(--w);
    padding: 0.5rem 1.5rem;
    line-height: 1.5rem;
    min-height: 2.5rem;
    width: 100%;
    margin: 0.5rem 0;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    background-color: var(--t-plain);
    color: var(--bf500);
    border: 1px solid var(--bf500);
    order: 5;
    margin-bottom: 0;
    width: 100%;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
    background-color: var(--t-plain);
    color: var(--bf500);
    border: 1px solid var(--bf500);
    order: 6;
    margin-bottom: 0;
    width: 100%;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
    position: absolute;
    top: 10px;
    right: 50%;
    transform: translate(50%, 0);
    background-color: transparent !important;
    color: var(--g800) !important;
    margin-right: 0 !important;
    padding: 0;
    width: auto;
    min-width: 170px;
    text-decoration: underline;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2::after {
    position: absolute;
    top: 20%;
    right: -20px;
    width: 10px;
    height: 10px;
    content: url("data:image/svg+xml,%3Csvg%20fill%3D%22%23000000%22%20height%3D%2210px%22%20width%3D%2210px%22%20version%3D%221.1%22%20id%3D%22Capa_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20viewBox%3D%220%200%20490%20490%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpolygon%20points%3D%22456.851%2C0%20245%2C212.564%2033.149%2C0%200.708%2C32.337%20212.669%2C245.004%200.708%2C457.678%2033.149%2C490%20245%2C277.443%20456.851%2C490%20489.292%2C457.678%20277.331%2C245.004%20489.292%2C32.337%20%22%2F%3E%3C%2Fsvg%3E");
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize {
    order: 3;
    margin-right: 0;
}

#tarteaucitronPersonalize2:hover,
#tarteaucitronAllDenied2:hover {
    background-color: var(--bf500-hover) !important;
    filter: brightness(1.2);
}

#tarteaucitronCloseAlert:hover,
#tarteaucitronPrivacyUrl:hover {
    background-color: #dfdfdf !important;
}

@media screen and (min-width: 36em) {
    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
    #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton,
    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
        width: auto;
        margin: 0 0.5rem 0 0 !important;
        display: flex !important;
        align-items: center;
    }

    #tarteaucitronRoot
        #tarteaucitronAlertBig
        .tarteaucitronCTAButton:not(.tarteaucitronAllow, .tarteaucitronDeny) {
        margin: 0 0 0 auto !important;
    }

    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
        order: 3;
    }

    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
        order: 4;
    }

    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize {
        order: 5;
        margin-right: 0 !important;
    }

    #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
        transform: unset;
        top: 10px;
        right: 10px;
        margin-right: 45px !important;
        text-decoration: none;
        font-size: 14px;
        justify-content: end;
    }
}

/*---------------------------------------------*/

/**
  Styles du gestionnaire de cookie (#tarteaucitron) et des éléments du gestionnaire
 **/

#tarteaucitron {
    display: none;
    height: 90%;
    padding: 3rem 0 0;
    margin: 0;
    left: 0;
    top: auto !important;
    bottom: 0 !important;
    position: fixed;
    width: 100%;
    z-index: 2147483647;
}

#tarteaucitron::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: var(--w);
    height: calc(3rem + 1px);
    width: 100%;
}

@media screen and (min-width: 48em) {
    #tarteaucitron {
        width: 50rem;
        height: initial;
        max-height: 80%;
        left: 50%;
        top: 0 !important;
        margin: auto auto auto -25rem;
    }
}

/*** Bouton pour fermer le gestionnaire ***/
#tarteaucitronRoot #tarteaucitronClosePanel {
    background: var(--tplain);
    color: var(--bf500);
    padding: 0.25rem 0.75rem;
    line-height: 1.5rem;
    min-height: 2rem;
    display: inline-flex;
    flex-direction: row-reverse;
    align-items: center;
    font-size: 0.875rem;
    border-radius: 1rem;
    position: absolute;
    right: 1rem;
    top: 1rem;
    outline-offset: 0px;
    box-shadow: unset;
}

#tarteaucitronRoot #tarteaucitronClosePanel::before {
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "";
    font-size: 1rem;
    margin-right: -0.25rem;
    margin-left: 0.5rem;
}

/*** Lien vers le site tarte au citron ***/
.tarteaucitronSelfLink > img {
    display: none;
}

.tarteaucitronSelfLink:before {
    content: "Site officiel de Tarte au citron";
}

/*** Surcharge des styles de liste design system ***/
#tarteaucitronServices ul > li::before {
    content: none;
}

#tarteaucitronServices ul > li > ul {
    padding-left: 0;
}

/*** Section générale pour gérer tous les services ***/
#tarteaucitronRoot .tarteaucitronMainLine {
    padding-bottom: 2.5rem;
    box-shadow: inset 0 -1px 0 0 var(--g300);
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH1 {
    display: block;
    font-size: 1.5rem;
    line-height: 2rem;
    color: var(--g700);
    margin: 0 0 1rem;
    font-weight: 700;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk {
    flex-direction: column;
    align-items: flex-start;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk::before {
    content: none;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk .tarteaucitronDeny {
    margin-left: 0;
    margin-top: 1.5rem;
}

@media screen and (min-width: 48em) {
    #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk {
        flex-direction: row;
        align-items: center;
    }

    #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk::before {
        content: "";
    }

    #tarteaucitronRoot
        .tarteaucitronMainLine
        .tarteaucitronAsk
        .tarteaucitronDeny {
        margin-left: 1.5rem;
        margin-top: 0;
    }
}

/*** Container des services ***/
#tarteaucitronServices {
    background-color: var(--w);
    padding: 1rem 1rem 2rem;
}

@media screen and (min-width: 48em) {
    #tarteaucitronServices {
        padding: 1rem 2rem 2rem;
    }
}

/*** Titre et boutons du conteneur des cookies obligatoires  ***/
#tarteaucitronServicesTitle_mandatory .tarteaucitronH3 {
    font-size: 1rem;
    margin-bottom: 0.5rem;
    max-width: initial;
}

#tarteaucitronServicesTitle_mandatory .tarteaucitronTitle {
    margin-bottom: 1rem;
}

#tarteaucitronServicesTitle_mandatory .tarteaucitronAsk {
    position: relative;
    top: auto;
    right: auto;
}

/*** Container des textes de service (titre et description) ***/
@media screen and (min-width: 48em) {
    .tarteaucitronName {
        max-width: 60%;
    }
}

/*** Container des boutons Accepter/Refuser ***/
.tarteaucitronAsk {
    display: flex;
    margin-top: 2rem;
}

@media screen and (min-width: 48em) {
    .tarteaucitronAsk {
        justify-content: flex-end;
        align-items: center;
        margin-top: 0 !important;
    }
    .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk {
        position: absolute;
        top: 0;
        right: 0;
    }
}

/*** Boutons Accepter/Refuser sous forme de boutons radios design system ***/
#tarteaucitronRoot .tarteaucitronAsk .tarteaucitronAllow {
    order: 1;
    margin-right: 1.5rem;
    font-size: 1rem;
}

#tarteaucitronRoot .tarteaucitronAsk .tarteaucitronDeny {
    margin-left: 1.5rem;
    order: 3;
    font-size: 1rem;
}

#tarteaucitronRoot .tarteaucitronAsk::before {
    content: "";
    width: 1px;
    height: 1.5rem;
    order: 2;
    background: var(--g300);
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton),
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton) {
    background: var(--tplain);
    color: var(--g800);
    display: inline-flex;
    align-items: center;
    position: relative;
    padding: 0;
}

#tarteaucitronRoot .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton),
#tarteaucitronRoot .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton) {
    color: var(--g600-g400);
}

#tarteaucitronRoot
    .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton)::before,
#tarteaucitronRoot
    .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton)::before {
    background-color: var(--g200);
    border: 1px solid var(--g400);
}

#tarteaucitronRoot
    .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton)::after,
#tarteaucitronRoot
    .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton)::after {
    content: none;
}

#tarteaucitronRoot .tarteaucitronAllow.tarteaucitronIsSelected::after,
#tarteaucitronRoot .tarteaucitronDeny.tarteaucitronIsSelected::after {
    opacity: 1;
}

#tarteaucitronRoot .tarteaucitronAllow.tarteaucitronIsSelected::before,
#tarteaucitronRoot .tarteaucitronDeny.tarteaucitronIsSelected::before {
    border: 1px solid var(--bf500);
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton)::before,
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton)::before {
    content: "";
    display: block;
    flex-shrink: 0;
    border: 1px solid var(--g800);
    border-radius: 50%;
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 0.5rem;
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton)::after,
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton)::after {
    content: "";
    display: block;
    background: var(--bf500);
    border-radius: 50%;
    width: 0.75rem;
    height: 0.75rem;
    position: absolute;
    left: 0.375rem;
    opacity: 0;
}

#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronAllow::after {
    opacity: 1;
}

#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronDeny::after {
    opacity: 1;
}

#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAllow::after {
    opacity: 1;
}

#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAsk::before {
    content: none;
}

#tarteaucitronRoot [id^="tarteaucitronServices_"] {
    margin-top: 1.5rem;
}

@media screen and (min-width: 48em) {
    #tarteaucitronRoot [id^="tarteaucitronServices_"] {
        margin-top: 0;
    }
}

/*** Ajout des bordures dans la liste des services ***/
.tarteaucitronBorder > ul > li {
    padding: 1.5rem 0;
    box-shadow: inset 0 1px 0 0 var(--g300);
}

.tarteaucitronBorder > ul > li:first-child {
    box-shadow: none;
}

#tarteaucitronSave {
    display: flex;
    justify-content: center;
}

#tarteaucitronSaveButton::before,
#tarteaucitronSaveButton::after {
    display: none !important;
}

#tarteaucitronSaveButton {
    background-color: var(--bf500) !important;
    color: var(--w) !important;
    padding: 15px 40px !important;
}

#tarteaucitronSaveButton:hover {
    background-color: var(--bf500-hover) !important;
    filter: brightness(1.2);
}

/*** Titres des services avec infobulle associée ou non ***/
#tarteaucitronRoot .tarteaucitronTitle > button,
#tarteaucitronRoot .tarteaucitronTitle > .catToggleBtn {
    background: 0;
    color: var(--g800);
    font-size: 1.25rem;
    font-weight: 700;
    padding: 0;
    text-align: left;
}

#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails {
    color: var(--w);
    background: var(--g700);
    display: none;
    font-size: 0.75rem;
    margin-top: 0;
    max-width: 270px;
    padding: 1rem;
    position: absolute;
    z-index: 2147483647;
}

/*** Style de base des items de liste de service ***/
#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
    display: none;
    position: relative;
}

/*** Titre des sous-services ***/
.tarteaucitronH3 {
    display: block;
    color: var(--g800);
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    max-width: 24rem;
}

.tarteaucitronH3 + span {
    display: block;
}

/*** Ligne d'un sous-service ***/
.tarteaucitronLine {
    position: relative;
}

.tarteaucitronLine {
    margin-bottom: 1rem !important;
}

/*** Surcharge dans le cas des sous-services groupés ***/
ul[style="display: block;"] .tarteaucitronLine {
    margin-bottom: 1.5rem;
}

@media screen and (min-width: 48em) {
    .tarteaucitronHidden
        > ul[style="display: block;"]
        .tarteaucitronLine:not(:last-child),
    .tarteaucitronHidden
        > ul:last-child:not([style="display: block;"])
        .tarteaucitronLine:not(:last-child) {
        margin-bottom: 0;
    }
}

.tarteaucitronHidden
    > ul[style="display: block;"]
    .tarteaucitronLine
    .tarteaucitronH3,
.tarteaucitronHidden
    > ul:last-child:not([style="display: block;"])
    .tarteaucitronLine
    .tarteaucitronH3 {
    margin-bottom: 0.5rem;
    font-size: 1rem;
}

.tarteaucitronHidden
    > ul:last-child:not([style="display: block;"])
    .tarteaucitronLine:first-child {
    margin-top: 1.5rem;
}

@media screen and (min-width: 48em) {
    .tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronLine {
        display: flex;
    }
}

@media screen and (min-width: 48em) {
    .tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronAsk {
        margin-top: 0;
        margin-right: 0;
        margin-left: auto;
    }
}

.tarteaucitronHidden
    > ul[style="display: block;"]
    .tarteaucitronLine:not(.tarteaucitronMainLine)
    .tarteaucitronAsk,
.tarteaucitronHidden
    > ul[style="display: none;"]
    .tarteaucitronLine:not(.tarteaucitronMainLine)
    .tarteaucitronAsk {
    position: relative;
    top: auto;
    right: auto;
    align-items: flex-start;
}

/*** Bouton pour déplier les sous-services ***/
#tarteaucitronRoot .tarteaucitron-toggle-group {
    background: none;
    margin: 1.5rem 0 0;
    padding: 0;
    border-bottom: var(--is-link) solid 1px currentColor;
    font-size: inherit;
}

#tarteaucitronRoot .tarteaucitron-toggle-group::after {
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "";
    font-size: 1rem;
    margin-left: 0.5rem;
}

/*---------------------------------------------*/

/**
  Styles du bouton "AlertSmall" et de la modale avec la liste des cookies
 **/

.tarteaucitronAlertSmallBottom {
    display: none;
    padding: 0;
    position: fixed;
    right: 0;
    bottom: 0;
    text-align: center;
    width: auto;
    z-index: 2147483646;
}

.tarteaucitronAlertSmallTop,
.tarteaucitronAlertSmallBottom {
    bottom: 0;
}

#tarteaucitronAlertSmall {
    display: none;
    padding: 0;
    position: fixed;
    right: 0;
    text-align: center;
    width: auto;
    z-index: 2147483646;
}

#tarteaucitronAlertSmall #tarteaucitronManager,
#tarteaucitronAlertSmall #tarteaucitronCookiesNumber {
    position: relative;
    font-size: inherit;
    cursor: pointer;
    background: var(--bf500);
    color: var(--w);
    padding: 0.5rem 1.5rem !important;
    line-height: 1.5rem;
    min-height: 2.5rem;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesNumber {
    margin-left: 0.25rem;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot {
    position: absolute;
    background-color: gray;
    border-radius: 5px;
    display: block;
    height: 5px;
    overflow: hidden;
    width: calc(100% - 3rem);
    left: 1.5rem;
}

#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotGreen,
#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotYellow,
#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotRed {
    display: block;
    float: left;
    height: 100%;
    width: 0%;
}

#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotGreen {
    background-color: #1b870b;
}

#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotYellow {
    background-color: #fbda26;
}

#tarteaucitronAlertSmall
    #tarteaucitronManager
    #tarteaucitronDot
    #tarteaucitronDotRed {
    background-color: #9c1a1a;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
    display: none;
    max-height: 50%;
    max-width: 500px;
    position: fixed;
    right: 0;
    width: 100%;
    background: #fff;
    padding-top: 1rem;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList {
    color: #333;
    font-size: 0.75rem;
    height: auto;
    overflow: auto;
    text-align: left;
    padding: 0 1.5rem;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronTitle {
    color: var(--g800);
    display: inline-block;
    font-size: 1rem;
    font-weight: 700;
    margin: 1.5rem 0 0;
    padding: 1rem 0;
    text-align: left;
    width: auto;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    strong {
    color: var(--g800);
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesTitle {
    padding: 0.5rem 1.5rem;
    text-align: left;
    color: var(--g800);
    font-size: 1.25rem;
    font-weight: 700;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesTitle
    strong {
    color: var(--w);
    font-size: 1rem;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain {
    padding: 0 0 0.25rem;
    word-wrap: break-word;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain:before {
    content: none;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain
    a {
    color: var(--g800);
    text-decoration: none;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain
    .tarteaucitronCookiesListLeft {
    display: inline-flex;
    width: 50%;
    align-items: center;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain
    .tarteaucitronCookiesListLeft
    a
    strong {
    color: var(--rm500);
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .tarteaucitronCookiesListMain
    .tarteaucitronCookiesListRight {
    color: var(--g800);
    display: inline-block;
    font-size: 0.75rem;
    margin-left: 10%;
    vertical-align: top;
    width: 30%;
}

/*** Bouton pour fermer le gestionnaire ***/
#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronClosePanelCookie {
    background: var(--tplain);
    color: var(--bf500);
    padding: 0.25rem 0.75rem;
    line-height: 1.5rem;
    min-height: 2rem;
    display: inline-flex;
    flex-direction: row-reverse;
    align-items: center;
    font-size: 0.875rem;
    border-radius: 1rem;
    position: absolute;
    right: 1rem;
    top: 0;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronClosePanelCookie::before {
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "";
    font-size: 1rem;
    margin-right: -0.25rem;
    margin-left: 0.5rem;
}

/*** Bouton pour supprimer les cookies dans la liste ***/
#tarteaucitronRoot .purgeBtn {
    flex-direction: row;
    max-width: 2rem;
    max-height: 2rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5rem;
    min-height: 2rem;
    background-color: var(--bf500);
    color: var(--w-bf500);
    flex-shrink: 0;
    margin-right: 0.25rem;
}

#tarteaucitronRoot .purgeBtn::before {
    font-family: dsfr-tac-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "";
    font-size: 1rem;
    margin-left: 0;
    margin-right: 0.5rem;
}

#tarteaucitronAlertSmall
    #tarteaucitronCookiesListContainer
    #tarteaucitronCookiesList
    .purgeBtn
    strong {
    display: none;
}

/*---------------------------------------------*/

/**
  Styles du placeholder pour les services (type youtube) désactivés
 **/

.tac_activate {
    background: var(--g200);
    display: flex;
    padding: 6rem 0;
    justify-content: center;
    width: 100%;
}

.tac_activate .tac_float {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.rf-responsive-vid__player .tac_activate {
    padding: O;
    height: 100%;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton)::before,
.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton)::after {
    content: none;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: inherit;
    border: none;
    font-size: inherit;
    cursor: pointer;
    background: var(--bf500);
    color: var(--w);
    padding: 0.5rem 1.5rem;
    line-height: 1.5rem;
    min-height: 2.5rem;
    margin-top: 1.5rem;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton):hover {
    background-color: var(--bf500-hover) !important;
    filter: brightness(1.2);
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton):focus {
    outline: 2px solid;
    outline-color: var(--focus);
    outline-offset: 2px;
    z-index: var(--focus-z-index);
}
