/* 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(--background-color-secondary-ponsot, #000091);
    --bf500-hover   : var(
        --background-color-secondary-ponsot,
        #0735EF
    ); /* C'est le hover des btn */
    --w-bf500       : #FFFFFF;
    --t-plain       : transparent;
    --g800          : #1E1E1E;
    --g700          : #383838;
    --g600          : #6A6A6A;
    --g400          : #CECECE;
    --g300          : #E7E7E7;
    --g200          : #F0F0F0;
    --w             : #FFFFFF;
    --g100-g800     : #F8F8F8;
    --focus         : var(--background-color-secondary-ponsot, #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 {
    font-family             : "Marianne", arial, sans-serif;
    color                   : var(--g700);
    box-sizing              : border-box;
    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;
    font-weight : bold;
    line-height : 1.25;
    color       : var(--g800);
}

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

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

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

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

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

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

#tarteaucitronRoot a {
    text-decoration : none;
}

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

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

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

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

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

/*** Positionnements du bouton d'ouverture du gestionnaire ***/
.tarteaucitronIconBottomLeft {
    position : fixed;
    bottom   : 0;
    left     : 0;
    z-index  : 4000;
}
.tarteaucitronIconBottomRight {
    position : fixed;
    right    : 0;
    bottom   : 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 {
    z-index : 99999;
}

#tarteaucitronIcon #tarteaucitronManager {
    font-size     : inherit;
    line-height   : 1.5rem;
    color         : var(--w);
    min-height    : 2.5rem;
    padding       : 0.5rem 1.5rem;
    border-radius : 0;
    background    : var(--bf500);

}

#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 {
    color                 : var(--g700);
    position              : fixed;
    top                   : unset !important;
    bottom                : 0 !important;
    left                  : 0 !important;
    transform             : unset !important;
    z-index               : 2147483645 !important;
    overflow-y            : scroll;
    flex-wrap             : wrap;
    justify-content       : flex-end;
    width                 : 100% !important;
    max-height            : 73vh;
    padding               : 3rem 1rem 1rem 1rem !important;
    border-radius         : 0 !important;
    background            : var(--g200);
    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;
    box-shadow            : inset 0 0 0 1px var(--g400) !important;
}

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

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

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

/*** 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 {
    font-size        : 0.875rem;
    line-height      : 1.5rem;
    color            : var(--bf500);
    position         : relative;
    display          : block;
    width            : 5rem;
    min-height       : 2rem;
    margin-bottom    : 0.5rem;
    padding          : 0.25rem 0.75rem;
    border-radius    : 1rem;
    border-radius    : 1rem;
    background-color : var(--t-plain);
}

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

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

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

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

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

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

#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 {
        display     : flex !important;
        align-items : center;
        width       : auto;
        margin      : 0 0.5rem 0 0 !important;
    }

    #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 {
        font-size       : 14px;
        text-decoration : none;
        top             : 10px;
        right           : 10px;
        transform       : unset;
        justify-content : end;
        margin-right    : 45px !important;
    }
}

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

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

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

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

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

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

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

/*** 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 {
    font-size   : 1.5rem;
    font-weight : 700;
    line-height : 2rem;
    color       : var(--g700);
    display     : block;
    margin      : 0 0 1rem;
}

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

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

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

@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-top  : 0;
        margin-left : 1.5rem;
    }
}

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

@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;
    max-width     : initial;
    margin-bottom : 0.5rem;
}

#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 {
    font-size    : 1rem;
    order        : 1;
    margin-right : 1.5rem;
}

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

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

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

#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 {
    border           : 1px solid var(--g400);
    background-color : var(--g200);
}

#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 {
    display       : block;
    flex-shrink   : 0;
    width         : 1.5rem;
    height        : 1.5rem;
    margin-right  : 0.5rem;
    content       : "";
    border        : 1px solid var(--g800);
    border-radius : 50%;
}

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

#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 {
    color            : var(--w) !important;
    padding          : 15px 40px !important;
    background-color : var(--bf500) !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 {
    font-size   : 1.25rem;
    font-weight : 700;
    color       : var(--g800);
    text-align  : left;
    padding     : 0;
    background  : 0;
}

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

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

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

.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 {
    font-size     : 1rem;
    margin-bottom : 0.5rem;
}

.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 {
    font-size     : inherit;
    margin        : 1.5rem 0 0;
    padding       : 0;
    border-bottom : var(--is-link) solid 1px currentColor;
    background    : none;
}

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

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

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

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

.tarteaucitronAlertSmallTop,
.tarteaucitronAlertSmallBottom {
    bottom : 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#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;
    align-items : center;
    width       : 50%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


@media (max-width : 764px) {
    #tarteaucitronIcon #tarteaucitronManager {
        font-size : 12px;
        padding   : 0.2rem 1.5rem;
    }
}
