/* FIDYAL — carrousel de publicités. GÉNÉRÉ par site-build/pubs.mjs. */
.pubs-vitrine { padding: 48px 0; }
.fid-pubs { position: relative; max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.fid-pubs-scene { position: relative; }
.fid-pub {
  position: relative; display: block; height: 132px; border-radius: 18px;
  overflow: hidden; text-decoration: none; color: #fff;
  box-shadow: 0 10px 30px rgba(11, 61, 46, .18);
}
.fid-pub-voile { position: absolute; inset: 0; }
.fid-pub-corps {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  justify-content: center; align-items: flex-start; gap: 6px;
  padding: 0 28px; text-align: start;
}
.fid-pub.centre .fid-pub-corps { align-items: center; text-align: center; }
.fid-pub-corps strong {
  font-weight: 800; font-size: 20px; line-height: 1.3;
  text-shadow: 0 1px 5px rgba(0, 0, 0, .45); padding-inline-end: 80px;
}
.fid-pub.centre .fid-pub-corps strong { padding-inline-end: 0; }
.fid-pub-sous {
  font-weight: 600; font-size: 14px; line-height: 1.4; opacity: .93;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4); padding-inline-end: 80px;
}
.fid-pub.centre .fid-pub-sous { padding-inline-end: 0; }
.fid-pub-btn {
  margin-top: 4px; padding: 7px 16px; border-radius: 99px;
  background: rgba(255, 255, 255, .95); color: #0B3D2E;
  font-weight: 800; font-size: 13px;
}
.fid-pub.fonce { color: #0B3D2E; }
.fid-pub.fonce .fid-pub-corps strong,
.fid-pub.fonce .fid-pub-sous { text-shadow: none; }
.fid-pub.fonce .fid-pub-btn { background: rgba(11, 61, 46, .95); color: #fff; }
.fid-pubs-points { display: flex; justify-content: center; gap: 7px; margin-top: 12px; }
.fid-pub-point {
  width: 8px; height: 8px; padding: 0; border: none; border-radius: 99px;
  background: rgba(11, 61, 46, .22); cursor: pointer; transition: all .3s;
}
.fid-pub-point.on { width: 22px; background: #C9A227; }
@media (max-width: 640px) {
  .fid-pub { height: 150px; }
  .fid-pub-corps { padding: 0 20px; }
  .fid-pub-corps strong { font-size: 17px; padding-inline-end: 0; }
  .fid-pub-sous { font-size: 13px; padding-inline-end: 0; }
}
