@charset "UTF-8";

/* min ready */
div#tarteaucitronMainLineOffset,
.tarteaucitronBorder {
    border: 0 !important;
}

#tarteaucitron [aria-pressed="true"] {
    font-weight: 700;
}

/* Add blur behind the popup */
html body.tarteaucitron-modal-open div#tarteaucitronRoot::before,
html body .tarteaucitronSize-middle.tarteaucitronBeforeVisible::before {
    content: " ";
    background: rgba(255, 255, 255, .25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    opacity: 1 !important;
    position: fixed;
    inset: 0;
    z-index: 100000;
}

html body.tarteaucitron-modal-open #tarteaucitronRoot #tarteaucitronAlertBig {
    z-index: 10
}

html body #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert .tarteaucitronPartnersList {
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
}

html body #tarteaucitronRoot.tarteaucitronSize-middle #tarteaucitronAlertBig {
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
}

html body #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig {
    border: 1px solid rgba(0, 0, 0, .08);
    border-bottom: 0;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
}

/* A11Y titles */
.tarteaucitron-modal-open #tac_title {
    display: none !important
}

#tarteaucitronRoot #tarteaucitronInfo p {
    all: unset;
    display: inline;
}

.tarteaucitron-magic-block button {
    border-radius: 4px;
    background-color: #fbd600;
    cursor: pointer;
    display: inline-block;
    padding: 8px 10px;
    text-align: center;
    text-decoration: none;
    width: auto;
    border: 0;
    cursor: pointer;
    color: #000;
}

html #tarteaucitronRoot #tarteaucitronPrivacyUrl {
    padding: 8px 10px;
    font-size: 16px !important;
    line-height: 1;
    white-space: initial;
}

@media screen and (max-width: 900px) {

    #tarteaucitronRoot.tarteaucitronSize-popup button#tarteaucitronCloseAlert,
    #tarteaucitronRoot.tarteaucitronSize-popup button#tarteaucitronPrivacyUrl,
    #tarteaucitronRoot.tarteaucitronSize-popup button.tarteaucitronCTAButton,
    #tarteaucitronRoot.tarteaucitronSize-middle button#tarteaucitronCloseAlert,
    #tarteaucitronRoot.tarteaucitronSize-middle button#tarteaucitronPrivacyUrl,
    #tarteaucitronRoot.tarteaucitronSize-middle button.tarteaucitronCTAButton {
        width: 80%;
    }
}

.tac_visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    /* added line */
    border: 0;
}

div#tarteaucitronAlertBig:focus {
    outline: 0;
}

.tarteaucitron-modal-open-noscroll {
    overflow: hidden
}

.tarteaucitron-modal-open {
    overflow: hidden;
    height: 100%;
}

#tarteaucitronContentWrapper {
    display: unset;
}

/** 10082023 **/
div#tarteaucitronServices {
    border-radius: 8px;
}

button#tarteaucitronClosePanel {
    border-radius: 5px 5px 0 0;
    right: 15px !important;
    z-index: 10;
}

button.tarteaucitron-toggle-group {
    background: transparent !important;
    padding: 10px 0 0;
    cursor: pointer;
}

#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronAllow .tarteaucitronCheck::before {
    content: '\2610' !important
}

#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronAllow .tarteaucitronCheck::before {
    content: '\2611' !important
}

#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronDeny .tarteaucitronCross::before {
    content: '\2611' !important
}

#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronDeny .tarteaucitronCross::before {
    content: '\2610' !important
}

#tarteaucitronRoot .tarteaucitronAllow .tarteaucitronCheck::before {
    content: '\2610' !important
}

#tarteaucitronRoot .tarteaucitronDeny .tarteaucitronCross::before {
    content: '\2610' !important
}

#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronCheck::before {
    content: '\2611' !important
}

#tarteaucitronRoot .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronCross::before {
    font-size: inherit;
}

/* hide useless mandatory button */
#tarteaucitronRoot #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronAsk {
    display: none !important;
}

/* remove icon from the banner */
#tarteaucitronRoot button.tarteaucitronCTAButton,
#tarteaucitronRoot button#tarteaucitronCloseAlert,
#tarteaucitronRoot button#tarteaucitronPrivacyUrl {
    border: 0;
    border-radius: 4px;
}

#tarteaucitronRoot button.tarteaucitronCTAButton .tarteaucitronCross,
#tarteaucitronRoot button.tarteaucitronCTAButton .tarteaucitronCheck {
    display: none;
}

/* dont use bold to avoid bigger button */
#tarteaucitronRoot #tarteaucitron [aria-pressed="true"] {
    font-weight: initial;
    text-shadow: 0px 0px 1px;
}

/* fix padding if no cookies */
#tarteaucitronRoot #tarteaucitronServices li#tarteaucitronNoServicesTitle {
    padding: 20px;
}

/* hide info about cookies number */
#tarteaucitronRoot .tarteaucitronStatusInfo {
    display: none;
}

#tarteaucitronRoot .tarteaucitronName {
    padding-top: 5px;
}

/***************/


/** 14042021 **/
span.tarteaucitronReadmoreSeparator {
    display: inline !important;
}

/******/

/** 09052021 **/
.tarteaucitronName .tacCurrentStatus,
.tarteaucitronName .tarteaucitronReadmoreSeparator {
    color: #333 !important;
    font-size: 12px !important;
    text-transform: capitalize;
}

/**************/

/** 27032021 **/
button.tarteaucitron-toggle-group {
    display: block;
}

span.tarteaucitronH3 {
    font-weight: 700 !important;
}

#tarteaucitron #tarteaucitronServices_mandatory .tarteaucitronH3 {
    font-weight: 500 !important;
    font-size: 14px;
    margin-top: 7px;
}

.tarteaucitronLine {
    border-left: 0px solid transparent !important;
}

/*****/

