/* Split Banners Styles */
.banner-split { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.banner { aspect-ratio: 16/10; padding: 50px 40px; display: flex; flex-direction: column; justify-content: flex-end; position: relative; overflow: hidden; cursor: pointer; text-decoration: none; }
.banner-bg { position: absolute; inset: 0; z-index: 0; }
.banner-bg img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; background: #eee; }
.banner:hover .banner-bg img { transform: scale(1.05); }
.banner-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%); }
.banner > * { position: relative; z-index: 1; }
.banner h3 { font-family: 'Bebas Neue', 'Heebo', sans-serif; font-size: 56px; color: white; font-weight: 900; line-height: 0.9; letter-spacing: -1px; margin: 8px 0 16px; }
.banner-tag { font-size: 11px; color: var(--yellow); letter-spacing: 3px; font-weight: 700; }
.banner-cta { align-self: flex-start; padding: 12px 28px; background: white; color: var(--black); font-size: 12px; font-weight: 800; letter-spacing: 2px; transition: all 0.3s; }
.banner:hover .banner-cta { background: var(--yellow); transform: translateX(-4px); }

@media (max-width: 768px) {
  .banner-split { grid-template-columns: 1fr; }
  .banner { padding: 40px 24px; aspect-ratio: 4/3; }
  .banner h3 { font-size: 48px; }
}
