/* Lugazi Events — unified events page (single, grid, archive) */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html, body, .elementor, .elementor-inner, .elementor-section-wrap, .elementor-section, .elementor-container, .elementor-row, .elementor-column, .elementor-widget-wrap, .elementor-widget, .elementor-widget-container, .entry-content, .site-main, article, main, #content, .page, .site-content {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}
body { overflow-x: hidden !important; }

/* ── Single event: fullscreen split layout ── */
.lugazi-event-page { display: flex; height: 100vh; width: 100vw; font-family: Helvetica, sans-serif; position: fixed; top: 0; left: 0; }
.lugazi-event-image { width: 50%; height: 100vh; }
.lugazi-event-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lugazi-event-content { width: 50%; display: flex; flex-direction: column; justify-content: center; padding: 60px; box-sizing: border-box; background: #fff; }
.lugazi-event-title { font-size: 22px; font-weight: 500; text-transform: uppercase; margin-bottom: 20px; letter-spacing: 0.05em; }
.lugazi-event-details { font-size: 15px; text-transform: uppercase; line-height: 1.8; font-weight: 500; }
.lugazi-event-details p { margin: 0 0 10px; }
.back-link { position: fixed; top: 20px; left: 20px; color: #fff; text-decoration: none; font-size: 27px; font-weight: 300; z-index: 9999; }
.back-link:hover { opacity: 0.6; }
.back-link.dark { color: #000; }

/* ── RSVP form ── */
.lugazi-event-form { margin-top: 40px; }
.lugazi-event-form input[type="text"],
.lugazi-event-form input[type="email"],
.lugazi-event-form input[type="tel"] {
    width: 100%; max-width: 300px; border: 1px solid #000; padding: 12px 15px;
    font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase;
    font-family: Helvetica, sans-serif; margin-bottom: 15px; box-sizing: border-box;
}
.lugazi-event-form input::placeholder { color: #999; }
.lugazi-event-form input[type="submit"] {
    background: #000; color: #fff; border: none; padding: 15px 40px;
    font-size: 12px; letter-spacing: 0.15em; text-transform: uppercase;
    cursor: pointer; font-family: Helvetica, sans-serif;
}
.lugazi-event-form input[type="submit"]:hover { opacity: 0.7; }
.lugazi-event-form .wpcf7-response-output { font-size: 12px; margin-top: 15px; padding: 10px; border: none !important; }
.lugazi-event-form p { margin: 0; }

/* ── Grid: several upcoming events / poster archive ── */
.lugazi-events-heading {
    font-family: Helvetica, sans-serif; text-align: center; font-size: 13px;
    letter-spacing: 0.2em; text-transform: uppercase; padding-top: 90px;
}
.lugazi-events-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 55px 75px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 180px 30px 60px;
    font-family: Helvetica, sans-serif;
}
.lugazi-events-heading + .lugazi-events-grid { padding-top: 40px; }
.lugazi-event-card { text-decoration: none; color: #000; text-align: center; display: block; width: 240px; }
a.lugazi-event-card:hover { opacity: 0.7; }
.lugazi-event-card img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; margin-bottom: 12px; }
.lugazi-event-card-title { font-size: 13px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em; }
.lugazi-event-card-date { font-size: 12px; margin-top: 4px; letter-spacing: 0.05em; }
.lugazi-no-events { grid-column: 1 / -1; text-align: center; font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; }

@media (max-width: 768px) {
    .lugazi-event-page { flex-direction: column; height: auto; position: relative; }
    .lugazi-event-image, .lugazi-event-content { width: 100%; }
    .lugazi-event-image { height: 50vh; }
    .lugazi-event-content { padding: 40px 20px; }
    .lugazi-event-form input[type="text"],
    .lugazi-event-form input[type="email"],
    .lugazi-event-form input[type="tel"] { max-width: 100%; }
    .lugazi-events-grid { gap: 30px 20px; padding: 120px 16px 40px; }
    .lugazi-event-card { width: 40vw; }
}