/** PARTNERS LIST **/
html body #tarteaucitronRoot #tarteaucitronAlertBig div.tarteaucitronPartnersList {
    text-align: left;
    background: #ffffff;
    margin: 15px 0px 10px;
    padding: 15px;
    display: block;
    border-radius: 4px;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig div.tarteaucitronPartnersList b {
    font-weight: 700;
    padding-bottom: 8px;
    display: block;
    font-size: 16px;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig div.tarteaucitronPartnersList ul {
    margin-left: 22px;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig div.tarteaucitronPartnersList ul li {
    list-style: circle;
    font-size: 14px;
}

/**********************/

/** SAVE BUTTON **/
html body #tarteaucitronRoot button#tarteaucitronSaveButton {
    font-size: 18px !important;
    padding: 7px 20px;
    border-radius: 5px;
    cursor: pointer;
}

html body #tarteaucitronRoot div#tarteaucitronSave {
    text-align: right;
    padding: 20px;
    background: #ffffff;
}

/******************/

/** BETTER MOBILE MODE **/
@media screen and (max-width: 767px) {

    html body #tarteaucitronRoot #tarteaucitron ul#tarteaucitronServices_mandatory .tarteaucitronDeny {
        display: none !important;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder button,
    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronAsk,
    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronName {
        width: 100% !important;
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
        max-width: 100% !important;
        margin-bottom: 8px !important;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder ul .tarteaucitronLine {
        padding: 16px !important;
    }

    html body #tarteaucitronRoot #tarteaucitron div#tarteaucitronMainLineOffset .tarteaucitronName {
        display: none !important;
    }

    #tarteaucitronServices_mandatory li.tarteaucitronLine .tarteaucitronName span {
        width: 100% !important;
        display: inline-block;
    }

    li.tarteaucitronLine .tarteaucitronName span {
        width: 80% !important;
        display: inline-block;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder button.tarteaucitron-toggle-group {
        width: 10% !important;
        position: absolute;
        top: 20px;
        right: 20px;
        font-size: 0px;
        padding: 10px 0;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder button.tarteaucitron-toggle-group:before {
        content: '\0025BE';
        font-weight: 700;
        font-size: 14px;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder .tarteaucitronIsExpanded button.tarteaucitron-toggle-group:before {
        content: '\0025B4';
    }
}

@media screen and (min-width: 768px) {

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder button.tarteaucitron-toggle-group:after {
        content: '\0025BE';
        font-weight: 700;
        font-size: 14px;
        margin-left: 15px;
    }

    html body #tarteaucitronRoot #tarteaucitron .tarteaucitronBorder .tarteaucitronIsExpanded button.tarteaucitron-toggle-group:after {
        content: '\0025B4';
        margin-left: 15px;
    }
}

/****/



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

/* Animation */
#tarteaucitronRoot * {
    transition: border 300ms, background 300ms, opacity 200ms, box-shadow 400ms
}

/* HTML5 display-role reset for older browsers */
#tarteaucitronRoot article,
#tarteaucitronRoot aside,
#tarteaucitronRoot details,
#tarteaucitronRoot figcaption,
#tarteaucitronRoot figure,
#tarteaucitronRoot footer,
#tarteaucitronRoot header,
#tarteaucitronRoot hgroup,
#tarteaucitronRoot menu,
#tarteaucitronRoot nav,
#tarteaucitronRoot section {
    display: block;
}

#tarteaucitronRoot ol,
#tarteaucitronRoot ul {
    list-style: none;
}

#tarteaucitronRoot blockquote,
#tarteaucitronRoot q {
    quotes: none;
}

#tarteaucitronRoot blockquote:before,
#tarteaucitronRoot blockquote:after,
#tarteaucitronRoot q:before,
#tarteaucitronRoot q:after {
    content: '';
    content: none;
}

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

#tarteaucitronRoot a:focus-visible,
#tarteaucitronRoot button:focus-visible {
    outline: 3px dashed #3d86d8;
}

/***
 * Better scroll management
 */
div#tarteaucitronMainLineOffset {
    margin-top: 0 !important;
}

div#tarteaucitronServices {
    margin-top: 21px !important;
}

/*#tarteaucitronServices::-webkit-scrollbar {
    width: 5px;
}

#tarteaucitronServices::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 0 rgba(0,0,0,0);
}

#tarteaucitronServices::-webkit-scrollbar-thumb {
    background-color: #ddd;
    outline: 0px solid slategrey;
}*/

div#tarteaucitronServices {
    /* box-shadow: 0 40px 60px #545454; */
}

/***
 * Responsive layout for the control panel
 */
@media screen and (max-width:479px) {
    #tarteaucitron .tarteaucitronLine .tarteaucitronName {
        width: 90% !important;
    }

    #tarteaucitron .tarteaucitronLine .tarteaucitronAsk {
        float: left !important;
        margin: 10px 15px 5px;
    }
}

@media screen and (max-width:767px) {

    #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer,
    #tarteaucitron {
        background: #fff;
        border: 0 !important;
        bottom: 0 !important;
        height: 100% !important;
        left: 0 !important;
        margin: 0 !important;
        max-height: 100% !important;
        max-width: 100% !important;
        top: 0 !important;
        width: 100% !important;
    }

    #tarteaucitron .tarteaucitronBorder {
        border: 0 !important;
    }

    #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
        border: 0 !important;
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronTitle {
        text-align: left !important;
    }

    .tarteaucitronName .tarteaucitronH2 {
        max-width: 80%;
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
        text-align: center !important;
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk button {
        margin-bottom: 5px;
    }
}

@media screen and (min-width:768px) and (max-width:991px) {
    #tarteaucitron {
        border: 0 !important;
        left: 0 !important;
        margin: 0 5% !important;
        max-height: 80% !important;
        width: 90% !important;
    }
}

/***
 * Common value
 */
#tarteaucitronRoot div#tarteaucitron {
    left: 0;
    right: 0;
    margin: auto;
}

