/* ── BANDEAU ANNONCE DE PAUSE ── */
.bandeau-pause {
  background-color: var(--brun-3, #7d8c74);
  color: var(--creme, #fff);
  text-align: center;
  padding: 0.75rem 1rem;
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  position: fixed;
  top: 70px;         /* Ajustez cette valeur selon la hauteur exacte de votre barre #nav */
  left: 0;
  width: 100%;
  z-index: 9;        /* Juste un cran en-dessous du z-index de votre #nav */
}
.bandeau-pause a {
  color: var(--creme, #fff);
  text-decoration: underline;
  font-weight: 700;
  margin-left: 0.4rem;
  transition: opacity 0.2s;
}
.bandeau-pause a:hover {
  opacity: 0.85;
}
/* Style des deux panneaux de signalisation */
.icone-attention {
  width: 20px;   /* Largeur du panneau */
  height: 20px;  /* Hauteur du panneau */
  flex-shrink: 0; /* Empêche le panneau de se déformer sur mobile */
}

/* ── BIENFAITS ── */
.bienfaits-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:.9rem;margin-top:1.6rem;
}
.by-card{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(212,170,133,.2);
  border-radius:var(--r-md);padding:1.2rem 1rem;
}
.by-header{
  display:flex;
  align-items:center;
  gap:0.5rem;
  margin-bottom:0.5rem;
}
.by-card h3{color:var(--creme);font-size:.9rem;margin:0}
.by-card p{color:var(--brun-5);font-size:.8rem;margin:0;line-height:1.55}
.by-icon{
  font-size:1.3rem;
  line-height:1;
  display:inline-flex;
  align-items:center;
}
.by-icon svg{
  height:1.3rem;
  width:auto;
  display:block;
}

/* ── RÉSERVATION ── */
.section-reservation {
  /* Intégration de cours_2.jpg avec un voile blanc à 85% pour que le texte sombre reste très lisible */
  background: linear-gradient(rgba(255, 255, 255, 0.00), rgba(255, 255, 255, 0.00)), 
  url('../photos/cours_2.webp');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.resa-bloc{
  background:var(--brun-6);
  border-radius:var(--r-md);
  padding:2rem 1.8rem;
  margin-top:1.6rem;
  text-align:center;
}
.resa-title-wrapper{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0.5rem;
  margin-bottom:.4rem;
}
.resa-bloc h3{font-size:1.15rem;margin:0;color:var(--brun-1)}
.resa-title-icon{
  width:1.25rem;
  height:1.25rem;
  stroke:var(--brun-1);
  fill:none;
  stroke-width:2;
}
.resa-bloc p{font-size:.87rem;color:var(--texte-2);margin-bottom:1.2rem;line-height:1.6}
.resa-notice-anticipation{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  background: rgba(212, 170, 133, 0.15);
  border: 1px dashed var(--brun-5);
  border-radius: var(--r-sm, 6px);
  padding: 0.8rem 1.2rem;
  margin: 1rem auto 1.5rem;
  max-width: 550px;
  color: var(--brun-1);
  font-size: 0.88rem;
  font-weight: 500;
}
.resa-notice-icon{
  width: 20px;
  height: 20px;
  stroke: var(--brun-3);
  fill: none;
  stroke-width: 2;
  flex-shrink: 0;
}

/* ── TARIFS ── */
.tarifs-bloc{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  margin-top:1.8rem;
}
.tc-card{
  background:var(--blanc);
  border:1px solid var(--brun-6);
  border-radius:var(--r-md);
  padding:1.6rem 1.4rem;
  text-align:center;
  transition:all var(--transition);
}
.tc-card:hover{box-shadow:var(--shadow);border-color:var(--brun-5)}
.tc-card.featured{background:var(--brun-1);border-color:var(--brun-1)}
.tc-card.featured h3{color:var(--creme)}
.tc-card.featured p{color:var(--brun-5)}
.tc-price{font-family:'Playfair Display',serif;font-size:2.4rem;font-weight:500;color:var(--brun-2);line-height:1;margin:.6rem 0 .2rem}
.tc-card.featured .tc-price{color:var(--brun-5)}
.tc-unit{font-size:.76rem;color:var(--texte-3)}
.tc-card.featured .tc-unit{color:var(--brun-4)}
.tc-reduit{font-size:.73rem;color:var(--brun-3);margin-top:.45rem;font-style:italic}
.tc-card.featured .tc-reduit{color:var(--brun-5)}
.tc-card p{font-size:.82rem;margin-top:.6rem}
.tarifs-gift-bandeau {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: var(--brun-3);
  border: none;
  color: var(--creme);
  padding: 0.65rem 1.4rem;
  border-radius: var(--r-full);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  margin-top: 0.8rem;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}
.tarifs-gift-bandeau svg {
  width: 18px;
  height: 18px;
  stroke: var(--creme);
  fill: none;
  stroke-width: 2;
}

/* ── CARTE & ACCÈS ── */
.map-bloc {
  margin-top: 1.8rem;
  border-radius: var(--r-md);
  overflow: hidden;
  box-shadow: var(--shadow);
  border: 1px solid var(--brun-6);
  background: var(--blanc);
}
.map-info {
  padding: 1.4rem;
  background: var(--brun-6);
  font-size: 0.85rem;
  color: var(--texte-1);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1.2rem;
}
.map-info-item {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  line-height: 1.5;
}
.map-info-item svg {
  width: 18px;
  height: 18px;
  stroke: var(--brun-1);
  fill: none;
  stroke-width: 2;
  margin-top: 0.1rem;
  flex-shrink: 0;
}
@media(max-width:540px){.tarifs-bloc{grid-template-columns:1fr;gap:.75rem}}
@media(max-width:600px){.resa-bloc{padding:1.4rem 1.2rem}}
