@import url("/static/v630.css?v=635");

:root{
  --rf-forest:#103b2b;
  --rf-green:#176044;
  --rf-mint:#dff3e6;
  --rf-lime:#b9ec74;
  --rf-orange:#f0643a;
  --rf-sand:#f6f4ee;
  --rf-ink:#17231d;
}

body{background:var(--rf-sand);color:var(--rf-ink)}
.topline{background:#0b2c20;letter-spacing:.025em}
.site-header{box-shadow:0 1px 0 rgba(20,61,44,.08);backdrop-filter:saturate(150%) blur(10px)}
.site-logo span{letter-spacing:-.04em}
.nav-cta{box-shadow:0 8px 22px rgba(20,61,44,.18)}
.hero{background:linear-gradient(125deg,#0e3527 0%,#176044 58%,#2f7657 100%)}
.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 25%,rgba(185,236,116,.24),transparent 28%),radial-gradient(circle at 8% 92%,rgba(255,255,255,.09),transparent 24%)}
.hero-inner{position:relative;z-index:1}
.hero-proof{position:relative;z-index:1}
.category-tile,.product-card,.filters,.detail-photo,.detail-info,.history-box,.minimalist-panel{box-shadow:0 12px 34px rgba(22,54,40,.055)}
.product-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.product-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(22,54,40,.11);border-color:#bdd1c4}

.merchant-strip{display:flex;align-items:center;gap:7px;min-height:30px;margin:9px 0 3px;overflow:hidden}
.merchant-mini-logo{display:block;width:auto;max-width:74px;height:22px;object-fit:contain;object-position:left center;filter:saturate(.9)}
.merchant-logo-fallback{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid #d6dfd8;border-radius:5px;background:#fff;color:#435048;font-size:9px;font-weight:850;white-space:nowrap}
.minimalist-badge{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:28px;padding:0 9px;border-radius:999px;background:#103b2b;color:#fff;font-size:10px;font-weight:950;letter-spacing:.035em;box-shadow:0 5px 15px rgba(16,59,43,.22)}
.deal-badge+.minimalist-badge{bottom:10px}

.minimalist-panel{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;margin-top:20px;padding:22px 24px;border:1px solid #bcd9c8;border-radius:19px;background:linear-gradient(120deg,#edf8f1,#fff)}
.minimalist-score{display:grid;place-items:center;padding:15px;border-radius:15px;background:var(--rf-forest);color:#fff;text-align:center}
.minimalist-score strong{font-size:42px;line-height:1;letter-spacing:-.06em}
.minimalist-score strong small{font-size:18px}
.minimalist-score span{margin-top:6px;color:#d7eadf;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.minimalist-panel h2{margin:0 0 6px;font-size:21px}
.minimalist-panel p{margin:0 0 8px;color:#4c5d54;font-size:12px;line-height:1.6}
.minimalist-panel>div>small{color:#68776f;font-size:10px}
.minimalist-panel a{display:inline-block;margin-left:6px;color:#176044;font-size:10px;font-weight:850;text-decoration:none}

.offer-row{grid-template-columns:minmax(180px,1fr) auto auto}
.offer-logo-wrap{display:flex;align-items:center;min-height:34px}
.merchant-offer-logo{display:block;width:auto;max-width:150px;height:34px;object-fit:contain;object-position:left center}
.offer-merchant small{max-width:360px}
.offer-row.best:before{content:"Meilleur prix";position:absolute;top:-9px;right:18px;padding:3px 8px;border-radius:999px;background:var(--rf-lime);color:#193528;font-size:8px;font-weight:950;text-transform:uppercase;letter-spacing:.05em}
.offer-row{position:relative}

.history-legend{display:flex;flex-wrap:wrap;gap:8px 16px;min-height:18px;margin:16px 0 3px;color:#4f5e56;font-size:10px;font-weight:750}
.history-legend span{display:inline-flex;align-items:center;gap:6px}
.history-legend i{width:18px;height:4px;border-radius:999px;background:var(--legend)}
.history-chart{padding-top:4px}

.transparency-note{font-size:9px!important;line-height:1.45!important;opacity:.7}
.filter-field select[name="minimalist"]{border-color:#9dbdab;background-color:#f8fcf9}
.catalog-heading .eyebrow,.section-heading .eyebrow{color:#176044}
.results-count strong{font-variant-numeric:tabular-nums}

@media(max-width:800px){
  .merchant-strip{gap:5px;min-height:24px;margin-top:6px}
  .merchant-mini-logo{max-width:53px;height:17px}
  .minimalist-badge{left:7px;bottom:7px;min-width:46px;height:23px;padding:0 6px;font-size:8px}
  .minimalist-panel{grid-template-columns:1fr;gap:12px;padding:15px}
  .minimalist-score{grid-template-columns:auto 1fr;justify-content:start;gap:10px;text-align:left}
  .minimalist-score strong{font-size:34px}
  .minimalist-score span{margin:0;text-align:left}
  .offer-row{grid-template-columns:1fr auto}
  .merchant-offer-logo{max-width:120px;height:29px}
  .history-legend{gap:7px 11px}
}

@media(prefers-reduced-motion:reduce){.product-card{transition:none}.product-card:hover{transform:none}}


/* RF_V642_LAYOUT_FIX */
.product-image{position:relative}
.minimalist-badge{
  position:absolute;left:12px;top:12px;bottom:auto;z-index:3;
  display:inline-flex;align-items:center;justify-content:center;
  min-height:34px;padding:6px 10px;border-radius:999px;
  font-size:.78rem;font-weight:800;line-height:1;white-space:nowrap;
}
.product-bottom{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.product-price{min-width:0}
.product-price strong{display:block;white-space:nowrap}
.structured-description{font-size:1rem;line-height:1.7;color:#59625d}
.structured-description h2,.structured-description h3{color:#17261e;line-height:1.2;margin:1.35em 0 .55em}
.structured-description h2{font-size:1.25rem}.structured-description h3{font-size:1.1rem}
.structured-description p{margin:.7em 0}
.structured-description ul,.structured-description ol{padding-left:1.3rem;margin:.7em 0}
.structured-description li{margin:.35em 0}
@media(max-width:520px){
  .minimalist-badge{left:10px;top:10px;bottom:auto}
  .product-bottom{align-items:flex-end}
  .product-price strong{font-size:1.15rem}
}

/* RF_V643_MINIMALIST_BADGE_FIX
   Le badge est ancré DANS l'image du produit, jamais dans la zone prix. */
.product-image{
  position:relative !important;
  overflow:hidden;
}
.product-image .minimalist-badge{
  position:absolute !important;
  left:10px !important;
  top:10px !important;
  bottom:auto !important;
  right:auto !important;
  z-index:5 !important;
  margin:0 !important;
  transform:none !important;
  min-width:52px;
  height:27px;
  padding:0 9px;
  border-radius:999px;
  background:#103b2b;
  color:#fff;
  font-size:10px;
  font-weight:950;
  line-height:27px;
  white-space:nowrap;
  box-shadow:0 5px 15px rgba(16,59,43,.22);
}
.product-info .minimalist-badge,
.product-bottom .minimalist-badge,
.product-price .minimalist-badge{
  position:static !important;
}
.product-bottom{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:8px !important;
}
.product-price{
  position:relative !important;
  z-index:2 !important;
  min-width:0 !important;
}
.product-price strong{
  position:relative !important;
  z-index:2 !important;
  display:block !important;
  white-space:nowrap !important;
}
.merchant-mini-logo{
  width:auto !important;
  height:24px !important;
  max-width:86px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.merchant-offer-logo{
  width:auto !important;
  height:34px !important;
  max-width:150px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
@media(max-width:800px){
  .product-image .minimalist-badge{
    left:8px !important;
    top:8px !important;
    bottom:auto !important;
    min-width:46px;
    height:24px;
    padding:0 7px;
    font-size:9px;
    line-height:24px;
  }
  .merchant-mini-logo{height:20px !important;max-width:68px !important}
}