#tarteaucitronRoot button#tarteaucitronBack {
    background: #eee;
}

#tarteaucitron .clear {
    clear: both;
}

#tarteaucitron a {
    color: rgb(66, 66, 66);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

#tarteaucitronRoot button {
    background: transparent;
    border: 0;
}

#tarteaucitronAlertBig strong,
#tarteaucitronAlertSmall strong,
#tarteaucitronAlertBig a,
#tarteaucitronAlertSmall a {
    color: #fff;
}

#tarteaucitron strong {
    font-size: 22px;
    font-weight: 500;
}

#tarteaucitron ul {
    padding: 0;
}

#tarteaucitron .tarteaucitronH1,
#tarteaucitron .tarteaucitronH2,
#tarteaucitron .tarteaucitronH3,
#tarteaucitron .tarteaucitronH4,
#tarteaucitron .tarteaucitronH5,
#tarteaucitron .tarteaucitronH6 {
    display: block;
}

li.tarteaucitronLine .tarteaucitronName span.tarteaucitronServiceDescription {
    display: block;
}

.cookie-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/***
 * Root div added just before </body>
 */
#tarteaucitronRoot {
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

#tarteaucitronRoot * {
    box-sizing: initial;
    color: #333;
    /*font-family: sans-serif !important;*/
    font-size: 14px;
    line-height: normal;
    vertical-align: initial;
}

#tarteaucitronRoot .tarteaucitronH1 {
    font-size: 1.5em;
    text-align: center;
    color: #000000;
    margin: 15px 0 28px;
}

#tarteaucitronRoot .tarteaucitronH2 {
    display: inline-block;
    margin: 12px 0 0 15px;
    color: #000000;
}

#tarteaucitronCookiesNumberBis.tarteaucitronH2 {
    margin-left: 0;
}

/***
 * Control panel
 */
#tarteaucitronBack {
    background: #fff;
    display: none;
    height: 100%;
    left: 0;
    opacity: 0.7;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2147483646;
}

#tarteaucitron {
    display: none;
    max-height: 80%;
    left: 50%;
    margin: 0 auto 0 -430px;
    padding: 0;
    position: fixed;
    top: 6%;
    width: 860px;
    z-index: 2147483647;
}

#tarteaucitron .tarteaucitronBorder {
    background: #fff;
    border: 2px solid #333;
    border-top: 0;
    height: auto;
    overflow: auto;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie,
#tarteaucitron #tarteaucitronClosePanel {
    background: #ffffff;
    color: #000000;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    padding: 4px 0;
    position: absolute;
    right: 0;
    text-align: center;
    width: 70px;
    border-radius: 5px 5px 0 0;
}

#tarteaucitron #tarteaucitronDisclaimer {
    color: #555;
    font-size: 12px;
    margin: 15px auto 0;
    width: 80%;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronHidden,
#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
    /*background: rgba(51, 51, 51, 0.07);*/
}

#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
    display: none;
    position: relative;
}

#tarteaucitronCookiesList .tarteaucitronH3.tarteaucitronTitle {
    width: 100%;
    box-sizing: border-box;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
#tarteaucitronRoot .asCatToggleBtn {
    color: #000000;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    margin: 20px 0px 0px;
    padding: 5px 20px;
    text-align: left;
    width: auto;
    background: #ffffff;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a {
    color: #fff;
    font-weight: 500;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a:hover,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a:hover {
    text-decoration: none !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a {
    font-size: 22px;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a {
    font-size: 14px;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle {
    padding: 5px 10px;
    margin: 0;
}

#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails:not(.tarteaucitronDetailsInline) {
    color: #000000;
    display: none;
    font-size: 12px;
    font-weight: 500;
    margin-top: 0;
    max-width: 270px;
    padding: 20px;
    position: absolute;
    z-index: 2147483647;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle+[id^="tarteaucitronDetails"] {
    width: calc(100% - 40px);
    font-weight: 500;
    margin: 0;
    padding: 5px 20px 20px;
    background: white;
    color: #333;
}

#tarteaucitron #tarteaucitronInfo a {
    color: #fff;
    text-decoration: underline;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
    background: #ffffff;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
    background: #ffffff;
    border-left: 5px solid transparent;
    margin: 0;
    overflow: hidden;
    padding: 15px 5px;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
    border-color: #fbd600;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
    border-color: #fbd600;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    background: #ffffff;
    border: 3px solid #ffffff;
    border-left: 9px solid #ffffff;
    border-top: 5px solid #ffffff;
    margin-bottom: 0;
    margin-top: 21px;
    position: relative;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
    background: #ffffff;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName {
    margin-left: 15px;
    margin-top: 2px;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName button {
    color: #fff;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronAsk {
    margin-top: 0px !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName {
    display: inline-block;
    float: left;
    margin-left: 15px;
    text-align: left;
    width: 50%;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName a:hover {
    text-decoration: underline;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
    display: inline-block;
    float: right;
    margin: 7px 15px 0;
    text-align: right;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
.tac_activate .tarteaucitronAllow {
    background: #fbd600;
    border-radius: 4px;
    color: #000;
    cursor: pointer;
    display: inline-block;
    padding: 8px 10px;
    text-align: center;
    text-decoration: none;
    width: auto;
    border: 0;
}

#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected {
    background-color: #fbd600;
    opacity: 1;
}

#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected {
    background-color: #fbd600;
    opacity: 1;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
    background-color: #fbd600;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
    background-color: #fbd600;
}

/*#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow{
    opacity: 0.4;
}*/

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName .tarteaucitronListCookies {
    color: #333;
    font-size: 12px;
}

#tarteaucitron .tarteaucitronH3 {
    font-size: 18px;
}

#tarteaucitron #tarteaucitronMainLineOffset .tarteaucitronName {
    width: auto !important;
    margin-left: 0 !important;
    font-size: 14px;
}

.tarteaucitronAlertBigBottom span#tarteaucitronDisclaimerAlert,
.tarteaucitronAlertBigTop span#tarteaucitronDisclaimerAlert {
    display: inline-flex;
}

span#tarteaucitronDisclaimerAlert {
    padding: 0 10px;
    display: inline-block;
    overflow-y: auto;
    max-height: 50vh;
    line-height: normal;
}

