@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600&family=Poppins:wght@600;700&display=swap");.events-page{display:flex;flex-direction:column;align-items:center;width:100%;background-color:#ffffff}.events-banner{width:100%;margin:0 0 2rem;border-radius:0;overflow:hidden;box-shadow:none;background:#fff;padding:0}.events-banner-header{background:#3f0864;color:#fff;text-align:center;padding:2rem 1rem 1.2rem;font-family:Poppins,sans-serif;font-size:3rem;font-weight:700;letter-spacing:1px;width:100%}.events-banner-verse{background:#fff;color:#3f0864;text-align:center;padding:2.2rem 1rem 1.5rem;font-family:Nunito,serif;font-size:1.4rem;font-weight:400;line-height:1.5;width:100%;letter-spacing:.2px}.events-banner-verse-ref{color:#3f0864;font-size:1.1rem;font-family:Nunito,serif;margin-top:.2rem;margin-bottom:1.5rem;display:block;letter-spacing:.3px;font-style:italic}.events-container{flex-grow:1;padding:3rem 1rem;width:100%;background-color:#44673e}.upcoming-events-title{font-size:3rem;font-family:Poppins,sans-serif;font-weight:700;color:#fff;margin-bottom:2rem}.events-header{width:100%;text-align:center;box-sizing:border-box}.event-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.event-card{width:350px;background-color:#ffffff;color:#222;border-radius:.5rem;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.3);position:relative;font-size:.9rem;display:flex;flex-direction:column}.event-image{height:250px;width:100%;background-size:cover;background-position:50%}.events-inner{max-width:900px;margin:0 auto;width:100%;padding:0 1rem}.event-date-badge{position:absolute;top:.75rem;right:.75rem;background-color:#44673e;color:#ffffff;padding:.25rem .5rem;text-align:center;font-weight:700;border-radius:.25rem;font-size:.75rem;z-index:2;font-family:Poppins,sans-serif}.event-content{padding:1rem;color:#222;font-size:.9rem;letter-spacing:.5px;font-family:Nunito,serif}.event-title{font-size:1.1rem;margin-bottom:.5rem;font-family:Poppins,sans-serif;letter-spacing:.7px}.event-link,.event-title{font-weight:700;color:#44673e}.event-link{text-decoration:underline;font-family:Nunito,serif}.calendar-button{background-color:#00110f;color:#e67b23;border:1px solid #e67b23;padding:.5rem 1.5rem;border-radius:.375rem;cursor:pointer;font-size:1.5rem;font-family:Cormorant Garamond,serif}.calendar-button:hover{background-color:#304946}.calendar-view{background-color:#f5f5f5;color:#1f2937;padding:2rem 1rem;min-height:70vh;display:grid;grid-template-columns:repeat(7,1fr);grid-gap:1px;gap:1px;border-top:1px solid #ddd;border-left:1px solid #ddd}.calendar-cell{background-color:#fff;padding:0;min-height:140px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;position:relative;overflow:hidden}.calendar-cell .day{position:absolute;top:.5rem;right:.5rem;font-weight:700;font-size:.85rem;z-index:2}.calendar-cell .event-snippet{height:100%;background-size:cover;background-position:50%;position:relative;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;padding:.75rem;font-size:.75rem;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.calendar-cell .event-snippet .overlay{background:rgba(0,0,0,.4);padding:.5rem;border-radius:.25rem}.calendar-month-title{text-align:center;font-size:2rem;margin:2rem 0 1rem;color:#065f46;display:flex;justify-content:center;align-items:center;gap:1rem}.calendar-month-title button{background-color:transparent;border:none;color:#065f46;font-size:1.5rem;cursor:pointer}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-weight:700;margin-bottom:.5rem;color:#374151}@media (max-width:768px){.events-banner{max-width:100vw;margin:0;border-radius:0;padding-left:0;padding-right:0}.events-banner-header{font-size:2rem;padding:1.2rem .5rem .8rem;border-radius:0}.events-banner-upcoming{font-size:1.2rem;padding:1rem .5rem}.events-banner-verse{font-size:1rem;padding:2rem .5rem .5rem}.event-card{width:100%;max-width:350px}.event-grid{gap:1.5rem}.events-container{padding:2rem 1rem}}@media (max-width:600px){.events-banner{max-width:100vw;margin:0;border-radius:0;padding-left:0;padding-right:0}.events-banner-header{font-size:1.3rem;padding:1rem .25rem .5rem;border-radius:0}.events-banner-upcoming{font-size:1rem;padding:.7rem .25rem;border-radius:0}.events-banner-verse{font-size:.95rem;padding:1.3rem .25rem .25rem}.event-card{max-width:98vw}}