/* Cookie banner — restyle of the Complianz banner (logic untouched).
   Scoped to .is-v3 (body class of v3 pages) until the switch-over. */

.is-v3 .cmplz-cookiebanner{
  --cmplz_banner_width:440px;
  --cmplz_banner_background_color:#FFFFFF;
  --cmplz_banner_border_color:var(--is-border);
  --cmplz_banner_border_width:1px;
  --cmplz_banner_border_radius:22px;
  --cmplz_banner_margin:24px;
  --cmplz_title_font_size:17px;
  --cmplz_text_color:var(--is-text);
  --cmplz_text_font_size:14px;
  --cmplz_text_line_height:1.65;
  --cmplz_hyperlink_color:var(--is-muted);
  --cmplz_link_font_size:13px;
  --cmplz_category_body_font_size:13px;
  --cmplz_button_accept_background_color:var(--is-blue);
  --cmplz_button_accept_border_color:var(--is-blue);
  --cmplz_button_accept_text_color:var(--is-night);
  --cmplz_button_deny_background_color:#FFFFFF;
  --cmplz_button_deny_border_color:var(--is-navy);
  --cmplz_button_deny_text_color:var(--is-navy);
  --cmplz_button_settings_background_color:#FFFFFF;
  --cmplz_button_settings_border_color:var(--is-navy);
  --cmplz_button_settings_text_color:var(--is-navy);
  --cmplz_button_border_radius:10px;
  --cmplz_button_font_size:15px;
  --cmplz_category_header_always_active_color:#17804A;
  --cmplz_category_header_title_font_size:15px;
  --cmplz_slider_active_color:var(--is-blue);
  --cmplz_slider_inactive_color:#CFD8E3;
  --cmplz_slider_bullet_color:#FFFFFF;
  font-family:var(--is-font);
  box-sizing:border-box;
  /* Fixed width: without it the banner grows with its content and an expanded category description spreads it
     across the whole screen */
  width:min(516px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  padding:24px;
  gap:18px;
  box-shadow:0 40px 90px -30px rgba(8,23,51,.55),0 0 0 1px rgba(13,36,81,.04);
  animation-duration:.35s; /* Complianz fades it in over 2 s */
}
.is-v3 .cmplz-cookiebanner .cmplz-categories.cmplz-fade-in{animation-duration:.25s} /* 1 s in Complianz */
/* Bottom right, non-blocking (CNIL: no cookie wall): the site texts and buttons are left-aligned, the visuals on the right */
.is-v3 .cmplz-cookiebanner.cmplz-bottom-right,.is-v3 .cmplz-cookiebanner.cmplz-bottom-left{right:24px;left:auto;bottom:24px;margin:0}
/* The soft cookie wall is the banner's own container: keep it, but transparent and click-through */
.is-v3 .cmplz-soft-cookiewall{background:transparent!important;pointer-events:none} /* !important: Complianz sets the overlay colour with high specificity */
.is-v3 .cmplz-soft-cookiewall .cmplz-cookiebanner{pointer-events:auto}

/* Header: icon tile instead of the site logo, title, close button */
.is-v3 .cmplz-cookiebanner .cmplz-header{display:flex;align-items:center;gap:14px}
.is-v3 .cmplz-cookiebanner .cmplz-logo{display:none}
.is-v3 .cmplz-cookiebanner .cmplz-header::before{content:"";flex-shrink:0;width:42px;height:42px;border-radius:12px;box-shadow:0 8px 18px -8px rgba(22,121,194,.6);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5'/%3E%3Cpath d='M8.5 8.5v.01'/%3E%3Cpath d='M16 15.5v.01'/%3E%3Cpath d='M12 12v.01'/%3E%3Cpath d='M11 17v.01'/%3E%3Cpath d='M7 14v.01'/%3E%3C/svg%3E") center/20px no-repeat,var(--is-grad-brand-icon)}
.is-v3 .cmplz-cookiebanner .cmplz-title{flex:1;font-weight:700;line-height:1.3;color:var(--is-navy);text-align:left}
.is-v3 .cmplz-cookiebanner .cmplz-close{flex-shrink:0;width:34px;height:34px;border-radius:10px;border:1px solid var(--is-border);display:flex;align-items:center;justify-content:center;color:var(--is-navy)}
.is-v3 .cmplz-cookiebanner .cmplz-close svg{width:12px;height:12px}
.is-v3 .cmplz-cookiebanner .cmplz-divider{display:none}

/* Preferences list: full width (Complianz leaves it narrower than the buttons) */
.is-v3 .cmplz-cookiebanner .cmplz-categories{width:100%;max-width:none;box-sizing:border-box}
.is-v3 .cmplz-cookiebanner .cmplz-categories .cmplz-category{background:transparent;border-radius:0;border-top:1px solid var(--is-border);padding:14px 0;margin:0}
.is-v3 .cmplz-cookiebanner .cmplz-categories .cmplz-category:first-child{border-top:0}
.is-v3 .cmplz-cookiebanner .cmplz-category-title{font-weight:700;color:var(--is-navy)}
.is-v3 .cmplz-cookiebanner .cmplz-always-active{font-size:12px;font-weight:700;padding:5px 10px;border-radius:var(--is-r-pill);background:#EAF7EF}
.is-v3 .cmplz-cookiebanner .cmplz-description{line-height:1.55}

/* Buttons: Refuser | Accepter side by side, "Voir les préférences" as a link underneath */
.is-v3 #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}
.is-v3 #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn{flex:1 1 0;width:auto;min-width:0;height:auto;margin:0;padding:13px 16px;font-weight:700;white-space:nowrap;border-width:1px}
.is-v3 .cmplz-cookiebanner .cmplz-btn.cmplz-deny{order:1}
.is-v3 .cmplz-cookiebanner .cmplz-btn.cmplz-accept{order:2}
.is-v3 #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences{order:3;flex:1 0 100%} /* its own row: the label does not fit a third */
.is-v3 #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences{order:3;flex:1 0 100%;background:transparent;border:0;padding:4px;color:var(--is-blue-ink);font-size:14px}
.is-v3 .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover{background:var(--is-blue-hover);border-color:var(--is-blue-hover)}
.is-v3 .cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover{background:var(--is-tint)}

/* Documents links */
.is-v3 .cmplz-cookiebanner .cmplz-links .cmplz-documents,.is-v3 .cmplz-cookiebanner .cmplz-links.cmplz-documents{justify-content:center;gap:18px}
.is-v3 .cmplz-cookiebanner .cmplz-link{color:var(--is-muted)}
.is-v3 .cmplz-cookiebanner .cmplz-link:hover{text-decoration:underline;text-underline-offset:4px}

@media (max-width:767px){
  .is-v3 .cmplz-cookiebanner.cmplz-bottom-right,.is-v3 .cmplz-cookiebanner.cmplz-bottom-left{right:16px;left:auto;bottom:16px}
  .is-v3 .cmplz-cookiebanner .cmplz-btn{white-space:normal}
  /* Complianz hides the title on phones: without it the header is an icon and a close button */
  .is-v3 .cmplz-cookiebanner .cmplz-title{display:block!important}
  .is-v3 .cmplz-cookiebanner .cmplz-link{white-space:nowrap}
}

/* Politique de cookies: the statement generated by Complianz ([cmplz-document]), in the site typography */
.is-v3 #cmplz-document{max-width:none;font-family:var(--is-font);font-size:16px;line-height:1.75;color:var(--is-text)}
.is-v3 #cmplz-document p,.is-v3 #cmplz-document li,.is-v3 #cmplz-document span{font-size:16px;line-height:1.75;color:var(--is-text)}
.is-v3 #cmplz-document > p:first-child{margin:24px 0 8px;font-size:14px;color:var(--is-muted)}
.is-v3 #cmplz-document h2{margin:40px 0 12px;font-size:26px;font-weight:700;line-height:1.25;color:var(--is-navy)}
.is-v3 #cmplz-document h3{margin:24px 0 8px;font-size:19px;font-weight:700;line-height:1.3;color:var(--is-navy)}
.is-v3 #cmplz-document a{color:var(--is-blue-ink);text-decoration:underline;text-underline-offset:3px}
.is-v3 #cmplz-document ul{padding-left:22px}
.is-v3 #cmplz-document li{margin:6px 0}
/* Services and consent categories: full-width rows like the site's cards */
.is-v3 #cmplz-document details.cmplz-dropdown,.is-v3 #cmplz-document .cmplz-categories details{max-width:none;margin:0 0 10px;border:1px solid var(--is-border);border-radius:14px;background:#FFFFFF;overflow:hidden}
.is-v3 #cmplz-document details summary{margin:0;padding:14px 18px;background:var(--is-bg-light)}
.is-v3 #cmplz-document details summary h3{margin:0;font-size:16px}
.is-v3 #cmplz-document details[open] summary{border-bottom:1px solid var(--is-border)}
.is-v3 #cmplz-document details > div{padding:6px 18px 14px}
.is-v3 #cmplz-document .cmplz-manage-consent-container{max-width:none}
.is-v3 #cmplz-document .cookies-per-purpose{background:var(--is-bg-light);border-color:var(--is-border)}
@media (max-width:760px){
  .is-v3 #cmplz-document h2{font-size:22px;margin-top:32px}
  .is-v3 #cmplz-document p,.is-v3 #cmplz-document li,.is-v3 #cmplz-document span{font-size:15px}
}
/* Its table of contents, built by js/v3.js from the document headings (same look as the legal pages) */
.is-cmplz-toc ul{list-style:none;margin:0;padding:0}
.is-cmplz-toc a{display:block;padding:6px 0;font-size:14px;font-weight:600;line-height:1.45;color:var(--is-navy)}
.is-cmplz-toc a:hover{color:var(--is-blue-ink)}
.is-v3 #cmplz-document > h2,.is-v3 #cmplz-document > h3{scroll-margin-top:calc(120px + var(--wp-admin--admin-bar--height, 0px))}