@media only screen and (max-width: 768px) {
    #tarteaucitronRoot span#tarteaucitronDisclaimerAlert {
        font-size: 16px;
    }
}

#tarteaucitron .tarteaucitronBorder,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronHidden,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    border-color: #fff !important;
}

/***
 * Big alert
 */
.tarteaucitronAlertBigTop {
    top: 0;
}

.tarteaucitronAlertBigBottom {
    bottom: 0;
}

.tarteaucitronAlertBigTop,
.tarteaucitronAlertBigBottom {
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
}

#tarteaucitronRoot #tarteaucitronAlertBig {
    background: #ffffff;
    color: #000000;
    display: none;
    font-size: 15px !important;
    left: 0;
    position: fixed;
    box-sizing: content-box;
    z-index: 2147483645;
    text-align: center;
    padding: 10px 0 10px 0;
    margin: auto;
    width: 100%;
}

#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert .tarteaucitronPartnersList * {
    /*font: 15px verdana;*/
    color: #000;
}

#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
    font-weight: 700;
}

#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
    cursor: pointer;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
.tarteaucitronCTAButton,
#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllow {
    background: #fbd600;
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-size: 16px !important;
    line-height: 1;
    padding: 8px 10px;
    text-decoration: none;
    margin-left: 7px;
}

#tarteaucitronRoot .tarteaucitronDeny {
    background: #fbd600;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog {
    background: #fff;
    color: #333;
    font-size: 13px;
    margin-bottom: 3px;
    margin-left: 7px;
    padding: 8px 10px;
}

#tarteaucitron #tarteaucitronPrivacyUrlDialog {
    border-radius: 4px;
}

#tarteaucitronPercentage {
    background: #0A0 !important;
    box-shadow: 0 0 2px #fff, 0 1px 2px #555;
    height: 5px;
    left: 0;
    position: fixed;
    width: 0;
    z-index: 2147483644;
}

/***
 * Icon
 */
.tarteaucitronIconBottomRight {
    bottom: 0;
    right: 0;
}

.tarteaucitronIconBottomLeft {
    bottom: 0;
    left: 0;
}

.tarteaucitronIconTopRight {
    top: 0;
    right: 0;
}

.tarteaucitronIconTopLeft {
    top: 0;
    left: 0;
}

.tarteaucitronIconTopLeft #tarteaucitronManager {
    border-radius: 2px 7px 7px 2px;
}

.tarteaucitronIconTopRight #tarteaucitronManager {
    border-radius: 7px 2px 2px 7px;
}

.tarteaucitronIconBottomLeft #tarteaucitronManager {
    border-radius: 7px 7px 2px 2px;
}

.tarteaucitronIconBottomRight #tarteaucitronManager {
    border-radius: 7px 7px 2px 2px;
}

#tarteaucitronIcon {
    background: transparent;
    position: fixed;
    /*display: none;*/
    width: auto;
    z-index: 2147483646;
}

#tarteaucitronIcon #tarteaucitronManager {
    color: transparent;
    cursor: pointer;
    display: inline-block;
    font-size: 11px !important;
    padding: 8px 10px 8px;
    border: none;
}

#tarteaucitronIcon #tarteaucitronManager img {
    width: 50px;
    height: 50px;
}

#tarteaucitronRoot .tarteaucitronCross::before {
    content: '\2717';
    display: inline-block;
    color: #000;
}

#tarteaucitronRoot .tarteaucitronCheck::before {
    content: '\2713';
    display: inline-block;
    color: #000;
}

#tarteaucitronRoot .tarteaucitronPlus::before {
    content: '\271b';
    display: inline-block;
    color: black;
}


/***
 * Small alert
 */

.tarteaucitronAlertSmallTop,
.tarteaucitronAlertSmallBottom {
    bottom: 0;
}

#tarteaucitronAlertSmall {
    background: #fff;
    display: none;
    padding: 0;
    position: fixed;
    right: 0;
    text-align: center;
    width: auto;
    z-index: 2147483646;
    box-shadow: 0 0 2px #ddd;
    border-radius: 5px 0 0 0;
}

#tarteaucitronAlertSmall #tarteaucitronManager {
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-size: 11px !important;
    padding: 8px 10px 8px;
}

#tarteaucitronAlertSmall #tarteaucitronManager:hover {
    background: rgba(255, 255, 255, 0.05);
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot {
    background-color: gray;
    border-radius: 5px;
    display: block;
    height: 8px;
    margin-bottom: 1px;
    margin-top: 5px;
    overflow: hidden;
    width: 100%;
}

