/* Targeted September 2026 additions. The existing design system stays in place. */
.brand--ada-reprise {
  flex: 0 1 auto;
  min-width: 0;
  max-width: clamp(15rem, calc(37.5vw - 13.5rem), 18rem);
  padding: .18rem .35rem;
  background: #f8f7f3;
  border: 1px solid rgba(200, 169, 118, .45);
}
.brand--ada-reprise picture,
.brand--ada-reprise img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2048 / 487;
}
.brand--ada-reprise img {
  max-width: none;
  border-radius: 0;
  object-fit: contain;
  box-shadow: none;
}
.footer-brand__mark,
.production-mark,
.pathway-entry__mark { display: block; width: min(100%, 20rem); padding: .55rem; background: #f8f7f3; }
.footer-brand__mark img,
.production-mark img,
.pathway-entry__mark img { display: block; width: 100%; height: auto; aspect-ratio: 2048 / 487; object-fit: contain; }
.footer-brand__mark { margin: 0 0 1.1rem; }
.production-mark { margin: 0 0 1.4rem; }
.pathway-entry__mark { width: clamp(10rem, 21vw, 17rem); margin: .75rem 0 1rem; }
.calendly-note { max-width: 55ch; margin: .7rem 0 0; font-size: .875rem; line-height: 1.6; opacity: .85; }
.calendly-after-planning { padding-block: 1.5rem 4rem; }
.calendly-after-planning p { max-width: 55ch; margin: 0 0 1rem; line-height: 1.6; }
.availability-board .availability-legend__title { flex-basis: 100%; font-size: .9rem; line-height: 1.5; color: #10212d; }

/* The numeric fill reflects the API percentage. The track has quarter marks. */
.availability-board .availability-week header > p {
  display: block;
  margin: 0 0 .25rem;
  font-size: .72rem;
  line-height: 1.4;
  color: #506575;
}
.availability-board .availability-meter { display: block; width: min(100%, 12rem); margin-top: .55rem; }
.availability-board .availability-meter__track {
  position: relative;
  display: block;
  width: 100%;
  height: .32rem;
  overflow: hidden;
  border-radius: .2rem;
  background: #dce2e3;
}
.availability-board .availability-meter__fill {
  display: block;
  height: 100%;
  background: #8c7048;
}
.availability-board .availability-meter__track::after {
  position: absolute;
  inset: 0;
  content: '';
  background: linear-gradient(90deg, transparent calc(25% - 1px), #f8f7f3 calc(25% - 1px), #f8f7f3 25%,
    transparent 25%, transparent calc(50% - 1px), #f8f7f3 calc(50% - 1px), #f8f7f3 50%,
    transparent 50%, transparent calc(75% - 1px), #f8f7f3 calc(75% - 1px), #f8f7f3 75%, transparent 75%);
  pointer-events: none;
}
.availability-board .availability-week--closed,
.availability-board .availability-week--unknown { color: #65727b; }
.availability-board .availability-status--available { color: #345d56 !important; }
.availability-board .availability-status--booked { color: #6d5733 !important; }
.availability-board .availability-status--complete,
.availability-board .availability-status--closed,
.availability-board .availability-status--unknown { color: #65727b !important; }
.availability-board .availability-week--closed .availability-week__dates,
.availability-board .availability-week--unknown .availability-week__dates { font-weight: 400; }
.availability-board .availability-week--closed h3,
.availability-board .availability-week--unknown h3 { color: #7c878d !important; }

@media (max-width: 60rem) {
  .brand--ada-reprise { max-width: min(12rem, 31vw); }
}
@media (max-width: 40rem) {
  .brand--ada-reprise { width: clamp(7.8rem, 34vw, 11rem); max-width: none; padding: .12rem .2rem; }
  .pathway-entry__mark { width: min(12rem, 55vw); }
  .availability-board .availability-meter { width: min(100%, 15rem); }
}
@media (max-width: 24rem) {
  .brand--ada-reprise { width: clamp(7.2rem, 36vw, 9rem); }
  .availability-board .availability-week header > p { margin-top: .2rem; }
}
@media print { .pathway-entry__mark { display: none; } }
