.events-teaser { padding:48px 0; background:var(--paper); border-bottom:1px solid var(--line); }
.events-teaser h2 { margin:0 0 20px; font-family:var(--serif); font-size:clamp(30px,3vw,42px); font-weight:400; line-height:1.1; letter-spacing:-.035em; }
.event-teaser { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:28px 32px; border:1px solid var(--line); border-left:4px solid var(--orange); border-radius:12px; background:var(--paper-soft); }
.event-teaser-copy { max-width:750px; }
.event-teaser h3 { margin:6px 0 10px; font-family:var(--serif); font-size:30px; font-weight:400; line-height:1.15; }
.event-teaser p { margin:8px 0 0; font-size:15px; color:var(--muted); }
.event-teaser>.button { flex:none; }
.event-meta { display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.event-teaser .event-meta { font-size:10px; color:var(--orange-dark); }
.event-date-line { font-weight:700; }
.events-hero { padding:48px 0 44px; background:var(--paper-soft); border-bottom:1px solid var(--line); }
.events-hero .breadcrumbs { margin-bottom:30px; }
.events-hero h1 { max-width:920px; margin:0; font-family:var(--serif); font-size:clamp(46px,6vw,82px); font-weight:400; line-height:1.02; letter-spacing:-.045em; }
.events-hero h1 em { color:var(--orange-dark); }
.events-hero .events-lead { max-width:680px; margin:22px 0 0; color:var(--muted); font-size:18px; }
.events-list-section { padding:56px 0; }
.events-section-title { margin:0 0 24px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
.events-list { display:grid; gap:24px; }
.event-card { display:grid; grid-template-columns:180px minmax(0,1fr); gap:40px; padding:36px; border:1px solid var(--line); border-radius:18px; background:var(--paper); scroll-margin-top:110px; }
.event-card-public { border-top:3px solid var(--orange); }
.event-card-members { border-top:3px solid var(--fern); }
.event-date-stamp { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:12px; align-self:start; aspect-ratio:1; border-radius:10px; background:var(--paper-deep); color:var(--ink); }
.event-date-stamp>span { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; }
.event-date-stamp>strong { font-family:var(--serif); font-size:48px; font-weight:400; line-height:1; letter-spacing:-.06em; }
.event-card-members .event-date-stamp { background:var(--charcoal); color:var(--cream); }
.event-format { color:var(--orange-dark); }
.event-access { padding:5px 10px; border:1px solid var(--line); border-radius:100px; font-size:10px; }
.event-card h3 { margin:14px 0; font-family:var(--serif); font-size:clamp(30px,3.8vw,46px); font-weight:400; line-height:1.05; letter-spacing:-.035em; }
.event-description { max-width:720px; color:var(--muted); margin:0 0 22px; }
.event-card .event-date-line { margin:0; font-size:17px; }
.event-location { margin:4px 0 0; color:var(--muted); font-size:14px; }
.event-note { max-width:700px; margin:20px 0; font-size:13px; color:var(--muted); }
.event-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.events-past-section { padding-top:12px; padding-bottom:40px; }
.event-past-item { padding:18px 0; border-bottom:1px solid var(--line); }
.event-past-item h3 { margin:0; font-family:var(--serif); font-weight:400; font-size:26px; }
.event-past-item p { color:var(--muted); font-size:14px; }
.events-newsletter { margin-bottom:56px; padding:30px; display:flex; justify-content:space-between; align-items:center; gap:24px; background:var(--paper-soft); border-radius:14px; }
.events-newsletter h2 { margin:0 0 6px; font-family:var(--serif); font-size:30px; font-weight:400; }
.events-newsletter p { margin:0; color:var(--muted); }
.events-newsletter .button { flex:none; }
@media (max-width:760px) {
  .events-teaser { padding:36px 0; }
  .event-teaser { align-items:flex-start; flex-direction:column; gap:20px; padding:24px; }
  .events-hero { padding:32px 0; }
  .events-list-section { padding:36px 0; }
  .event-card { grid-template-columns:minmax(0,1fr); gap:24px; padding:24px; }
  .event-date-stamp { flex-direction:row; aspect-ratio:auto; padding:18px; width:100%; justify-content:flex-start; }
  .event-date-stamp>strong { font-size:36px; }
  .event-date-stamp>span { font-size:10px; }
  .events-newsletter { align-items:flex-start; flex-direction:column; margin-bottom:36px; padding:24px; }
}
/* Homepage live-event editorial feature; the Events directory remains a separate layout. */
#events.events-teaser { padding:48px 0; background:var(--paper-soft); }
.events-editorial { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(28px,4vw,56px); align-items:stretch; }
.events-speaking { position:relative; min-height:480px; overflow:hidden; border-radius:24px; background:#191713; }
.events-speaking img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:72% center; }
.events-editorial-copy { padding:0; align-self:center; }
#events .eyebrow { margin-bottom:14px; }
#events h2 { font-size:clamp(42px,4.6vw,62px); line-height:1; letter-spacing:-.05em; margin:0; }
#events h2 em { font-weight:400; color:var(--orange-dark); }
#events .events-intro { max-width:540px; color:var(--muted); font-size:16px; line-height:1.5; margin:14px 0 20px; }
#events .event-teaser { display:block; padding:0; background:none; border:0; border-radius:0; }
.event-preview { border-top:1px solid var(--line); padding:14px 0; }
#events .event-preview-format { display:flex; align-items:center; gap:10px; color:var(--orange-dark); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin:0 0 8px; }
.event-preview-graphic { width:36px; height:36px; flex:none; padding:5px; border-radius:7px; background:var(--paper-deep); fill:none; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; stroke-linecap:round; }
#events .event-preview-description { margin:10px 0 12px; color:var(--muted); font-size:14px; line-height:1.6; max-width:510px; }
#events .event-preview h3 { margin:0; font-size:28px; line-height:1.15; }
.event-preview-link { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:44px; text-decoration:none; }
.event-preview-link:hover { color:var(--orange-dark); }
.event-preview-arrow { font-family:var(--sans); color:var(--orange-dark); font-size:25px; font-weight:400; }
#events .event-preview-date { font-size:13px; margin:6px 0 0; }
#events .event-preview-access { display:inline-block; color:#375f2d; background:#e8efdf; border:1px solid #b7c9a6; border-radius:100px; padding:5px 11px; font-weight:600; font-size:11px; line-height:1.4; margin:10px 0 0; }
.events-all { margin-top:6px; }
@media (max-width:760px) {
  #events.events-teaser { padding:32px 0; }
  .events-editorial { grid-template-columns:minmax(0,1fr); gap:24px; }
  .events-speaking { min-height:0; height:240px; border-radius:18px; }
  .events-speaking img { object-position:70% 38%; }
  .events-editorial-copy { padding:0; }
  #events h2 { font-size:clamp(38px,8vw,54px); }
  #events .events-intro { font-size:16px; margin:14px 0 18px; }
  #events .event-preview h3 { font-size:27px; }
}