#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 #tarteaucitronCookiesNumber {
    background: rgba(255, 255, 255, 0.2);
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-size: 30px;
    padding: 0px 10px;
    vertical-align: top;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesNumber:hover {
    background: rgba(255, 255, 255, 0.3);
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
    display: none;
    max-height: 70%;
    max-width: 500px;
    position: fixed;
    right: 0;
    width: 100%;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
    background: #fff;
    border: 2px solid #333;
    color: #333;
    font-size: 11px;
    height: auto;
    overflow: auto;
    text-align: left;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList strong {
    color: #333;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle {
    background: #fff;
    margin-top: 21px;
    padding: 13px 0 9px 13px;
    text-align: left;
    border-radius: 5px 0 0 0;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle strong {
    color: #000;
    font-size: 16px;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain {
    background: rgba(51, 51, 51, 0.1);
    padding: 7px 5px 10px;
    word-wrap: break-word;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain:hover {
    background: rgba(51, 51, 51, 0.2);
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain a {
    color: #333;
    text-decoration: none;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft {
    display: inline-block;
    width: 50%;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft a strong {
    color: darkred;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListRight {
    color: #333;
    display: inline-block;
    font-size: 11px;
    margin-left: 10%;
    vertical-align: top;
    width: 30%;
}

/***
 * Embeded cookies list
 */
#tarteaucitronServicesnoTitle_cookies #tarteaucitronServices_cookies .tarteaucitronHidden {
    display: block !important;
}

#tarteaucitronServicesnoTitle_cookies #tarteaucitronCookiesList .tarteaucitronH3 {
    padding: 8px 20px;
    margin-top: 0 !important
}

#tarteaucitronServicesnoTitle_cookies .tarteaucitronCookiesListLeft,
#tarteaucitronServicesnoTitle_cookies .tarteaucitronCookiesListRight {
    padding: 10px 14px;
    width: calc(50% - 56px);
    display: inline-block;
    word-break: break-all;
    vertical-align: top;
}

#tarteaucitronServicesnoTitle_cookies .tarteaucitronCookiesListRight {
    font-family: monospace
}

#tarteaucitronServicesnoTitle_cookies .tarteaucitron-spacer-20 {
    height: 0;
}

#tarteaucitronServicesnoTitle_cookies .purgeBtn {
    cursor: pointer
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServicesnoTitle_cookies:hover #tarteaucitronCookiesList ul li {
    background: transparent !important
}

@media screen and (max-width: 767px) {
    #tarteaucitronServicesnoTitle_cookies #tarteaucitron-toggle-group-cookies {
        text-align: left;
        padding: 0 0 0 3px !important
    }

    html body #tarteaucitronRoot #tarteaucitronServicesnoTitle_cookies .tarteaucitronCookiesListLeft .purgeBtn {
        display: inline !important;
        width: auto !important
    }
}

/***
 * Fallback activate link
 */
.tac_activate {
    background: #333;
    color: #fff;
    display: table;
    font-size: 12px;
    height: 100%;
    line-height: initial;
    margin: auto;
    text-align: center;
    width: 100%;
}

.tac_float {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.tac_activate .tac_float strong {
    color: #fff;
}

.tac_activate .tac_float .tarteaucitronAllow {
    background-color: #fbd600;
    display: inline-block;
}

/***
 * CSS for services
 */
ins.ferank-publicite,
ins.adsbygoogle {
    text-decoration: none;
}

div.amazon_product {
    height: 240px;
    width: 120px;
}

/*.tarteaucitronIsAllowed .tarteaucitronDeny {
    opacity: 0.4!important;
}.tarteaucitronIsDenied .tarteaucitronAllow {
     opacity: 0.4!important;
 }.tarteaucitronIsAllowed .tarteaucitronAllow {
      opacity: 1!important;
  }.tarteaucitronIsDenied .tarteaucitronDeny {
       opacity: 1!important;
   }
.tarteaucitronLine .tarteaucitronAllow, .tarteaucitronLine .tarteaucitronDeny {
    opacity: 0.4;
}
#tarteaucitronServices_mandatory button.tarteaucitronAllow {
    opacity: 1;
}*/

div#tarteaucitronInfo {
    display: block !important;
    position: relative !important;
    text-align: center !important;
    max-width: 80% !important;
    padding: 15px 0 !important;
    margin: -10px auto 40px !important;
    font-size: 1em !important;
    border-bottom: 1px solid;
    border-top: 1px solid;
    border-color: #555;
}

#tarteaucitronRoot a.tarteaucitronSelfLink {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -30px;
    text-align: center;
    display: block;
    height: 30px;
}

#tarteaucitronRoot a.tarteaucitronSelfLink img {
    margin-left: auto;
    margin-right: auto;
    width: 119px;
}

.tarteaucitronMainLine .tarteaucitronH2 {
    font-size: 1.2em !important;
    margin-top: 4px !important;
}

span.tarteaucitronTitle.tarteaucitronH3 {
    margin-top: 12px !important;
}

#tarteaucitronCloseCross {
    position: absolute;
    color: #000;
    font-size: 1.8rem;
    cursor: pointer;
    top: 10px;
    right: 26px
}

#tarteaucitronCloseCross span {
    color: inherit;
}

.tarteaucitron-spacer-20 {
    height: 20px;
    display: block;
}

.tarteaucitron-display-block {
    display: block;
}

.tarteaucitron-display-none {
    display: none;
}

.tarteaucitronSize-middle #tarteaucitronPrivacyUrl {
    display: block;
    margin: 15px auto 0;
}

.tarteaucitronSize-bottom #tarteaucitronCloseCross,
.tarteaucitronSize-top #tarteaucitronCloseCross {
    position: initial;
    margin: 0;
    margin-left: 20px;
    padding: 0;
    font-size: 18px;
}

.tarteaucitronSize-bottom #tarteaucitronAlertBig #tarteaucitronCloseAlert,
.tarteaucitronSize-top #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    margin-bottom: 0;
}

.tarteaucitronSize-bottom #tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
.tarteaucitronSize-top #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
    margin-left: 7px;
}

#tarteaucitronRoot #tarteaucitronBack {
    border-radius: 0;
}

/* custom title for popup and middle banner */
#tarteaucitronRoot.tarteaucitronSize-middle #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronSize-bottom #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig::before {
    content: var(--tacTitleBanner);
}

/* middle banner */
div#tarteaucitronRoot.tarteaucitronSize-middle.tarteaucitronBeforeVisible:before {
    content: '';
    position: fixed;
    width: 100%;
    height: 100%;
    background: white;
    top: 0;
    left: 0;
    z-index: 100000;
    opacity: 0.5;
}

