/* Scoped to the shared audience / advertising preference region. */
body.isecurit-vitrine #ads-consent-panel.measurement-preferences {
    --privacy-edge: 20px;
    box-sizing: border-box;
    position: fixed;
    z-index: 70;
    inset: auto auto calc(var(--privacy-contact-offset, 0px) + max(var(--privacy-edge), env(safe-area-inset-bottom, 0px))) var(--privacy-edge);
    width: calc(100% - 2 * var(--privacy-edge));
    max-width: 660px;
    max-height: calc(100dvh - var(--privacy-contact-offset, 0px) - 2 * max(var(--privacy-edge), env(safe-area-inset-bottom, 0px)));
    margin: 0;
    padding: 22px 24px 14px;
    overflow: auto;
    overscroll-behavior: contain;
    border: 1px solid #deddd6;
    border-top: 3px solid #be2635;
    border-radius: 16px;
    background: #f8f7f3;
    color: #242724;
    box-shadow: 0 10px 44px #24272426, 0 2px 8px #2427240d;
    font: 400 .9375rem/1.65 var(--font, 'Manrope', Arial, sans-serif);
    text-align: left;
    color-scheme: light;
}

body.isecurit-vitrine #ads-consent-panel.measurement-preferences [hidden],
body.isecurit-vitrine #ads-consent-panel.measurement-preferences[hidden],
body.isecurit-vitrine #ads-preferences-open[hidden] { display: none; }

