body {
    margin:0;
    background:#050505;
    font-family:'Segoe UI', Tahoma, sans-serif;
    color:#fff;
}

.section {
    padding:35px 10px;
    max-width:1200px;
    margin:auto;
    text-align:center;
}

.section h2 {
    color:#d4af37;
    letter-spacing:2px;
    font-size:22px;
}

.section .sub {
    opacity:.7;
    margin-bottom:20px;
    font-size:13px;
}

.swiper-container {
    padding:20px 0;
}

.swiper-wrapper {
    display:flex;
}

.swiper-slide {
    width:calc(33.333% - 10px);
    margin-right:15px;
    flex-shrink:0;
}

.swiper-slide:last-child {
    margin-right:0;
}

.event {
    position:relative;
    border:2px solid #FFD700;
    border-radius:12px;
    overflow:hidden;
    background:#000;
    box-shadow:0 0 12px rgba(212,175,55,0.2);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.event:hover {
    transform:translateY(-2px);
    box-shadow:0 0 20px rgba(212,175,55,0.35);
}

.event img {
    width:100%;
    aspect-ratio:3/4;
    object-fit:cover;
    display:block;
    transition: transform 0.25s ease, filter 0.25s ease;
}

.event:hover img {
    transform: scale(1.02);
    filter: brightness(1.05);
}

.date {
    position:absolute;
    top:5px;
    left:5px;
    width:22px;
    height:22px;
    background:rgba(0,0,0,.65);
    border:1px solid #FFD700;
    border-radius:4px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    color:#FFD700;
    font-size:8px;
}

.date span:first-child {
    font-weight:bold;
}

.content {
    position:absolute;
    bottom:0;
    width:100%;
    height:45%;
    background: linear-gradient(to top, rgba(0,0,0,.95), rgba(0,0,0,.5), transparent);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}

h3 {
    margin:0 0 5px;
    font-size:11px;
    color:#e8c56f;
    transition: color 0.25s ease;
}

.event:hover h3 {
    color:#fff0b3;
}

.event a {
    display:block;
    width:70%;
    margin:0 auto;
    padding:4px 0;
    background: linear-gradient(145deg,#f3d37a,#b68a28);
    color:#000;
    font-weight:bold;
    border-radius:6px;
    text-decoration:none;
    font-size:8px;
    box-shadow:0 0 6px rgba(212,175,55,.7);
    text-align:center;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.event:hover a {
    transform:scale(1.03);
    box-shadow:0 0 12px rgba(212,175,55,.9);
}

.swiper-pagination-bullet {
    background: rgba(212,175,55,0.5);
}

.swiper-pagination-bullet-active {
    background: rgba(212,175,55,0.9);
}

.events {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

@media(max-width:1024px) {
    .swiper-slide { width:calc(33.333% - 10px); }
}

@media(max-width:768px) {
    .swiper-slide { width:calc(33.333% - 10px); }
    h3 { font-size:10px; }
    .date { font-size:7px;width:20px;height:20px; }
    .event a { font-size:7px;width:65%;padding:3px 0; }
}