body #tarteaucitronRoot.tarteaucitronSize-middle div#tarteaucitronAlertBig {
    width: 60%;
    min-width: 285px;
    height: fit-content;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    box-shadow: 0 0 9000px #000;
    border-radius: 20px;
    padding: 35px 25px;
}

.tarteaucitronSize-middle span#tarteaucitronDisclaimerAlert {
    padding: 0 30px;
}

#tarteaucitronRoot.tarteaucitronSize-middle span#tarteaucitronDisclaimerAlert {
    margin: 10px 0 30px;
    display: block;
    text-align: center;
    font-size: 21px;
}

@media screen and (max-width: 900px) {
    .tarteaucitronSize-middle div#tarteaucitronAlertBig button {
        margin: 0 auto 10px !important;
        display: block !important;
    }
}

.tarteaucitronSize-middle div#tarteaucitronAlertBig:before {
    font-size: 35px;
}

/* popup banner */
.tarteaucitronSize-popup div#tarteaucitronAlertBig:before {
    font-size: 22px;
}

body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig {
    bottom: 0;
    top: auto !important;
    left: 8px !important;
    right: auto !important;
    transform: initial !important;
    border-radius: 5px 5px 0 0 !important;
    max-width: 250px !important;
    width: calc(100% - 16px) !important;
    min-width: 0 !important;
    padding: 25px 0;
}

.tarteaucitronSize-popup span#tarteaucitronDisclaimerAlert {
    padding: 0 30px;
    font-size: 15px !important;
}

#tarteaucitronRoot.tarteaucitronSize-popup span#tarteaucitronDisclaimerAlert {
    margin: 10px 0 30px;
    display: block;
    text-align: center;
    font-size: 21px;
}

.tarteaucitronSize-popup div#tarteaucitronAlertBig button:not(#tarteaucitronCloseCross) {
    margin: 0 auto 10px !important;
    display: block !important;
    width: calc(100% - 60px);
    box-sizing: border-box;
}

/* ==========================================================================
   DELFORNO CUSTOM PREMIUM OVERRIDES FOR TARTEAUCITRON
   ========================================================================== */

:root {
    --tac-primary: var(--wp--preset--color--primary, #63403a);
    --tac-secondary: var(--wp--preset--color--secondary, #ac8076);
    --tac-surface-rose: var(--wp--preset--color--surface-rose, #f8f0f2);
    --tac-beige: var(--wp--preset--color--beige, #f5ede4);
    --tac-white: #ffffff;
    --tac-font-sans: var(--wp--preset--font-family--sans, "Instrument Sans", sans-serif);
    --tac-font-serif: var(--wp--preset--font-family--serif, "Instrument Serif", serif);
}

/* Reset and base font for tarteaucitron */
#tarteaucitronRoot,
#tarteaucitronRoot * {
    font-family: var(--tac-font-sans) !important;
    color: var(--tac-primary) !important;
    box-sizing: border-box !important;
}

/* Modal overlay backdrop filter blur */
html body.tarteaucitron-modal-open div#tarteaucitronRoot::before,
html body .tarteaucitronSize-middle.tarteaucitronBeforeVisible::before,
html body .tarteaucitronSize-bottom.tarteaucitronBeforeVisible::before,
html body .tarteaucitronSize-popup.tarteaucitronBeforeVisible::before {
    background: rgba(99, 64, 58, 0.15) !important;
    /* Tinted backdrop */
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    opacity: 1 !important;
    content: " " !important;
}

/* 1. BIG BANNER / ALERT */
body #tarteaucitronRoot.tarteaucitronSize-middle div#tarteaucitronAlertBig,
body #tarteaucitronRoot.tarteaucitronSize-bottom div#tarteaucitronAlertBig,
body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig {
    background: var(--tac-surface-rose) !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 16px !important;
    padding: 40px 32px !important;
    max-width: 580px !important;
    width: 90% !important;
    box-shadow: 0 20px 50px rgba(99, 64, 58, 0.15) !important;

    /* Force centered modal layout for all orientations (middle, bottom, popup) */
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: auto !important;
    height: fit-content !important;
    transform: none !important;
}

/* Customize title injected before alert */
#tarteaucitronRoot.tarteaucitronSize-middle #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronSize-bottom #tarteaucitronAlertBig::before,
#tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig::before {
    font-family: var(--tac-font-serif) !important;
    color: var(--tac-primary) !important;
    font-size: 32px !important;
    font-weight: normal !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 20px !important;
    display: block !important;
}

/* Disclaimer text */
#tarteaucitronRoot #tarteaucitronDisclaimerAlert {
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: var(--tac-primary) !important;
    margin-bottom: 28px !important;
    display: block !important;
}

/* Privacy policy link inside alert */
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
    background: transparent !important;
    color: var(--tac-primary) !important;
    text-decoration: underline !important;
    font-size: 14px !important;
    padding: 0 !important;
    margin: 15px auto 0 !important;
    display: block !important;
    width: fit-content !important;
    border: none !important;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl:hover {
    opacity: 1;
    color: var(--tac-secondary) !important;
}

/* Banner buttons containers and spacing */
#tarteaucitronAlertBig button {
    margin: 8px 6px !important;
}

/* Primary Button: Accept All */
#tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton.tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2 {
    background: var(--tac-primary) !important;
    color: var(--tac-white) !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 12px 28px !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 30px !important;
    /* Premium capsule style */
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    cursor: pointer !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton.tarteaucitronAllow:hover,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2:hover {
    background: var(--tac-secondary) !important;
    border-color: var(--tac-secondary) !important;
    transform: translateY(-2px) !important;
}

/* Secondary Button: Deny All */
#tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton.tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2 {
    background: transparent !important;
    color: var(--tac-primary) !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 12px 28px !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 30px !important;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    cursor: pointer !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton.tarteaucitronDeny:hover,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2:hover {
    background: var(--tac-primary) !important;
    color: var(--tac-white) !important;
    transform: translateY(-2px) !important;
}

