.calendar-main{padding-top:48px}.calendar-intro{display:flex;justify-content:space-between;gap:32px;align-items:center;margin-bottom:38px}.calendar-intro h1{font:500 clamp(36px,4.3vw,64px)/1.08 'Space Grotesk',sans-serif;letter-spacing:-.045em;margin:12px 0 20px}.calendar-intro h1 em{font-style:normal;color:var(--green)}.calendar-intro p{max-width:550px;font-size:16px}.calendar-year{font:500 clamp(72px,9vw,140px)/1 'Space Grotesk',sans-serif;letter-spacing:-.065em;color:var(--green);text-align:right}.calendar-year span{display:block;font:14px/1.5 'DM Sans',sans-serif;letter-spacing:0;color:var(--muted);margin-top:14px}.calendar-tools{display:grid;grid-template-columns:minmax(240px,1fr) 240px auto;align-items:end;gap:20px;border-top:1px solid var(--line);padding-top:24px}.calendar-tools label{display:block;font-size:14px}.calendar-tools input,.calendar-tools select{display:block;width:100%;margin-top:8px;padding:13px 14px;font:16px 'DM Sans',sans-serif;color:#f2f5ee;background:#151b14;border:1px solid #4d6046;border-radius:8px}.calendar-tools :focus-visible,.month-filter button:focus-visible,.event-links :focus-visible{outline:2px solid var(--green);outline-offset:4px}.calendar-download{padding:14px 18px;border:1px solid var(--green);color:var(--green);border-radius:8px;font-size:14px}.month-filter{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.month-filter button{font:14px 'DM Sans',sans-serif;background:#151b14;color:#dce5d5;border:1px solid #35442e;border-radius:100px;padding:9px 14px;cursor:pointer}.month-filter button[aria-pressed=true]{background:var(--green);color:#0b1009;border-color:var(--green)}.calendar-meta{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px}.calendar-meta p{font-size:14px}.calendar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.calendar-card{border:1px solid #35442e;background:linear-gradient(145deg,#ffffff05,transparent 55%),#111610;border-radius:14px;padding:26px;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}.calendar-card:hover{transform:translateY(-3px);border-color:#8cab77}.calendar-card[hidden]{display:none}.date-line{display:flex;justify-content:space-between;gap:15px;color:var(--green);font-size:14px;align-items:center;margin-bottom:25px}.date-badge{border:1px solid #4d6046;border-radius:100px;padding:4px 8px;font-size:12px;color:#c1d7b6;white-space:nowrap}.calendar-card h2{font-size:27px;line-height:1.16;letter-spacing:-.025em;margin:0 0 14px}.calendar-card .event-location{font-size:16px;margin:0 0 14px;color:#ecf1e5}.calendar-card .event-plan{font-size:14px;color:#a4b59a;margin:0 0 24px}.event-links{border-top:1px solid #35442e;padding-top:16px;margin-top:auto;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:14px}.event-links a{color:var(--green)}.event-links button{font:14px 'DM Sans',sans-serif;background:none;color:#eef4e8;border:0;cursor:pointer;padding:5px 0}.event-links a:hover,.event-links button:hover{text-decoration:underline}.calendar-footnote{display:flex;gap:30px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:28px 0;margin:40px 0}.calendar-footnote p{max-width:660px;font-size:14px}.calendar-footnote a{font-size:16px;color:var(--green)}#calendar-empty{padding:55px 0;text-align:center}#calendar-empty[hidden]{display:none}#calendar-empty button{padding:12px 18px;margin-top:18px;background:var(--green);border:0;border-radius:6px;cursor:pointer}.calendar-nav{display:flex!important;position:static!important;background:none!important;padding:0!important;gap:24px!important}.calendar-nav a{font-size:14px}.calendar-teaser{display:flex;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid var(--line)}.calendar-teaser p:not(.eyebrow){max-width:560px;margin-top:20px}
@media(max-width:760px){.calendar-intro{display:block}.calendar-year{font-size:64px;text-align:left;margin-top:28px}.calendar-intro h1{font-size:40px}.calendar-year span{display:inline-block;font-size:14px;margin-left:20px;max-width:150px}.calendar-tools{grid-template-columns:1fr}.calendar-grid{grid-template-columns:1fr}.calendar-meta,.calendar-footnote,.calendar-teaser{flex-direction:column;align-items:flex-start}.calendar-meta{gap:8px}.calendar-card{padding:22px}.date-line{flex-wrap:wrap;gap:8px}.calendar-nav a:first-child{display:none}.calendar-nav .button{font-size:12px;padding:10px 12px}.calendar-teaser h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){.calendar-card{transition:none}.calendar-card:hover{transform:none}}
@media(max-width:760px){.calendar-main{padding-top:24px}.calendar-intro{margin-bottom:24px}.calendar-intro h1{font-size:30px;margin:8px 0 12px}.calendar-intro h1 br{display:none}.calendar-intro .eyebrow{font-size:12px}.calendar-intro p{font-size:14px}.calendar-year{font-size:42px;margin-top:15px;display:flex;align-items:center;gap:18px}.calendar-year span{margin:0;max-width:none}.calendar-tools{gap:12px;padding-top:18px}.month-filter{margin:16px 0;gap:6px}.month-filter button{padding:8px 11px}.calendar-meta{padding-bottom:14px}}
.event-logo{height:100px;max-width:270px;padding:16px;background:#fff;border-radius:12px;margin-bottom:24px;display:flex;align-items:center;justify-content:center}.event-logo.dark{background:#172e3d}.event-logo img{max-width:100%;max-height:100%;object-fit:contain}.date-line small{display:block;font-size:13px;margin-top:5px}.calendar-card[data-status=tbd] .date-badge{color:#ffcc80;border-color:#705a34}.calendar-card .date-line{flex-wrap:wrap;gap:12px}
