/* Events link: all content is available without JavaScript. */
.upcoming-events{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,88px);padding:clamp(28px,4vw,56px);border:1px solid var(--line);border-radius:8px;background:var(--panel-surface);scroll-margin-top:120px}
.upcoming-events-title,.upcoming-events-copy{min-width:0}
.upcoming-events-title>.eyebrow{color:var(--accent-text)}
.upcoming-events h2{font:500 clamp(32px,4vw,52px)/1.12 var(--display);letter-spacing:-.045em;margin:20px 0 0}
.upcoming-events-description{max-width:540px;color:var(--muted);font-size:17px;line-height:1.7;margin:0 0 28px}
.upcoming-events .button{min-height:48px;max-width:100%;gap:14px}
.upcoming-events .button .ui-icon{flex-shrink:0}
.upcoming-events .button>.ui-icon{width:20px;height:20px}
@media(max-width:800px){
 .upcoming-events{grid-template-columns:minmax(0,1fr);gap:24px;padding:28px 24px}
 .upcoming-events-description{font-size:16px;margin-bottom:24px}
 .upcoming-events .button{font-size:14px;text-align:left;padding-inline:18px}
}
@media(max-width:400px){
 .upcoming-events{padding:24px 18px}
 .upcoming-events .button{gap:10px;font-size:13px;padding-inline:14px}
}
