.gm-events{--gm-bg:#ffffff;--gm-ink:#383838;--gm-accent:#c1282a;background:var(--gm-bg);color:var(--gm-ink);font-family:Roboto,sans-serif;padding:40px 0 64px}
.gm-events .container{max-width:1200px}
.gm-events :where(h1,h2,h3,h4,p,figure){margin:0}
.gm-events-heading{max-width:760px;padding-bottom:32px}
.gm-events-heading nav{font-size:14px;margin-bottom:24px}
.gm-events-heading nav a{color:var(--gm-ink);text-decoration:underline;text-underline-offset:3px}
.gm-events-heading h1{font-family:Poppins,sans-serif;font-size:clamp(36px,4.5vw,54px);line-height:1.12;font-weight:700;letter-spacing:-1.2px;margin:0 0 16px;color:var(--gm-ink)}
.gm-events-heading>p{font-size:18px;line-height:1.6;max-width:660px}
.gm-events-tabs{display:flex;gap:32px;border-bottom:1px solid rgb(56 56 56 / 22%)}
.gm-events-tabs a{font-family:Poppins,sans-serif;font-weight:600;padding:16px 0;min-height:52px;color:var(--gm-ink);border-bottom:3px solid transparent;margin-bottom:-1px}
.gm-events-tabs a[aria-current]{color:var(--gm-accent);border-color:var(--gm-accent)}
.gm-events-filters{display:flex;align-items:end;gap:16px;padding:24px 0 32px;border-bottom:1px solid rgb(56 56 56 / 22%);margin:0}
.gm-events-filters>div:first-of-type{flex:1}
.gm-events-filters label{display:block;font-weight:700;font-size:14px;line-height:1.4;margin:0 0 8px}
.gm-events-filters input{display:block;width:100%;height:50px;padding:10px 14px;border:1px solid rgb(56 56 56 / 55%);border-radius:0;background:var(--gm-bg);color:var(--gm-ink);font:inherit;box-shadow:none;min-width:0}
.gm-events-filters input::placeholder{color:var(--gm-ink);opacity:.85}
.gm-events-filters button{height:50px;padding:0 24px;border:2px solid var(--gm-accent);border-radius:0;background:var(--gm-accent);color:var(--gm-bg);font:700 15px Roboto,sans-serif;white-space:nowrap;cursor:pointer}
.gm-events-filters button span{margin-left:16px}
.gm-events-reset{color:var(--gm-accent);padding:12px 0;text-decoration:underline;white-space:nowrap}
.gm-events-results{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:32px 0 8px}
.gm-events-results h2{font:700 26px/1.2 Poppins,sans-serif;color:var(--gm-ink)}
.gm-events-results p{font-size:14px;white-space:nowrap}
.gm-events-month-heading{font:600 18px/1.3 Poppins,sans-serif;color:var(--gm-ink);padding:24px 0 16px;text-transform:capitalize}
.gm-events-item{display:grid;grid-template-columns:88px 240px minmax(0,1fr);gap:32px;padding:24px 0 32px;border-bottom:1px solid rgb(56 56 56 / 22%)}
.gm-events-date{display:flex;flex-direction:column;align-items:center;align-self:start;border-top:3px solid var(--gm-accent);padding-top:12px;color:var(--gm-accent)}
.gm-events-date strong{font:700 42px/1 Poppins,sans-serif}
.gm-events-date>span{font:600 17px/1.4 Poppins,sans-serif;margin-top:4px}
.gm-events-date small{font-size:13px;color:var(--gm-ink);margin-top:8px}
.gm-events-poster{display:flex;align-items:center;justify-content:center;align-self:start;min-height:120px;background:rgb(56 56 56 / 4%)}
.gm-events-poster img{display:block;width:100%;height:220px;object-fit:contain;margin:0}
.gm-events-no-poster{padding:40px 16px;text-align:center;font:600 20px/1.4 Poppins,sans-serif;color:var(--gm-accent)}
.gm-events-when{font-size:14px;line-height:1.5;color:var(--gm-accent);font-weight:700;margin-bottom:10px}
.gm-events-copy h4{font:700 24px/1.3 Poppins,sans-serif;margin:0 0 10px}
.gm-events-copy h4 a{color:var(--gm-ink)}
.gm-events-venue{font-size:15px;line-height:1.5;font-weight:700;margin-bottom:12px}
.gm-events-excerpt{font-size:16px;line-height:1.6;margin-bottom:12px;max-width:65ch}
.gm-events-details{display:inline-flex;align-items:center;gap:24px;min-height:44px;color:var(--gm-accent);font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:4px}
.gm-events a:hover{color:var(--gm-accent);text-decoration:underline}
.gm-events :is(a,button,input):focus-visible{outline:3px solid var(--gm-ink);outline-offset:4px}
.gm-events .pagination{display:block;padding-top:32px}
.gm-events .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.gm-events .page-numbers{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:8px 14px;border:1px solid rgb(56 56 56 / 22%);color:var(--gm-ink)}
.gm-events .page-numbers.current{background:var(--gm-accent);border-color:var(--gm-accent);color:var(--gm-bg)}
.gm-events-empty{padding:48px 0;border-bottom:1px solid rgb(56 56 56 / 22%)}
.gm-events-empty h3{font:700 24px/1.3 Poppins,sans-serif;margin-bottom:12px}
.gm-events-empty p{margin-bottom:16px}
.gm-events-empty a{color:var(--gm-accent);text-decoration:underline;display:inline-block;padding:12px 0}
@media(max-width:991px){.gm-events-item{grid-template-columns:72px 180px minmax(0,1fr);gap:24px}.gm-events-poster img{height:190px}.gm-events-copy h4{font-size:21px}.gm-events-filters{flex-wrap:wrap}.gm-events-filters>div:first-of-type{flex-basis:50%}}
@media(max-width:600px){.gm-events{padding:24px 0 40px}.gm-events .container{padding-left:20px;padding-right:20px}.gm-events-heading{padding-bottom:24px}.gm-events-heading h1{font-size:36px}.gm-events-heading>p{font-size:16px}.gm-events-tabs{gap:20px}.gm-events-tabs a{font-size:13px;flex:1}.gm-events-filters{gap:16px}.gm-events-filters>div:first-of-type{flex-basis:100%}.gm-events-filters>div{width:100%}.gm-events-filters button{width:100%}.gm-events-results{align-items:start;flex-direction:column;gap:8px}.gm-events-results h2{font-size:23px}.gm-events-item{grid-template-columns:64px minmax(0,1fr);gap:16px;padding-top:16px}.gm-events-poster{grid-column:2}.gm-events-poster img{height:auto;max-height:260px}.gm-events-copy{grid-column:1/-1}.gm-events-date strong{font-size:36px}.gm-events-date small{font-size:11px}.gm-events-copy h4{font-size:22px}.gm-events-month-heading{padding-top:24px}}
.gm-events-filters select{display:block;width:100%;height:50px;padding:10px 32px 10px 14px;border:1px solid rgb(56 56 56 / 55%);border-radius:0;background-color:var(--gm-bg);color:var(--gm-ink);font:inherit;box-shadow:none;min-width:0}
.gm-events :is(select):focus-visible{outline:3px solid var(--gm-ink);outline-offset:4px}
.gm-events-status{font-size:14px;line-height:1.5;margin:0;padding-top:8px;min-height:29px;color:var(--gm-ink)}
.gm-events-status:empty{padding:0;min-height:0}
.gm-events-status a{color:var(--gm-accent);text-decoration:underline}
.gm-events[aria-busy="true"] section{opacity:.55;pointer-events:none}
.gm-events-results h2{scroll-margin-top:110px}
@media(min-width:992px){.gm-events-filters{flex-wrap:wrap}.gm-events-filters>div:first-of-type{min-width:220px}.gm-events-filters>div:not(:first-of-type){max-width:230px}.gm-events-reset{flex-basis:100%;padding:0}}
@media(prefers-reduced-motion:reduce){.gm-events *{scroll-behavior:auto!important}}
.gm-events-status[data-state="complete"]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* The parent theme fixes .container at desktop width; explicitly contain this archive. */
.gm-events>.container{width:100%!important;max-width:1200px!important;box-sizing:border-box}
.gm-events-copy,.gm-events-filters>div{min-width:0;overflow-wrap:anywhere}
