
/* Pages fiches produits DisFly */
.product-page { padding: 48px 0 88px; }
.breadcrumbs { font-size:.9rem; color:var(--text-light); margin: 4px 0 28px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.breadcrumbs a:hover { color:var(--accent); }
.product-hero-card { display:grid; grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr); gap:52px; background:var(--white); border:1px solid var(--light); border-radius:24px; padding:40px; box-shadow:var(--shadow-sm); align-items:center; }
.product-visual { min-height:420px; border-radius:20px; background:linear-gradient(145deg,#f8fafc,#eef6fb); display:flex; align-items:center; justify-content:center; padding:36px; }
.product-visual img { max-height:380px; max-width:100%; object-fit:contain; filter:drop-shadow(0 18px 22px rgba(15,23,42,.16)); }
.product-kicker { color:var(--accent-dark); font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; font-weight:800; margin-bottom:8px; }
.product-title { font-family:'Barlow Condensed',sans-serif; font-size:clamp(2.4rem,5vw,4rem); line-height:.98; color:var(--navy); text-transform:uppercase; margin-bottom:14px; }
.product-lead { color:var(--text-light); font-size:1.05rem; margin-bottom:24px; max-width:680px; }
.product-badges { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 26px; }
.product-badge { display:inline-flex; align-items:center; gap:7px; background:#eef8fd; color:var(--navy); border:1px solid #d5edf8; border-radius:999px; padding:8px 13px; font-weight:700; font-size:.86rem; }
.product-actions { display:flex; flex-wrap:wrap; gap:12px; }
.product-actions .btn-secondary { background:var(--navy); color:#fff; }
.product-actions .btn-secondary:hover { background:var(--navy-2); transform:translateY(-2px); }
.product-content-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:28px; margin-top:28px; }
.product-panel { background:var(--white); border:1px solid var(--light); border-radius:20px; padding:30px; box-shadow:var(--shadow-sm); }
.product-panel h2 { font-family:'Barlow Condensed',sans-serif; font-size:1.8rem; text-transform:uppercase; color:var(--navy); margin-bottom:14px; }
.product-panel p { color:var(--text-light); }
.spec-list { display:grid; gap:0; margin-top:6px; }
.spec-row { display:grid; grid-template-columns:170px 1fr; gap:16px; padding:13px 0; border-bottom:1px solid var(--light); }
.spec-row:last-child { border-bottom:0; }
.spec-row dt { color:var(--text-light); font-size:.88rem; font-weight:700; }
.spec-row dd { color:var(--navy); font-weight:700; margin:0; }
.pro-info { margin-top:28px; background:var(--navy); color:#fff; border-radius:20px; padding:28px; }
.pro-info h2 { font-family:'Barlow Condensed',sans-serif; font-size:1.8rem; text-transform:uppercase; margin-bottom:10px; }
.pro-info p { color:rgba(255,255,255,.78); }
.related-section { margin-top:52px; }
.related-section h2 { font-family:'Barlow Condensed',sans-serif; font-size:2rem; color:var(--navy); text-transform:uppercase; margin-bottom:22px; }
.related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.related-card { background:#fff; border:1px solid var(--light); border-radius:16px; overflow:hidden; transition:.25s ease; }
.related-card:hover { transform:translateY(-4px); border-color:var(--accent); box-shadow:var(--shadow); }
.related-img { height:170px; display:flex; align-items:center; justify-content:center; background:var(--off-white); padding:18px; }
.related-img img { max-height:135px; object-fit:contain; }
.related-copy { padding:15px; }
.related-copy strong { display:block; color:var(--navy); margin-bottom:3px; }
.related-copy span { color:var(--text-light); font-size:.85rem; }
.alcohol-note { margin-top:18px; border-left:4px solid var(--accent); background:#f5fbfe; padding:14px 16px; border-radius:10px; color:var(--text-light); font-size:.9rem; }
@media (max-width:900px){ .product-hero-card,.product-content-grid{grid-template-columns:1fr;} .related-grid{grid-template-columns:repeat(2,1fr);} .product-visual{min-height:320px;} }
@media (max-width:560px){ .product-page{padding-top:28px;} .product-hero-card{padding:22px; gap:28px;} .product-visual{min-height:260px; padding:24px;} .product-visual img{max-height:250px;} .product-panel{padding:22px;} .spec-row{grid-template-columns:1fr; gap:4px;} .related-grid{grid-template-columns:1fr 1fr;} .related-img{height:140px;} }


/* ===== PRODUCT PAGE FOOTER VISIBILITY FIX ===== */
.product-page + footer { display:block; visibility:visible; opacity:1; }
.product-page + footer .footer-grid { position:relative; z-index:1; }
.product-page + footer .footer-contact,
.product-page + footer .footer-social { display:block; visibility:visible; opacity:1; }
.product-page + footer .footer-contact p { color:rgba(255,255,255,.75); }
.product-page + footer .footer-contact a { color:inherit; }
.product-page + footer .social-links { display:flex; gap:8px; flex-wrap:nowrap; align-items:center; }
.product-page + footer .social-links p { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin:0; }
.product-page + footer .social-links a { display:flex; align-items:center; justify-content:center; width:34px; height:34px; color:#ccc !important; }
.product-page + footer .social-links i { display:inline-block; visibility:visible; opacity:1; min-width:1em; text-align:center; }

@media (max-width:560px){
  .product-page + footer .social-links a{width:40px;height:40px;}
}


/* ===== FOOTER ICONS V4: exact Font Awesome icons from the original site, served locally ===== */
.product-page + footer .footer-contact p {
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.product-page + footer .footer-contact .contact-fa-icon {
  width:14px;
  height:16px;
  flex:0 0 16px;
  margin-top:3px;
  object-fit:contain;
  /* Same accent appearance as the original Font Awesome <i> icons. */
  filter: invert(60%) sepia(84%) saturate(1355%) hue-rotate(156deg) brightness(94%) contrast(92%);
}
.product-page + footer .social-links {
  display:flex;
  gap:8px;
  flex-wrap:nowrap;
  align-items:center;
}
.product-page + footer .social-links p {
  display:flex;
  gap:8px;
  flex-wrap:nowrap;
  align-items:center;
  margin:0;
}
.product-page + footer .social-links a {
  width:34px;
  height:34px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.7) !important;
  transition:all var(--trans, .2s ease);
}
.product-page + footer .social-links a:hover {
  background:var(--accent);
  border-color:var(--accent);
  transform:translateY(-2px);
}
.product-page + footer .social-fa-icon {
  width:15px;
  height:15px;
  display:block;
  object-fit:contain;
  /* Font Awesome SVG files are black by default; this matches the base footer #ccc. */
  filter: invert(85%) sepia(0%) saturate(0%) hue-rotate(180deg) brightness(95%) contrast(91%);
}
.product-page + footer .social-links a:hover .social-fa-icon {
  filter: brightness(0) invert(1);
}
@media (max-width:560px){
  .product-page + footer .social-links a { width:34px; height:34px; }
  .product-page + footer .social-links p { gap:8px; }
}

/* ===== SEO HUBS & INTERNAL LINKS ===== */
.seo-inline-links{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.seo-inline-links a{color:#fff;text-decoration:underline;text-underline-offset:3px}.seo-inline-links span{opacity:.45}.hub-page{padding:48px 0 88px}.hub-hero{background:var(--white);border:1px solid var(--light);border-radius:24px;padding:42px;box-shadow:var(--shadow-sm);margin-bottom:28px}.hub-hero h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1;text-transform:uppercase;color:var(--navy);margin:6px 0 16px}.hub-hero>p:not(.product-kicker){max-width:920px;color:var(--text-light);font-size:1.05rem}.hub-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:28px 0}.hub-copy-card{background:#fff;border:1px solid var(--light);border-radius:20px;padding:28px;box-shadow:var(--shadow-sm)}.hub-copy-card h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;color:var(--navy);font-size:1.7rem;margin-bottom:10px}.hub-copy-card p{color:var(--text-light)}.hub-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hub-chip{display:inline-flex;align-items:center;padding:9px 14px;border:1px solid #d5edf8;background:#eef8fd;border-radius:999px;color:var(--navy);font-weight:700;font-size:.9rem;transition:.2s}.hub-chip:hover{border-color:var(--accent);transform:translateY(-2px)}.hub-brand-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}.hub-brand-card{background:#fff;border:1px solid var(--light);border-radius:14px;padding:18px;font-weight:800;color:var(--navy);transition:.2s}.hub-brand-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.hub-brand-card small{display:block;color:var(--text-light);font-weight:500;margin-top:3px}.hub-alcohol{margin:20px 0 0}.hub-section-title{font-family:'Barlow Condensed',sans-serif;font-size:2rem;color:var(--navy);text-transform:uppercase;margin:44px 0 20px}@media(max-width:900px){.hub-info-grid{grid-template-columns:1fr}.hub-brand-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hub-page{padding-top:28px}.hub-hero{padding:24px}.hub-brand-list{grid-template-columns:1fr 1fr}}