#ads-consent-panel .privacy-banner-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
#ads-consent-panel .privacy-banner-heading > div { flex: 1; min-width: 0; }
#ads-consent-panel .privacy-banner-mark { display: grid; place-items: center; width: 42px; height: 42px; flex-shrink: 0; border: 1px solid #be26352b; border-radius: 12px; background: #be26350a; color: #be2635; }
#ads-consent-panel .privacy-banner-mark svg { width: 24px; height: 24px; }
#ads-consent-panel .privacy-banner-eyebrow { display: block; color: #a11d2a; font-size: .75rem; font-weight: 750; letter-spacing: .025em; }
body.isecurit-vitrine #ads-consent-panel.measurement-preferences h2 { margin: 3px 0 0; font: 750 1.375rem/1.35 var(--font, 'Manrope', Arial, sans-serif); letter-spacing: -.035em; }
#ads-consent-panel .privacy-banner-close { display: grid; place-items: center; flex-shrink: 0; align-self: flex-start; width: 44px; height: 44px; margin: -6px -8px 0 0; padding: 10px; border: 1px solid transparent; border-radius: 50%; background: transparent; color: #4d5348; cursor: pointer; }
#ads-consent-panel .privacy-banner-close svg { width: 22px; height: 22px; }
#ads-consent-panel .privacy-banner-close:hover { border-color: #deddd6; background: #eeede7; }
body.isecurit-vitrine #ads-consent-panel.measurement-preferences p { margin: 10px 0; font-size: .9375rem; line-height: 1.65; }
body.isecurit-vitrine #ads-consent-panel.measurement-preferences .privacy-banner-note { color: #596154; font-size: .875rem; }
#ads-consent-panel a { color: #a11d2a; text-decoration: underline; text-underline-offset: 3px; }
#ads-consent-panel .privacy-banner-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
#ads-consent-panel .privacy-choice { display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid #242724; border-radius: 8px; background: #242724; color: #fff; font: 700 .9375rem/1.5 var(--font, 'Manrope', Arial, sans-serif); overflow-wrap: anywhere; white-space: normal; text-align: center; cursor: pointer; }
#ads-consent-panel .privacy-choice:hover { border-color: #a11d2a; background: #a11d2a; }
#ads-consent-panel .privacy-choice:disabled { opacity: .65; cursor: wait; }
#ads-consent-panel .privacy-choice[data-busy="true"]::after { content: ''; width: 1em; height: 1em; flex-shrink: 0; border: 2px solid #ffffff66; border-top-color: #fff; border-radius: 50%; animation: privacy-saving .8s linear infinite; }
#ads-consent-panel .privacy-personalize { margin-top: 6px; }
#ads-consent-panel .privacy-personalize summary { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 8px; border-radius: 6px; color: #4d5348; font-size: .875rem; font-weight: 700; list-style: none; cursor: pointer; }
#ads-consent-panel .privacy-personalize summary::-webkit-details-marker { display: none; }
#ads-consent-panel .privacy-personalize summary svg { width: 18px; height: 18px; }
#ads-consent-panel .privacy-personalize[open] summary svg { transform: rotate(180deg); }
#ads-consent-panel .privacy-categories { display: grid; gap: 4px; padding: 8px 0; border-top: 1px solid #deddd6; }
#ads-consent-panel .privacy-category { display: flex; align-items: flex-start; gap: 12px; min-height: 48px; padding: 10px 4px; cursor: pointer; }
#ads-consent-panel .privacy-category input { width: 20px; height: 20px; flex-shrink: 0; margin: 3px 0 0; accent-color: #be2635; }
#ads-consent-panel .privacy-category > span { min-width: 0; }
#ads-consent-panel .privacy-category strong { display: block; font-size: .875rem; font-weight: 750; }
#ads-consent-panel .privacy-category small { display: block; margin-top: 3px; color: #596154; font-size: .8125rem; line-height: 1.6; }
#ads-consent-panel .privacy-save { margin: 2px 0 8px; }
body.isecurit-vitrine #ads-consent-panel.measurement-preferences .privacy-banner-error { padding: 10px 12px; border-left: 3px solid #be2635; border-radius: 3px; background: #be26350a; color: #a11d2a; font-size: .875rem; }
body.isecurit-vitrine .privacy-preferences-link { padding: 14px 20px; background: #f3f2ed; text-align: center; }
body.isecurit-vitrine .footer .privacy-preferences-link { margin-top: 8px; padding: 0; text-align: left; }
body.isecurit-vitrine #ads-preferences-open { display: inline-flex; align-items: center; justify-content: flex-start; min-height: 44px; max-width: 100%; margin: 0; padding: 6px 0; border: 0; border-radius: 3px; background: transparent; color: #4d5348; font: 650 .875rem/1.6 var(--font, 'Manrope', Arial, sans-serif); text-decoration: underline; text-underline-offset: 4px; white-space: normal; overflow-wrap: anywhere; cursor: pointer; }
body.isecurit-vitrine #ads-preferences-open:hover { color: #a11d2a; }
#ads-consent-panel :is(button, a, summary, input):focus-visible,
body.isecurit-vitrine #ads-preferences-open:focus-visible { outline: 3px solid #be2635; outline-offset: 3px; box-shadow: 0 0 0 2px #f8f7f3; }
body.isecurit-vitrine .privacy-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

@keyframes privacy-saving { to { transform: rotate(360deg); } }
@media (max-width: 760px) {
    body.isecurit-vitrine #ads-consent-panel.measurement-preferences { --privacy-edge: 12px; padding: 18px 18px 10px; }
    body.isecurit-vitrine:has(.mobile-contact) #ads-consent-panel.measurement-preferences { --privacy-contact-offset: calc(78px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 600px) {
    body.isecurit-vitrine:has(.service-contact-bar) #ads-consent-panel.measurement-preferences { --privacy-contact-offset: calc(88px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 380px) {
    body.isecurit-vitrine #ads-consent-panel.measurement-preferences { padding-inline: 14px; }
    body.isecurit-vitrine #ads-consent-panel.measurement-preferences h2 { font-size: 1.25rem; }
    #ads-consent-panel .privacy-banner-mark { display: none; }
    #ads-consent-panel .privacy-banner-actions { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
    #ads-consent-panel .privacy-choice[data-busy="true"]::after { animation: none; }
}
