/* ───────────────────────────────────────────────────────────────────────────
   Dollywood park page, card 766.

   The live park page at /parks/dollywood in the Smokies visual system from
   card 758, at the polish of the section home from card 759. It layers on
   smokies.css and the park board in site.css and adds only what this page
   needs. A hero with Dollywood identity, a today panel that reads as a
   panel, and rides grouped by status so no view of the page is one long
   wall of names. Closed rides are grouped and visually quiet, and the no
   live waits state is a designed panel whose wording follows park status.
   ─────────────────────────────────────────────────────────────────────────── */

.dw-park { padding-top: 0; }

/* ── Today panel under the hero ─────────────────────────────────────────── */
.dw-today-panel {
  border: 1px solid var(--hair);
  border-radius: var(--smokies-radius);
  background:
    radial-gradient(130% 90% at 0% 0%, color-mix(in oklch, var(--smokies-festival) 10%, transparent), transparent 55%),
    var(--paper-2);
  padding: clamp(18px, 2.6vw, 28px);
  margin: calc(clamp(30px, 6vw, 54px) * -1) 0 var(--space-xl);
  position: relative;
  z-index: 2;
  display: grid;
  gap: var(--space-sm);
}
.dw-today-eyebrow { color: var(--smokies-festival-soft); }
.dw-status { font-size: 17px; }
.dw-today { margin-top: var(--space-xs); }
.dw-today .pt-item {
  border-left: 1px solid var(--hair);
  padding-left: var(--space-md);
}
.dw-today .pt-item:first-child { border-left: 0; padding-left: 0; }
@media (max-width: 540px) {
  .dw-today .pt-item { border-left: 0; padding-left: 0; }
}

/* ── Grouped ride board ─────────────────────────────────────────────────── */
.dw-board { display: grid; gap: var(--space-md); margin-bottom: var(--space-xl); }
.dw-group-head {
  font-family: var(--display);
  font-weight: 700;
  font-size: clamp(20px, 2.4vw, 25px);
  line-height: 1.12;
  margin: var(--space-md) 0 0;
}
.dw-group-note { margin: 0; font-size: 15px; line-height: 1.55; color: var(--ink-soft); }
.dw-open-board { margin-bottom: 0; border-radius: var(--smokies-radius); overflow: hidden; }

/* The no posted waits state, designed rather than broken. */
.dw-rest {
  border: 1px solid var(--hair);
  border-radius: var(--smokies-radius);
  background:
    radial-gradient(130% 90% at 0% 0%, color-mix(in oklch, var(--smokies-ridge-1) 12%, transparent), transparent 55%),
    var(--paper-2);
  padding: clamp(18px, 2.6vw, 28px);
  display: grid;
  gap: var(--space-sm);
}
.dw-rest .dw-group-head { margin: 0; }
.dw-rest p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--ink-soft); max-width: var(--smokies-measure); }

/* Down and closed rides, one quiet grid each, never a wall of text. */
.dw-quiet-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
}
.dw-quiet-grid li {
  border: 1px solid var(--hair);
  border-radius: 12px;
  background: var(--paper-2);
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.35;
  color: var(--muted);
}
.dw-closed-grid li { color: var(--muted); }

/* ── Today, when to visit and questions in the section rhythm ──────────── */
.dw-guide { display: grid; gap: var(--space-md); }
.dw-guide .almanac-head,
.dw-guide .plan-faq-head {
  font-family: var(--display);
  font-weight: 750;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin-top: var(--space-lg);
}
.dw-guide .hub-copy,
.dw-guide .plan-faq dd { font-size: 17px; line-height: 1.65; color: var(--ink-soft); max-width: var(--smokies-measure); }
.dw-guide .plan-faq dt { font-weight: 700; color: var(--ink); margin-top: var(--space-md); }
.dw-park .almanac-section { margin-bottom: var(--space-xl); }

@media (max-width: 612px) {
  .dw-quiet-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dw-open-board { grid-template-columns: repeat(2, 1fr); }
}
