/* Round 29 (2026-10-29): "Read before you go" blog row at the end of trip pages (partials/trip-posts.blade.php). */
.tr-posts { padding: 8px 0 64px; }
.tr-posts-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.tr-posts-kicker { margin: 0 0 6px !important; font-size: 12px !important; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #006818 !important; }
.tr-posts-head h2 { margin: 0; font-size: clamp(26px, 3vw, 34px); font-weight: 700; line-height: 1.15; color: #0a2540; }
.tr-posts-head > a { flex-shrink: 0; display: inline-flex; align-items: center; gap: 8px; font-weight: 700; color: #0073ad; text-decoration: none; }
.tr-posts-head > a:hover { color: #0a2540; }
.tr-posts-grid { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tr-posts-grid.n-1 { grid-template-columns: minmax(0, 560px); }
.tr-posts-grid.n-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tr-post { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #d9e6f0; border-radius: 18px; background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.tr-post:hover { transform: translateY(-4px); box-shadow: 0 22px 40px -26px rgba(10, 37, 64, .45); }
.tr-post-media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #e8eef3; }
.tr-post-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.tr-post:hover .tr-post-media img { transform: scale(1.05); }
.tr-post-body { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px 20px; }
.tr-post-meta { margin: 0 !important; font-size: 12.5px !important; font-weight: 600; color: #5b6f85 !important; }
.tr-post h3 { margin: 0; font-size: 19px; font-weight: 700; line-height: 1.3; color: #0a2540; }
.tr-post h3 a { color: inherit; text-decoration: none; }
.tr-post h3 a:hover { color: #0073ad; }
.tr-post-excerpt { margin: 0 !important; font-size: 14.5px !important; line-height: 1.55 !important; color: #33465b !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
/* phones / tablets: a swipe row like the trip slider instead of three stacked cards */
@media (max-width: 991.98px) {
    .tr-posts-grid, .tr-posts-grid.n-2 { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 -12px; padding: 2px 12px 10px; scroll-padding-left: 12px; scrollbar-width: none; }
    .tr-posts-grid::-webkit-scrollbar { display: none; }
    .tr-posts-grid > .tr-post { flex: 0 0 min(78%, 340px); scroll-snap-align: start; }
    .tr-posts-grid.n-1 { display: grid; grid-template-columns: minmax(0, 1fr); }
    .tr-posts-head h2 { font-size: 26px; }
}