/* Link Button: Personalize settings */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
    background: transparent !important;
    color: var(--tac-primary) !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 12px 20px !important;
    border: none !important;
    transition: color 0.3s ease !important;
    cursor: pointer !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert:hover {
    color: var(--tac-secondary) !important;
}

/* Responsive adjustment for banner buttons */
@media screen and (max-width: 600px) {

    body #tarteaucitronRoot.tarteaucitronSize-middle div#tarteaucitronAlertBig,
    body #tarteaucitronRoot.tarteaucitronSize-bottom div#tarteaucitronAlertBig,
    body #tarteaucitronRoot.tarteaucitronSize-popup div#tarteaucitronAlertBig {
        padding: 30px 20px !important;
    }

    #tarteaucitronRoot.tarteaucitronSize-middle #tarteaucitronAlertBig::before,
    #tarteaucitronRoot.tarteaucitronSize-bottom #tarteaucitronAlertBig::before,
    #tarteaucitronRoot.tarteaucitronSize-popup #tarteaucitronAlertBig::before {
        font-size: 24px !important;
    }

    #tarteaucitronRoot #tarteaucitronAlertBig button {
        display: block !important;
        width: 100% !important;
        margin: 10px 0 !important;
        text-align: center !important;
    }
}

/* Close button (X) on Alert banner */
#tarteaucitronRoot #tarteaucitronCloseCross {
    position: absolute !important;
    top: 15px !important;
    right: 20px !important;
    color: var(--tac-primary) !important;
    font-size: 20px !important;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}

#tarteaucitronRoot #tarteaucitronCloseCross:hover {
    opacity: 1;
}

/* 2. THE DETAIL PANEL */
#tarteaucitron {
    background: var(--tac-surface-rose) !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 16px !important;
    box-shadow: 0 30px 70px rgba(99, 64, 58, 0.25) !important;
    font-family: var(--tac-font-sans) !important;
    /* Pas de cap de hauteur : le panneau s'adapte au contenu, aucun scroll
       interne. Garde-fou souple si la liste devenait très longue. */
    max-height: 95vh !important;
    overflow-y: visible !important;
}

/* La mise en page flex ne s'applique QUE quand le panneau est ouvert.
   Sinon le display:flex !important écrasait le display:none inline posé par
   le JS à la fermeture, gardant la popin toujours visible. Le :not(...)
   exclut aussi le cas où le JS masque le panneau (sous-panneau cookies). */
html.tarteaucitron-modal-open #tarteaucitron:not([style*="display: none"]) {
    display: flex !important;
    flex-direction: column !important;
}

#tarteaucitron .tarteaucitronBorder {
    background: var(--tac-surface-rose) !important;
    border: none !important;
    /* Afficher tous les services sans scroll interne. Le panneau (#tarteaucitron,
       max-height 95vh) reste le garde-fou si la liste devient très longue. */
    max-height: none !important;
    overflow-y: visible !important;
}

/* Le JS (jsSizing 'main') pose une height fixe + overflow inline sur
   #tarteaucitronServices, ce qui crée un scroll interne. On l'écrase pour
   laisser la liste s'afficher en entier ; le panneau gère la hauteur. */
#tarteaucitron #tarteaucitronServices {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

#tarteaucitron .tarteaucitronH1 {
    font-family: var(--tac-font-serif) !important;
    color: var(--tac-primary) !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    font-weight: normal !important;
    font-size: 28px !important;
    text-align: center !important;
    margin: 10px 0 !important;
    width: 100% !important;
    display: block !important;
}

#tarteaucitron div#tarteaucitronInfo {
    background: transparent !important;
    border-top: 1px solid var(--tac-beige) !important;
    border-bottom: 1px solid var(--tac-beige) !important;
    color: var(--tac-primary) !important;
    padding: 16px 0 !important;
    margin: 0 0 15px !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    text-align: center !important;
    width: 100% !important;
    max-width: none !important;
    /* Override default max-width: 270px */
    display: block !important;
    position: relative !important;
}

#tarteaucitron #tarteaucitronClosePanel {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    color: var(--tac-primary) !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 4px !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    transition: color 0.3s ease !important;
    z-index: 100 !important;
}

#tarteaucitron #tarteaucitronClosePanel:hover {
    background: transparent !important;
    color: var(--tac-secondary) !important;
    text-decoration: underline !important;
}

/* Category Titles */
#tarteaucitron .tarteaucitronTitle button,
#tarteaucitronRoot .asCatToggleBtn {
    background: transparent !important;
    font-family: var(--tac-font-serif) !important;
    color: var(--tac-primary) !important;
    font-size: 22px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-weight: normal !important;
    border: none !important;
    padding: 10px 0 !important;
    margin: 25px 0 10px !important;
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    border-bottom: 1px solid var(--tac-beige) !important;
}

/* Individual Service Lines */
#tarteaucitron #tarteaucitronServices {
    padding: 24px 24px 12px !important;
    /* Push main line away from top edge */
    margin: 0 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
    background: var(--tac-white) !important;
    border: 1px solid rgba(99, 64, 58, 0.1) !important;
    border-left: 4px solid var(--tac-beige) !important;
    border-radius: 10px !important;
    padding: 16px 20px !important;
    margin-bottom: 12px !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    overflow: visible !important;
}

/* Respecter le masquage inline (display:none) posé par le JS sur la ligne
   "aucun service" : sans ça, le display:flex !important ci-dessus la force
   à rester visible alors qu'un service est enregistré. */
