/* PassionCadeau V20.5 — deterministic French flag (no emoji fallback to “FR”). */
.pc-france-flag{
  width:22px!important;
  height:15px!important;
  min-width:22px!important;
  min-height:15px!important;
  flex:0 0 22px!important;
  display:inline-block!important;
  padding:0!important;
  margin:0!important;
  border-radius:3px!important;
  background:linear-gradient(90deg,#0055A4 0 33.333%,#fff 33.333% 66.666%,#EF4135 66.666% 100%)!important;
  border:1px solid rgba(13,27,42,.10)!important;
  box-shadow:none!important;
  font-size:0!important;
  line-height:0!important;
  vertical-align:middle!important;
  overflow:hidden!important;
}
.pc-france-flag::before,.pc-france-flag::after{content:none!important}

/* Home proof blocks: don't let historical emoji sizing stretch the flag. */
.pc7-home .pc7-hero-proof>span>i.pc-proof-emoji.pc-france-flag,
.pc7-proof__emoji.pc-france-flag,
.pc-footer-v10-badges .pc-footer-emoji.pc-france-flag{
  width:22px!important;height:15px!important;min-width:22px!important;min-height:15px!important;
  display:inline-block!important;place-items:unset!important;
}

/* Cart keeps its white icon tile, with the real tricolour centered inside. */
.pc19-cart-hero__trust .pc19-france-emoji-badge{
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
}
.pc19-cart-hero__trust .pc19-france-emoji-badge .pc-france-flag{display:block!important}


/* V20.5 — global France renderer. pc_icon('france') and pc6_utility_icon('france')
   now output this element instead of SVG, including mini-cart/reassurance rows. */
.pc-france-flag{
  box-sizing:border-box!important;
  transform:none!important;
  text-indent:-9999px!important;
}
.pc11-mini-cart .pc-france-flag,
.pc11-mini-cart__body .pc-france-flag,
.pc6-promises .pc-france-flag,
.pc-service-icon .pc-france-flag,
.pc11-account-hero .pc-france-flag{
  width:22px!important;
  height:15px!important;
  min-width:22px!important;
  min-height:15px!important;
  flex:0 0 22px!important;
  display:inline-block!important;
  background:linear-gradient(90deg,#0055A4 0 33.333%,#fff 33.333% 66.666%,#EF4135 66.666% 100%)!important;
}


/* V20.6 — header trustbar uses the same real French flag as every other block. */
.pc-trustbar__inner .pc-trustbar-france::before{
  content:none!important;
  display:none!important;
}
.pc-trustbar__inner .pc-trustbar-france .pc-france-flag{
  display:inline-block!important;
  width:22px!important;
  height:15px!important;
  min-width:22px!important;
  min-height:15px!important;
  flex:0 0 22px!important;
}


/* V20.7 — robust French flag rendering with embedded SVG, avoiding any red bleed. */
.pc-france-flag{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='30' viewBox='0 0 44 30'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Crect width='44' height='30' rx='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)'%3E%3Crect width='14.67' height='30' fill='%230055A4'/%3E%3Crect x='14.67' width='14.66' height='30' fill='%23FFFFFF'/%3E%3Crect x='29.33' width='14.67' height='30' fill='%23EF4135'/%3E%3C/g%3E%3Crect x='.5' y='.5' width='43' height='29' rx='4' fill='none' stroke='%23D5DEE8'/%3E%3C/svg%3E")!important;
  background-size:100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:transparent!important;
  border:none!important;
  border-radius:3px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

/* V20.8 — FINAL home/logo/trust-icon hardening. */
/* The homepage flag previously inherited a more-specific `background:transparent!important`
   from the old emoji class. The flag no longer uses that class, and this selector wins even
   if a cached bundle is still present. */
.pc7-home .pc7-hero-proof>span>.pc-home-france-flag.pc-france-flag,
.pc7-home .pc7-proof__mark .pc-france-flag,
.pc-footer-v10-badges .pc-france-flag,
.pc-trustbar__inner .pc-france-flag,
.pc6-promises .pc-france-flag,
.pc19-cart-hero__trust .pc-france-flag{
  width:22px!important;height:15px!important;min-width:22px!important;min-height:15px!important;
  display:inline-block!important;flex:0 0 22px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='30' viewBox='0 0 44 30'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Crect width='44' height='30' rx='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)'%3E%3Crect width='14.67' height='30' fill='%230055A4'/%3E%3Crect x='14.67' width='14.66' height='30' fill='%23FFFFFF'/%3E%3Crect x='29.33' width='14.67' height='30' fill='%23EF4135'/%3E%3C/g%3E%3Crect x='.5' y='.5' width='43' height='29' rx='4' fill='none' stroke='%23D5DEE8'/%3E%3C/svg%3E")!important;
  background-color:transparent!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:center!important;
  border:0!important;border-radius:3px!important;box-shadow:none!important;overflow:hidden!important;
}

/* No red “accent” marks in utility/reassurance icons: these were being read as bleed. */
.pc-trust-clean-svg .pc-icon-accent,
.pc-trust-clean-svg .pc-icon-accent-fill,
.pc-site-header .pc-header-action .pc-icon-accent,
.pc-site-header .pc-header-action .pc-icon-accent-fill,
.pc19-cart-hero__trust .pc-icon-accent,
.pc19-cart-hero__trust .pc-icon-accent-fill,
.pc197-checkout-hero__notes .pc-icon-accent,
.pc197-checkout-hero__notes .pc-icon-accent-fill{
  display:none!important;
}
.pc-trust-clean-svg{color:#123a5e!important;--pc-icon-accent:currentColor!important}

/* Homepage top reassurance row: clean, centred marks, no emoji rendering. */
.pc7-home .pc7-hero-proof>span>.pc-home-trust-icon{
  width:30px!important;height:30px!important;display:grid!important;place-items:center!important;
  background:transparent!important;border:0!important;box-shadow:none!important;font-style:normal!important;
}
.pc7-home .pc7-hero-proof .pc-home-trust-icon .pc-icon-svg{
  width:20px!important;height:20px!important;display:block!important;stroke-width:2.2!important;
}
.pc7-home .pc7-hero-proof>span>.pc-home-france-flag{
  justify-self:center!important;align-self:center!important;margin-inline:4px!important;
}

/* Lower homepage proof grid uses the same visual language. */
.pc7-proof__mark{display:grid!important;place-items:center!important;width:34px!important;height:34px!important}
.pc7-proof__mark .pc-icon-svg{width:25px!important;height:25px!important;display:block!important}
.pc7-proof__mark .pc-france-flag{width:24px!important;height:16px!important;min-width:24px!important;min-height:16px!important;flex-basis:24px!important}

/* Footer trust marks: vector icons, no color-emoji artefacts. */
.pc-footer-v10-badges .pc-icon-svg{width:16px!important;height:16px!important;display:inline-block!important;vertical-align:middle!important}

/* Force the current brand asset visible in every header context, including the homepage. */
.pc-site-header .pc-brand,.home .pc-site-header .pc-brand,.front-page .pc-site-header .pc-brand{display:inline-flex!important;visibility:visible!important;opacity:1!important}
.pc-site-header .pc-brand-mark,.home .pc-site-header .pc-brand-mark,.front-page .pc-site-header .pc-brand-mark{display:inline-grid!important;visibility:visible!important;opacity:1!important;overflow:hidden!important}
.pc-site-header .pc-brand-mark img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;visibility:visible!important;opacity:1!important}
