/* whizzy.co.nz-only styles. Everything else comes from the shared
   style.css / guide.css — add here only what Bike The Wineries has no
   module for. */

/* Product cards that are links */
a.trail-card { color: inherit; }
.trails .section-sub { color: rgba(255,255,255,.7); max-width: 640px; margin-top: 12px; line-height: 1.6; }

/* Guide (blog) cards */
.wz-posts { background: var(--dark); padding: 80px 0 120px; }
.wz-posts--home { background: var(--dark-2); padding: 100px 0; }
.wz-posts__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.wz-post-card {
  display: flex; flex-direction: column; background: var(--dark-3); border-radius: 8px;
  overflow: hidden; color: var(--white); transition: transform var(--transition);
}
.wz-post-card:hover { transform: translateY(-3px); }
.wz-post-card img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.wz-post-card__tag {
  font-family: var(--font-display); font-weight: 700; font-size: .72rem; letter-spacing: .15em;
  text-transform: uppercase; color: var(--accent); margin: 20px 20px 6px;
}
.wz-post-card__title {
  font-family: var(--font-display); font-weight: 800; font-size: 1.45rem; line-height: 1.05;
  text-transform: uppercase; margin: 0 20px 10px;
}
.wz-post-card__desc { font-size: .92rem; line-height: 1.55; color: rgba(255,255,255,.65); margin: 0 20px 24px; }

/* Blog category pills */
.wz-cats { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 24px; }
.wz-cats a {
  font-family: var(--font-display); font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  font-size: .85rem; padding: 8px 14px; border: 2px solid rgba(255,255,255,.3); border-radius: 4px;
}
.wz-cats a[aria-current="page"] { background: var(--accent); border-color: var(--accent); color: var(--dark); }
.guide-hero--short { min-height: 0; }

/* Migrated post bodies: images and quotes from the old blog */
.guide-content figure { margin: 28px 0; }
.guide-content figure img, .guide-content p img { width: 100%; height: auto; border-radius: 6px; }
.guide-content blockquote { border-left: 3px solid var(--accent); padding: 4px 0 4px 18px; margin: 24px 0; font-style: italic; }
.guide-content ul, .guide-content ol { margin: 0 0 20px 22px; line-height: 1.7; }

/* FAQ page */
.wz-faq details { border-bottom: 1px solid rgba(0,0,0,.12); padding: 18px 0; }
.wz-faq summary { cursor: pointer; font-weight: 600; font-size: 1.05rem; list-style: none; }
.wz-faq summary::-webkit-details-marker { display: none; }
.wz-faq summary::after { content: '+'; float: right; font-weight: 400; }
.wz-faq details[open] summary::after { content: '–'; }
.wz-faq details p { margin-top: 12px; }

/* Banner on migrated posts that mention retired services */
.wz-note { background: rgba(200,241,53,.15); border-left: 3px solid var(--accent); padding: 14px 18px; border-radius: 4px; font-size: .95rem; }

/* .trail-card sets display:flex, which beats the hidden attribute —
   product.js toggles the live / coming-soon Mt Edward cards with it. */
.trail-card[hidden] { display: none; }

/* Card copy runs taller than the shared gradient expects (most of all on
   phones), so darken further up the photo to keep it readable. */
#rides .trail-card__overlay {
  background: linear-gradient(to top, rgba(0,0,0,.92) 0%, rgba(0,0,0,.7) 55%, rgba(0,0,0,.35) 100%);
}
