/* Caravans page styles (kept minimal, building on base.css) */
.hero { padding-block: var(--space-40) var(--space-24); }
.hero__grid { display: grid; gap: var(--space-24); align-items: center; grid-template-columns: 1.1fr 1fr; }
.hero__content .hero__actions { display: inline-flex; gap: var(--space-12); flex-wrap: wrap; }
.hero__media img { border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); }
@media (max-width: 960px) { .hero__grid { grid-template-columns: 1fr; } }

.toc { margin-block: var(--space-24); }
.toc__list { display: flex; flex-wrap: wrap; gap: var(--space-12); padding-left: 0; margin: 0; }
.toc__list li { list-style: none; }
.toc__list a { display: inline-flex; padding: 8px 12px; border: 1px solid var(--gray-200); border-radius: var(--radius-full); background: #fff; color: var(--color-text); }
.toc__list a:hover { background: var(--gray-100); text-decoration: none; }

.models__figure, .destinations__figure { margin-block: var(--space-24); }
.models__figure img, .destinations__figure img { border-radius: var(--radius-md); box-shadow: var(--shadow-md); }
.models__figure figcaption, .destinations__figure figcaption { color: var(--gray-700); margin-top: var(--space-8); font-size: var(--text-sm); }

.destination-card .badge { margin-right: 6px; margin-bottom: 6px; }

/* Safety details */
.tips { border: 1px solid var(--gray-200); background: #FFFDF8; border-radius: var(--radius-md); padding: var(--space-12) var(--space-16); }
.tips + .tips { margin-top: var(--space-12); }
.tips > summary { cursor: pointer; font-weight: 800; font-family: var(--font-serif); }
.tips[open] { background: #FFF7E6; border-color: var(--color-warning); }
.tips ul { margin-top: var(--space-12); }

.lifestyle__grid figure img { border-radius: var(--radius-md); box-shadow: var(--shadow-md); }

/* Section spacing helper (uses container from base) */
.section { padding-block: var(--space-24); }
