.week-events{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:35px 0 55px}.week-card{background:#f8ecd4;border:1px solid #bd9a5a;border-radius:14px;overflow:hidden;color:#123b2c;box-shadow:0 15px 35px #08261b24;display:flex;flex-direction:column}
.week-poster{
  display:block;
  flex:none;
  width:100%;
  overflow:hidden;
}
.week-poster img{
  display:block;
  width:100%;
  height:auto;
}
.week-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}.week-card-copy small{font-size:12px;letter-spacing:.08em;color:#6b461c}.week-card-copy small strong{font-weight:800}.week-card-copy h3{font:400 clamp(25px,2.3vw,34px)/1.08 Georgia,serif;margin:14px 0}.week-card-copy h3 em{color:#0c6546}.week-card-copy p{font-size:13px;line-height:1.65;color:#455c4b;flex:1}.week-card-copy a{display:block;background:#0a4933;color:#f7e4ba;padding:13px 15px;border-radius:5px;font-weight:700;font-size:12px;text-align:center}.week-card-copy a:hover{background:#096747}.week-home-link{display:flex;gap:24px;align-items:center;justify-content:center;flex-wrap:wrap;background:#e8c87e;color:#0a3a29;padding:18px 7%;font-size:13px}.week-home-link span{font-size:10px;letter-spacing:.2em;font-weight:800}.week-home-link strong{font:22px Georgia,serif}.week-home-link a{font-weight:800;text-decoration:underline;text-underline-offset:5px}@media(max-width:1100px){.week-events{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.week-events{grid-template-columns:1fr}.week-home-link{text-align:center;gap:10px}}

.week-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.week-card-actions a{flex:1 1 120px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px}
.week-card-actions .week-booking{background:#e8c87e;color:#123b2c}
.week-card-actions .week-booking:hover{background:#f0d798}
.week-booking span{display:block;margin-top:3px;font-size:11px;font-weight:600}

.marche-noel-card{grid-column:span 2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}

.exposants-card .week-booking{background:#e8c87e;color:#123b2c}
.exposants-card .week-booking:hover{background:#f0d798}
@media(max-width:620px){.marche-noel-card{grid-column:span 1;grid-template-columns:minmax(0,1fr)}}

.week-card-heading {
  padding: 18px 18px 14px;
}
.week-card-heading small {
  display: block;
  color: #6b461c;
  font-size: .73rem;
  letter-spacing: .055em;
}
.week-card-heading h3 {
  margin: 6px 0 0;
  font: 600 clamp(22px, 2.2vw, 31px)/1.08 Georgia, serif;
}
.week-card-heading h3 em { color: #0c6546; }
.week-card-price {
  margin: 7px 0 0;
  color: #12513a;
  font-size: .88rem;
  font-weight: 800;
}
.week-card > .week-card-actions {
  margin: 0;
  padding: 10px 18px 0;
}
.week-card > .week-card-actions a {
  display: flex;
  min-height: 44px;
  padding: 8px 10px;
  border-radius: 6px;
  font-size: .79rem;
  font-weight: 750;
  text-align: center;
}
.week-card > .week-card-actions .week-discover {
  color: #315443;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.week-card > .week-card-copy { padding: 10px 18px 18px; }
.week-card > .week-card-copy > p { margin: 4px 0 10px; }
@media (max-width: 760px) {
  .week-card > .week-card-actions a { flex-basis: 100%; }
}

/* Keep the poster at the top of desktop cards, with details first on phones. */
@media (min-width: 761px) {
  .soirees-page .week-card > .week-poster { order: -1; }
}

.week-events[hidden],
.week-home-link[hidden],
.agenda-archive-link[hidden],
.agenda-archive[hidden],
.agenda-empty[hidden] { display: none; }

.agenda-archive-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: #efd298;
  text-decoration: underline;
  text-underline-offset: .25em;
}
.agenda-empty {
  margin: 18px 0 32px;
  padding: 14px 18px;
  border-left: 2px solid #c9a565;
  background: #152a20;
  color: #f3ebd7;
}
.agenda-archive {
  margin: 36px 0 50px;
  padding-top: 28px;
  border-top: 1px solid #d2b47144;
}
.agenda-archive h2 { margin-block: 10px; }
.agenda-archive > p:not(.eyebrow) { color: #c3cbbd; }
.agenda-archive .week-events { margin-bottom: 0; }
@media (max-width: 760px) {
  .agenda-archive { margin: 28px 0 36px; }
  .agenda-archive h2 { font-size: clamp(28px, 7vw, 42px); }
}




.agenda-loading,.agenda-empty,.agenda-error{grid-column:1/-1;padding:26px;border-radius:12px;background:#f8ecd4;color:#123b2c;text-align:center}.agenda-error{background:#fbe7e2;color:#6d2017}.agenda-empty[hidden],.agenda-error[hidden],.agenda-loading[hidden]{display:none}.week-card-copy>p{white-space:pre-line}

.agenda-fallback-note{grid-column:1/-1;margin:0;padding:12px 16px;border-left:3px solid #c9a565;background:#123b2c;color:#f3ebd7;font-size:.9rem;line-height:1.5}
