:root{--jar-royal:#1a6db4;--jar-navy:#0e5283;--jar-deep:#012542;--jar-yellow:#f6bf2d;--jar-yellow-dark:#f1a32f;--jar-elevate:#dbe5f1;--jar-black:#1f2121;--jar-teal:#1ba6a7;--jar-teal-dark:#33859c;--jar-bg:#f3f7fd;--jar-muted:#556372;--jar-border:rgba(1,37,66,.14);--shadow-sm:0 8px 18px rgba(1,37,66,.08);--shadow-md:0 14px 34px rgba(1,37,66,.12);--radius-lg:18px;--radius-md:14px}.jar-events-wrapper{color:var(--jar-black);font-family:Montserrat,sans-serif;margin:0 auto;max-width:1120px;padding:42px 18px 64px}.jar-events-header{margin-bottom:26px;text-align:center}.jar-events-header h2{color:var(--jar-deep);font-size:2.5rem;font-weight:700;letter-spacing:-.02em;margin:0 0 10px}.jar-events-header p{color:var(--jar-muted);font-size:1.02rem;font-weight:400;margin:0}.jar-events-section{margin-bottom:62px;margin-top:18px}.jar-section-header{align-items:end;display:grid;gap:12px;grid-template-columns:1fr auto;margin-bottom:14px}.jar-section-header h3{color:var(--jar-deep);font-size:1.45rem;font-weight:700;margin:0}.jar-section-sub{color:var(--jar-muted);font-size:.95rem;font-weight:400}.jar-map-calendar-wrapper{display:grid;gap:18px;grid-template-columns:1fr 340px;margin:12px 0 18px}.jar-map-shell{background:linear-gradient(180deg,#fff,rgba(219,229,241,.35));border:1px solid var(--jar-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.jar-map-container{height:380px;width:100%}.jar-calendar-shell{background:linear-gradient(180deg,#fff,rgba(219,229,241,.35));border:1px solid var(--jar-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:380px;padding:16px}.jar-calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.jar-calendar-title{color:var(--jar-deep);font-size:1.1rem;font-weight:700;text-align:center}.jar-calendar-nav{align-items:center;background:#fff;border:1px solid var(--jar-border);border-radius:10px;color:var(--jar-navy);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.jar-calendar-nav:hover{background:var(--jar-elevate);border-color:rgba(1,37,66,.22);box-shadow:0 4px 12px rgba(1,37,66,.08);transform:translateY(-1px)}.jar-calendar-nav:active{transform:translateY(0)}.jar-calendar-weekdays{display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.jar-calendar-weekdays span{color:var(--jar-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:6px 0;text-align:center;text-transform:uppercase}.jar-calendar-grid{display:grid;flex:1;gap:3px;grid-template-columns:repeat(7,1fr)}.jar-calendar-day{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--jar-black);cursor:default;display:flex;flex-direction:column;font-size:.82rem;font-weight:500;justify-content:flex-start;min-height:40px;padding:6px 2px 4px;position:relative;transition:all .15s ease}.jar-calendar-day.jar-day-other{color:rgba(85,99,114,.45)}.jar-calendar-day.jar-day-today{background:rgba(27,166,167,.12);border-color:rgba(27,166,167,.3);color:var(--jar-deep);font-weight:700}.jar-calendar-day.jar-day-has-event{background:rgba(246,191,45,.1);border-color:rgba(246,191,45,.3);cursor:pointer}.jar-calendar-day.jar-day-has-event:hover{background:rgba(246,191,45,.22);border-color:rgba(246,191,45,.55);box-shadow:0 4px 12px rgba(246,191,45,.15);transform:translateY(-1px)}.jar-calendar-day.jar-day-today.jar-day-has-event{background:linear-gradient(180deg,rgba(27,166,167,.18),rgba(246,191,45,.18));border-color:var(--jar-teal)}.jar-calendar-event-dots{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:3px;max-width:100%}.jar-calendar-dot{background:var(--jar-teal);border-radius:50%;flex-shrink:0;height:6px;width:6px}.jar-calendar-dot:nth-child(2){background:var(--jar-royal)}.jar-calendar-dot:nth-child(3){background:var(--jar-yellow-dark)}.jar-calendar-day-tooltip{background:rgba(1,37,66,.97);border-radius:12px;bottom:calc(100% + 8px);box-shadow:0 12px 28px rgba(1,37,66,.35);color:#fff;display:flex;flex-direction:column;font-size:.82rem;font-weight:500;gap:6px;left:50%;max-width:260px;min-width:160px;opacity:0;padding:10px 14px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .18s ease,visibility .18s ease;visibility:hidden;z-index:100}.jar-calendar-day-tooltip:after{border:7px solid transparent;border-top-color:rgba(1,37,66,.97);content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.jar-calendar-day:hover .jar-calendar-day-tooltip{opacity:1;pointer-events:auto;visibility:visible}.jar-tooltip-event-link{background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);border-radius:8px;color:#fff;display:block;font-weight:600;overflow:hidden;padding:8px 10px;text-decoration:none;text-overflow:ellipsis;transition:all .15s ease;white-space:nowrap}.jar-tooltip-event-link:hover{background:rgba(246,191,45,.25);border-color:rgba(246,191,45,.45);color:var(--jar-yellow);transform:translateX(2px)}.jar-tooltip-event-link:active{transform:translateX(0)}@media (max-width:960px){.jar-map-calendar-wrapper{grid-template-columns:1fr}.jar-calendar-shell{height:auto;min-height:340px}}.jar-events-list{display:flex;flex-direction:column;gap:16px}.jar-events-empty{background:linear-gradient(180deg,#fff,rgba(219,229,241,.32));border:1px solid var(--jar-border);border-radius:var(--radius-lg);color:var(--jar-muted);font-weight:500;padding:16px 18px}.jar-event-card{background:#fff;border:1px solid var(--jar-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:grid;gap:0;grid-template-columns:260px 1fr;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.jar-event-card:hover{border-color:rgba(1,37,66,.22);box-shadow:var(--shadow-md);transform:translateY(-2px)}.jar-event-card.no-media{grid-template-columns:1fr}.jar-events-upcoming .jar-event-card{border-left:7px solid var(--jar-teal)}.jar-events-past .jar-event-card{border-left:7px solid var(--jar-royal)}.jar-event-media{background:var(--jar-elevate);display:block;min-height:180px;position:relative}.jar-event-media img{display:block;height:100%;object-fit:cover;width:100%}.jar-media-overlay{background:linear-gradient(180deg,rgba(1,37,66,.1),rgba(1,37,66,.55));inset:0;position:absolute}.jar-media-overlay-past{background:linear-gradient(180deg,rgba(1,37,66,.1),rgba(1,37,66,.62))}.jar-media-badges{align-items:center;bottom:14px;display:flex;flex-wrap:wrap;gap:10px;left:14px;position:absolute;right:14px}.jar-chip{align-items:center;backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.22);border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;gap:6px;letter-spacing:.04em;line-height:1;padding:7px 10px;text-transform:uppercase}.jar-chip-type{background:rgba(14,82,131,.35);color:#fff}.jar-chip-date{background:rgba(246,191,45,.92);border-color:rgba(246,191,45,.55);color:var(--jar-deep)}.jar-chip-inline{backdrop-filter:none;background:rgba(27,166,167,.1);border:1px solid rgba(27,166,167,.25);color:var(--jar-teal-dark)}.jar-event-content{display:flex;flex-direction:column;gap:12px;min-width:0;padding:18px 20px 20px}.jar-event-kicker{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.jar-pill{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:700;letter-spacing:.03em;padding:6px 10px}.jar-pill-upcoming{background:rgba(27,166,167,.18);border-color:rgba(27,166,167,.25);color:var(--jar-deep)}.jar-pill-past{background:rgba(26,109,180,.9);border-color:rgba(26,109,180,.35);color:#fff}.jar-event-title{font-size:1.25rem;font-weight:700;line-height:1.3;margin:0}.jar-event-title a{color:var(--jar-deep);text-decoration:none}.jar-event-title a:hover{text-decoration:underline}.jar-event-meta{color:var(--jar-muted);display:flex;flex-direction:column;font-size:.95rem;gap:8px}.jar-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.jar-meta-row-secondary{color:rgba(85,99,114,.92)}.jar-meta-item{align-items:center;display:inline-flex;gap:8px}.jar-meta-item svg{color:var(--jar-navy)}.jar-meta-sep{color:rgba(85,99,114,.55)}.jar-event-snippet{color:var(--jar-black);display:-webkit-box;font-size:.98rem;font-weight:400;-webkit-line-clamp:2;line-height:1.6;margin:0;-webkit-box-orient:vertical;overflow:hidden}.jar-event-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.jar-btn{align-items:center;border:1px solid transparent;border-radius:12px;display:inline-flex;font-size:.95rem;font-weight:700;justify-content:center;padding:10px 14px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.jar-btn:focus-visible,.jar-event-media:focus-visible,.jar-event-title a:focus-visible{outline:3px solid rgba(246,191,45,.75);outline-offset:2px}.jar-btn-primary{background:linear-gradient(180deg,var(--jar-royal),var(--jar-navy));box-shadow:0 10px 18px rgba(14,82,131,.18);color:#fff}.jar-btn-primary:hover{box-shadow:0 14px 28px rgba(14,82,131,.22);transform:translateY(-1px)}.jar-btn-accent{background:linear-gradient(180deg,var(--jar-yellow),var(--jar-yellow-dark));border-color:rgba(241,163,47,.55);box-shadow:0 10px 18px rgba(241,163,47,.18);color:var(--jar-deep)}.jar-btn-accent:hover{box-shadow:0 14px 28px rgba(241,163,47,.22);transform:translateY(-1px)}.jar-btn-ghost{background:#fff;border-color:rgba(26,109,180,.3);color:var(--jar-royal)}.jar-btn-ghost:hover{border-color:rgba(26,109,180,.45);box-shadow:0 10px 18px rgba(26,109,180,.12);transform:translateY(-1px)}.jar-event-card-past .jar-event-snippet{color:rgba(31,33,33,.88)}@media (max-width:860px){.jar-event-card{grid-template-columns:220px 1fr}}@media (max-width:720px){.jar-event-card,.jar-section-header{grid-template-columns:1fr}.jar-event-media{min-height:190px}.jar-event-content{padding:16px 16px 18px}}#events-map.jar-hide-labels .leaflet-tooltip.jar-marker-label{display:none}#events-map .leaflet-tooltip.jar-marker-label{background:hsla(0,0%,100%,.95);border:1px solid rgba(1,37,66,.18);border-radius:12px;box-shadow:0 10px 22px rgba(1,37,66,.12);color:var(--jar-deep);font-family:Montserrat,sans-serif;line-height:1.15;padding:8px 10px;white-space:nowrap}#events-map .leaflet-tooltip.jar-marker-label:before{border-right-color:hsla(0,0%,100%,.95)}#events-map .jar-map-label-title{font-size:.92rem;font-weight:700;max-width:220px;overflow:hidden;text-overflow:ellipsis}#events-map .jar-map-label-sub{color:rgba(1,37,66,.7);font-size:.78rem;margin-top:2px;max-width:220px;overflow:hidden;text-overflow:ellipsis}#events-map .jar-map-popup-title{color:var(--jar-deep);font-family:Montserrat,sans-serif;font-weight:700;margin-bottom:4px}#events-map .jar-map-popup-sub{color:rgba(1,37,66,.7);font-family:Montserrat,sans-serif;font-size:.9rem;margin-bottom:10px}#events-map .jar-map-popup-link{color:var(--jar-royal);font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}#events-map .jar-map-popup-link:hover{text-decoration:underline}@media (max-width:720px){#events-map .leaflet-tooltip.jar-marker-label{display:none!important}}.jar-map-marker{background:transparent!important;border:none!important}.jar-map-marker svg{display:block}.jar-marker-highlighted{z-index:1000!important}