/* =============================================================
   Instants d'une vie — Supplément CSS pour Tailwind CSS CDN
   ============================================================= */

/* ── Police personnalisée ── */
@font-face {
  font-family: 'ScriptMT';
  src: url('fonts/scriptbl.eot'),
       url('fonts/scriptbl.eot?#iefix') format('embedded-opentype'),
       url('fonts/scriptbl.woff') format('woff'),
       url('fonts/scriptbl.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* ── Navigation : liens bureau ── */
.idv-nav-link {
  display: block;
  padding: 0 12px;
  height: 56px;
  line-height: 56px;
  color: #737373;
  font-size: 0.875rem;
  text-decoration: none;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
  transition: color 0.2s ease, border-color 0.2s ease;
}
.idv-nav-link:hover,
.idv-nav-link.active {
  color: #b7a187;
  border-bottom-color: #b7a187;
}

/* ── Navigation : liens mobile ── */
.idv-mob-link {
  display: block;
  padding: 11px 20px;
  color: #525252;
  font-size: 0.9rem;
  text-decoration: none;
  border-left: 3px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.idv-mob-link:hover,
.idv-mob-link.active {
  color: #b7a187;
  border-left-color: #b7a187;
  background-color: #fdf9f5;
}

/* ── Icônes sprite ── */
.sprite {
  display: inline-block;
  background-image: url('../images/sprite.png');
  background-repeat: no-repeat;
  vertical-align: middle;
  flex-shrink: 0;
}
.sprite-5d      { background-position: 0     4px; width: 30px; height: 28px; }
.sprite-contact { background-position: 0   -73px; width: 32px; height: 32px; }
.sprite-facebook{ background-position: 0  -155px; width: 23px; height: 23px; }
.sprite-links   { background-position: 0  -230px; width: 32px; height: 32px; }
.sprite-mail    { background-position: 0  -313px; width: 23px; height: 23px; }
.sprite-twitter { background-position: 0  -716px; width: 23px; height: 23px; }
.sprite-gplus   { background-position: 0  -796px; width: 23px; height: 23px; }

/* ── Overlay miniature accueil ── */
.mini-overlay {
  position: absolute;
  inset: 0;
  background: rgba(183, 161, 135, 0.88);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'ScriptMT', Georgia, serif;
  font-size: 1.6rem;
  opacity: 0;
  transition: opacity 0.3s ease;
  border-radius: inherit;
}
.mini-card:hover .mini-overlay {
  opacity: 1;
}

/* ── Galerie : visionneuse lightbox ── */
#fd_noir {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.93);
  z-index: 200;
  display: none;
  padding-top: 48px;
  text-align: center;
  overflow-y: auto;
}
#div_img_noir {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  padding: 0 16px;
}
#img_fd_noir {
  border: 4px solid white;
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.8);
}
#liens_haut {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 14px;
}
#lnk_img_noir_prev,
#lnk_img_noir_close,
#lnk_img_noir_next {
  color: white;
  text-decoration: none;
  font-size: 0.8rem;
  padding: 6px 16px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 6px;
  transition: background-color 0.2s;
  display: inline-block;
  height: auto;
  line-height: 1.5;
  position: static;
  width: auto;
}
#lnk_img_noir_prev:hover,
#lnk_img_noir_close:hover,
#lnk_img_noir_next:hover {
  background-color: rgba(255, 255, 255, 0.15);
}

/* ── Galerie : grille de miniatures ── */
#photos {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 12px 0;
}
a.a_img {
  outline: none;
  position: relative;
  display: inline-block;
  width: 174px;
  height: 119px;
  background: white url('../images/sablier.png') center center no-repeat;
  border: 1px solid #ddd0c0;
  text-align: center;
  text-decoration: none;
  border-radius: 6px;
  overflow: hidden;
  transition: box-shadow 0.2s, border-color 0.2s;
  border-bottom-color: #aaa;
}
a.a_img:hover {
  border-color: #b7a187;
  box-shadow: 0 4px 14px rgba(183, 161, 135, 0.4);
}
a.a_img span {
  display: block;
  width: 164px;
  height: 109px;
  overflow: hidden;
  margin: 5px;
}
a.a_img img.photos {
  width: 164px;
  border: 0;
  transition: opacity 0.25s;
}
a.a_img:hover img.photos {
  opacity: 0.3;
}

/* ── Ajustement négatifs photos décalées (galerie) ── */
#IDV_4885{margin-top:-80px}
#_MG_0365,#_MG_0394,#_MG_1414-2,#_MG_3773,#_MG_4302,#_MG_4396,#_MG_4463,#_MG_4575,#_MG_4735,#_MG_9208,
#gal_08,#gal_10,#_MG_0609,#_MG_7652,#_MG_1338,#_MG_1418,#_MG_2975,#_MG_6488,#_MG_7996,#_MG_8129,
#_MG_8940,#_MG_9907,#_MG_0200,#_MG_0268,#_MG_0301,#_MG_4004,#_MG_4035,#_MG_9416,#_MG_9718,
#_MG_1069,#gal_13,#gal_09,#gal_04,#IDV_0168,#IDV_0187,#IDV_7746,#IDV_5490,#IDV_9930,#IDV_5452{margin-top:-50px}
#_MG_2943,#_MG_5801,#_MG_8785,#gal_12,#gal_15,#gal_01,#gal_02,#IDV_5411{margin-top:-30px}
#_MG_1272,#_MG_4442,#_MG_0180,#gal_03,#gal_14,#IDV_0160,#IDV_0201{margin-top:-20px}

/* ── Impression ── */
@media print {
  nav, #minis, footer, #foursteps { display: none; }
  body, #bigConteneur, #conteneur, header { background-color: #fff; }
  #conteneur { border: 0; }
  header { height: 100px; position: static; }
  header img#titre { position: static; top: 0; }
  @page { size: portrait; }
}
