/* Fixes for the 20 attraction pages (8 Nov 2026 QA), printed after every other stylesheet (attractions/engine.php).
   Scoped to the attractions' body class, so Jardin Majorelle's own pages are unchanged. Colours come from each
   attraction's theme (--cobalt is its accent). */

/* ---------- information pages: a way back to the attraction (plan your visit, journal, FAQ) ---------- */
/* The same look as the brand pages' breadcrumb ("Bahia Palace / Timeline"), with the attraction's tickets at the end. */
body[class*="apocv-place-"] #main .apocv-crumbs { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0 16px; margin: 0; padding: 8px 20px 0; font-size: 13px; line-height: 1.45; color: var(--muted, #58606b); }
body[class*="apocv-place-"] #main .apocv-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 0 8px; margin: 0; padding: 0; list-style: none; }
body[class*="apocv-place-"] #main .apocv-crumbs li { margin: 0; padding: 0; }
body[class*="apocv-place-"] #main .apocv-crumbs li + li::before { content: "/"; margin-right: 8px; }
body[class*="apocv-place-"] #main .apocv-crumbs a { display: inline-flex; align-items: center; min-height: 36px; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
body[class*="apocv-place-"] #main .apocv-crumbs a.apocv-crumbs-tickets { gap: 6px; color: var(--cobalt, #0b3bd1); font-weight: 600; text-decoration: none; }
body[class*="apocv-place-"] #main .apocv-crumbs a.apocv-crumbs-tickets:hover { text-decoration: underline; }
@media (min-width: 901px) { body[class*="apocv-place-"] #main .apocv-crumbs { padding: 10px 48px 0; } }

/* ---------- FAQ page ---------- */
@media (max-width: 650px) {
  /* The heading lines up with the search, filters and questions (it was 34 px in, they are 17–20 px). */
  body[class*="apocv-place-"] .support-faq .faq-heading > div { padding-left: 20px; padding-right: 20px; }
  body[class*="apocv-place-"] .support-faq .faq-heading .faq-search { box-sizing: border-box; width: 100%; max-width: none; margin-left: 0; margin-right: 0; }
  /* "Still have a question?": one column, so the text has the card's full width. */
  body[class*="apocv-place-"] .support-faq .faq-help { grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 20px 17px 16px; padding: 18px 18px 14px; text-align: left; }
  body[class*="apocv-place-"] .support-faq .faq-help > .support-icon { display: none; }
  body[class*="apocv-place-"] .support-faq .faq-help > div { border-left: 0; padding-left: 0; }
  body[class*="apocv-place-"] .support-faq .faq-help > .button { grid-column: auto; justify-self: start; width: auto; margin-top: 2px; }
  body[class*="apocv-place-"] .support-faq .faq-help > .support-text-link { grid-column: auto; justify-self: start; }
}

/* ---------- Plan your visit: section tabs ---------- */
/* The selected tab takes the attraction's accent (it was Majorelle blue). */
body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs a.is-current { color: var(--cobalt, #0b3bd1); border-bottom-color: var(--cobalt, #0b3bd1); }
@media (max-width: 650px) {
  /* One row that scrolls sideways, as the main page's section tabs do, instead of an uneven 2 × 2 grid. */
  body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs { display: flex; justify-content: flex-start; gap: 0 20px; padding: 0 20px; overflow-x: auto; scrollbar-width: none; white-space: nowrap; font-size: 13px; text-align: left; }
  body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs::-webkit-scrollbar { display: none; }
  body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs a,
  body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs a.is-current { flex: none; display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 0 2px; border-bottom: 2px solid transparent; }
  body[class*="apocv-place-"] .editorial-plan .ep-plan-tabs a.is-current { border-bottom-color: var(--cobalt, #0b3bd1); }
}

/* ---------- tap sizes (at least 32 px high, 44 px wide for the section tabs) ---------- */
body[class*="apocv-place-"] #main :is(.ep-text-link, .support-text-link) { min-height: 32px; }
body[class*="apocv-place-"] #main.ac-mj :is(.faq-head a.link, .stories a.link) { display: inline-flex; align-items: center; min-height: 32px; }
body[class*="apocv-place-"] #main.ac-mj .ac-lt-tabs a { min-width: 44px; justify-content: center; }
body[class*="apocv-place-"] :is(#main.ac-mj details.credits, #vm-core-photo-credits details) > summary { padding-block: 10px; cursor: pointer; }

/* ---------- main page ticket box: Today / Tomorrow without entry times ---------- */
body[class*="apocv-place-"] :is(#main.ac-mj .dates, #mobile-menu .d-dates) button[aria-disabled="true"] { opacity: .45; text-decoration: line-through; cursor: not-allowed; }
body[class*="apocv-place-"] .ac-days-note { margin: -4px 0 12px; font-size: 13px; line-height: 1.45; color: var(--muted, #58606b); }
body[class*="apocv-place-"] #mobile-menu .ac-days-note { margin: 6px 0 10px; color: var(--mmuted, #c9c0b4); }
body[class*="apocv-place-"] .ac-days-note[hidden] { display: none; }