#tarteaucitron #tarteaucitronServices li#tarteaucitronNoServicesTitle[style*="display: none"] {
    display: none !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
    border-left-color: var(--tac-primary) !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName {
    margin: 0 !important;
    float: none !important;
    width: auto !important;
    max-width: 65% !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName span.tarteaucitronH3 {
    font-family: var(--tac-font-sans) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    color: var(--tac-primary) !important;
    display: block !important;
    margin-bottom: 4px !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName span.tarteaucitronServiceDescription {
    font-family: var(--tac-font-sans) !important;
    font-size: 13px !important;
    color: var(--tac-primary) !important;
    opacity: 0.8 !important;
    line-height: 1.4 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
    margin: 0 !important;
    float: none !important;
    display: flex !important;
    gap: 10px !important;
}

/* Main action line (Global Accept/Deny) */
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 24px !important;
    margin-top: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px 15px !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName {
    margin: 0 !important;
    float: none !important;
    display: block;
    width: auto !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName .tarteaucitronH2 {
    font-family: var(--tac-font-sans) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    color: var(--tac-primary) !important;
    margin: 0 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronAsk {
    margin: 0 !important;
    float: none !important;
    display: flex !important;
    gap: 10px !important;
    width: auto !important;
}

/* Panel Buttons (Allow / Deny) */
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitronServices_mandatory button.tarteaucitronAllow {
    font-family: var(--tac-font-sans) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 20px !important;
    padding: 8px 18px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    border: 1px solid transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    height: 36px !important;
    box-sizing: border-box !important;
}

/* Allow / Green state */
#tarteaucitronRoot .tarteaucitronAllow {
    background: #688b77 !important;
    /* Premium muted sage green */
    color: var(--tac-white) !important;
}

#tarteaucitronRoot .tarteaucitronAllow:hover {
    background: #50705f !important;
}

/* Deny / Red state */
#tarteaucitronRoot .tarteaucitronDeny {
    background: transparent !important;
    border-color: #b57a70 !important;
    /* Premium soft terracotta */
    color: #b57a70 !important;
}

#tarteaucitronRoot .tarteaucitronDeny:hover {
    background: #b57a70 !important;
    color: var(--tac-white) !important;
}

/* Selected button states */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
    border-left-color: #688b77 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
    border-left-color: #b57a70 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow {
    box-shadow: 0 0 0 2px var(--tac-white), 0 0 0 4px #688b77 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
    box-shadow: 0 0 0 2px var(--tac-white), 0 0 0 4px #b57a70 !important;
}

/* Save button wrapper */
#tarteaucitronRoot div#tarteaucitronSave {
    background: var(--tac-surface-rose) !important;
    border-top: 1px solid var(--tac-beige) !important;
    padding: 24px !important;
    text-align: center !important;
    border-radius: 0 0 16px 16px !important;
}

/* Save Button */
#tarteaucitronRoot button#tarteaucitronSaveButton {
    background: var(--tac-primary) !important;
    color: var(--tac-white) !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 12px 40px !important;
    border-radius: 30px !important;
    width: auto !important;
    display: inline-block !important;
    cursor: pointer !important;
    border: none !important;
    box-shadow: 0 4px 12px rgba(99, 64, 58, 0.15) !important;
    transition: all 0.3s ease !important;
}

#tarteaucitronRoot button#tarteaucitronSaveButton:hover {
    background: var(--tac-secondary) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(99, 64, 58, 0.25) !important;
}

/* 3. REOPEN BADGE / COOKIE ICON */
#tarteaucitronIcon {
    margin: 20px !important;
    transition: all 0.3s ease !important;
}

#tarteaucitronIcon #tarteaucitronManager {
    background: var(--tac-surface-rose) !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 50% !important;
    /* Perfect circle */
    width: 50px !important;
    height: 50px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 8px 24px rgba(99, 64, 58, 0.12) !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

#tarteaucitronIcon #tarteaucitronManager img {
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    filter: sepia(1) saturate(2) hue-rotate(-30deg) !important;
    /* Tint standard icon to match theme primary */
}

#tarteaucitronIcon #tarteaucitronManager:hover {
    background: var(--tac-primary) !important;
    transform: scale(1.1) rotate(15deg) !important;
}

#tarteaucitronIcon #tarteaucitronManager:hover img {
    filter: brightness(0) invert(1) !important;
    /* Make white on hover */
}

/* Hide credit link in panel if needed, but it is fine to styled it elegantly */
#tarteaucitronRoot a.tarteaucitronSelfLink {
    opacity: 0.5;
    transition: opacity 0.3s ease;
}

#tarteaucitronRoot a.tarteaucitronSelfLink:hover {
    opacity: 0.9;
}

/* 4. BLOCKED MEDIA FALLBACK (YOUTUBE, MAPS, ETC.) */
.tac_activate {
    background: var(--tac-surface-rose) !important;
    border: 1px solid var(--tac-primary) !important;
    border-radius: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 30px !important;
    height: 100% !important;
    min-height: 250px !important;
    box-sizing: border-box !important;
}

.tac_activate .tac_float {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 15px !important;
}

.tac_activate .tac_float strong,
.tac_activate .tac_float span {
    color: var(--tac-primary) !important;
    font-family: var(--tac-font-sans) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

.tac_activate .tarteaucitronAllow,
.tac_activate .tarteaucitronAllow span {
    background: var(--tac-primary) !important;
    color: var(--tac-white) !important;
    font-family: var(--tac-font-sans) !important;
    font-weight: 600 !important;
}

.tac_activate .tarteaucitronAllow {
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 10px 24px !important;
    border-radius: 30px !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(99, 64, 58, 0.1) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

.tac_activate .tarteaucitronAllow:hover {
    background: var(--tac-secondary) !important;
    transform: translateY(-1px) !important;
}

/* 5. YOUTUBE PLAYER LAYOUT & RESPONSIVENESS */
.youtube_player {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    position: relative !important;
}

/* Gutenberg responsive embed wrapper adaptation */
.wp-block-embed__wrapper .youtube_player,
.wp-block-embed-youtube .youtube_player,
.wp-block-embed .youtube_player {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

/* Enforce the iframe/placeholder inside to scale perfectly */
.youtube_player iframe,
.youtube_player .tac_activate {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
}