/* Compact landscape cards: full flyers, scannable metadata and one clear action. */
.events-section .section-title { max-width: none; text-transform: none; }
.events-section .grid { gap: 24px; align-items: stretch; }
.events-section .grid > .card:nth-child(n) { grid-column: span 4; align-self: stretch; height: 100%; background: #15191c; border: 1px solid #292d30; border-radius: 18px; box-shadow: none; transition: border-color .2s; }
.events-section .card:hover { transform: none; border-color: #53716e; }
.events-section .card-image-container { aspect-ratio: 16 / 9; border-radius: 17px 17px 0 0; background: #0c1112; overflow: visible; z-index: 2; }
.events-section .card-artwork { position: absolute; inset: 0; overflow: hidden; border-radius: inherit; isolation: isolate; }
.events-section .card-artwork .poster-backdrop { z-index: 0; filter: blur(24px) brightness(.3); transform: scale(1.15); }
.events-section .card-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 8px; box-sizing: border-box; border-radius: inherit; z-index: 1; }
.events-section .card-date-badge { display: flex; top: 12px; left: 12px; bottom: auto; gap: 4px; min-width: 56px; padding: 7px 10px; border: 0; border-radius: 10px; background: #171a18f5; backdrop-filter: none; z-index: 1; }
.events-section .card-date-day { font: 800 26px/1 var(--font-display); color: #f4f5f3; }
.events-section .card-date-month { font: 600 13px/1.3 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: #5dd3c7; }
.events-section .card-category { position: static; align-self: flex-start; max-width: 100%; padding: 4px 9px; border: 1px solid #5dd3c733; border-radius: 6px; background: #5dd3c70d; color: #83d8cd; font: 600 11px/1.3 var(--font-body); text-transform: uppercase; letter-spacing: .06em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.events-section .card-category--generic { border-color: #ffffff14; background: transparent; color: #9aa6ac; }
.events-section .card-tools { position: absolute; top: 12px; right: 12px; display: flex; gap: 6px; z-index: 3; }
.events-section .btn-fav { position: static; width: 44px; height: 44px; background: #191914ed; border: 0; border-radius: 50%; backdrop-filter: none; color: #fff; }
.events-section .btn-fav svg { width: 24px; height: 24px; }
.events-section .btn-fav:hover, .events-section .btn-fav.active { background: #203b36; color: #5dd3c7; }
.events-section .card-content { padding: 18px 20px 20px; gap: 12px; }
.events-section .card-title { font-size: 1.6rem; font-weight: 700; line-height: 1.15; min-height: 2.3em; margin: 0; text-transform: none; letter-spacing: -.015em; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; text-wrap: pretty; }
.events-section .card-info { gap: 10px; margin-bottom: 4px; }
.events-section .info-item { gap: 8px; font-size: 14px; line-height: 1.45; color: #a6b7c1; }
.events-section .info-item:first-child { color: #d8e1e4; font-weight: 500; }
.events-section .card-location { display: grid; gap: 2px; min-width: 0; }
.events-section .card-venue { color: #d8e1e4; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.events-section .card-area { font-size: 13px; color: #9aadb7; }
.events-section .info-item:first-child { text-transform: none; }
.events-section .info-item:first-child span::first-letter { text-transform: uppercase; }
.events-section .info-item span { overflow-wrap: anywhere; }
.events-section .info-icon { width: 16px; height: 16px; margin-top: 3px; color: #879195; stroke-width: 1.8; }
.events-section .card-footer { flex-wrap: wrap; gap: 10px; border: 0; padding-top: 8px; margin-top: auto; min-height: 48px; }
.events-section .card-price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 6px; font: 700 21px/1.25 var(--font-body); color: #fff; text-transform: none; overflow-wrap: anywhere; }
.events-section .card-price-label { font: 400 15px/1.3 var(--font-body); color: #9eb3c1; }
.events-section .btn-card-action { flex: 0 0 auto; margin-left: auto; min-height: 44px; padding: 11px 16px; border: 0; border-radius: 999px; background: #5bd0c3; color: #061b19; font: 600 14px/1.2 var(--font-body); text-transform: none; letter-spacing: 0; }
.events-section .btn-card-action::after { content: '→'; margin-left: 7px; }
.events-section .btn-card-action:hover { background: #8ae5d9; color: #061b19; }
.events-section .btn-card-action:active { transform: translateY(1px); }
.events-section .card :is(button,a,summary):focus-visible { outline: 2px solid #8ae5d9; outline-offset: 3px; }
.events-section .card-more { position: relative; padding: 0; border: 0; }
.events-section .card-more summary { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0 0 7px; list-style: none; color: #fff; background: #191914ed; font: 700 22px/1 var(--font-body); border-radius: 50%; }
.events-section .card-more summary::-webkit-details-marker { display: none; }
.events-section .card-more summary:hover { background: #203b36; }
.events-section .card-options { position: absolute; right: 0; top: 50px; z-index: 10; display: grid; gap: 8px; width: 180px; padding: 10px; background: #1c2929; border: 1px solid #526b6c; border-radius: 10px; box-shadow: 0 8px 24px #0006; }
.events-section .card-options :is(.btn-share-wa,.btn-going) { position: static; display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; height: auto; min-height: 44px; margin: 0; padding: 8px; border-radius: 5px; font: 500 14px/1.3 var(--font-body); }
@media (max-width: 1050px) { .events-section .grid > .card:nth-child(n) { grid-column: span 6; } }
@media (max-width: 620px) { .events-section .grid > .card:nth-child(n) { grid-column: 1 / -1; } .events-section .card-content { padding: 16px 20px 18px; } }
@media (prefers-reduced-motion: reduce) { .events-section .card, .events-section .btn-card-action { transition: none; } }
