 :root{--display:'Alliance No.2',system-ui,sans-serif;--body:'Funnel Sans',system-ui,sans-serif;--ink:#111830;--ink-2:#454F66;--muted:#737e90;--white:#fff;--surface:#f5f7fa;--border:#dfe4ed;--blue:#1b58f8;--blue-dk:#0e44e6;--online:#eaf0ff;--person:#eaf4ee;--green:#35604a;--pad:clamp(20px,5vw,80px);--max:1440px;--gold:#b68c41;--sample:#faf2df;--footer-line:#ffffff22;--footer-muted:#ffffff99;--focus:#1b58f855;--chrome-tone-1:rgba(255,255,255,0.96);--chrome-tone-2:rgba(17,24,48,0.08);--chrome-tone-3:rgba(17,24,48,0.10);--chrome-tone-4:rgba(44,31,14,0.10);--chrome-tone-5:rgba(8,12,28,0.92);--chrome-tone-6:rgba(255,255,255,0.07);--chrome-tone-7:rgba(255,255,255,0.65);--chrome-tone-8:#fff;--chrome-tone-9:rgba(255,255,255,0.12);--chrome-tone-10:rgba(255,255,255,0.18);--chrome-tone-11:rgba(255,255,255,0.20);--chrome-tone-12:rgba(0,0,0,0.40);--chrome-tone-13:rgba(17,24,48,0.6);--chrome-tone-14:rgba(15,20,40,0.75);--chrome-tone-15:rgba(255,255,255,0.14);--chrome-tone-16:rgba(0,0,0,0.4);--chrome-tone-17:rgba(255,255,255,0.06);--chrome-tone-18:rgba(255,255,255,0.75);--chrome-tone-19:rgba(255,255,255,0.10);--chrome-tone-20:rgba(255,255,255,0.08);--chrome-tone-21:rgba(255,255,255,0.30);--chrome-tone-22:#FFFFFF;--chrome-tone-23:rgba(255,255,255,0.35);--chrome-tone-24:rgba(255,255,255,0.5);--chrome-tone-25:rgba(255,255,255,0.85);--chrome-tone-26:rgba(255,255,255,0.3);}
*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);line-height:1.5}a{color:inherit;text-decoration:none}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button:disabled{opacity:.35;cursor:default}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:300;letter-spacing:0}.container{max-width:var(--max);padding:0 var(--pad);margin:auto}
/* ── Nav ─────────────────────────────────────────────────── */
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  height: 68px; display: flex; align-items: center;
  padding: 0 var(--pad);
  background: var(--chrome-tone-1);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--chrome-tone-2);
  transition: box-shadow 350ms;
}
nav.scrolled {
  box-shadow: 0 2px 20px var(--chrome-tone-3);
  border-bottom-color: var(--chrome-tone-4);
}
/* Evening mode (19:00–06:00 local time) */
nav.evening {
  background: var(--chrome-tone-5);
  border-bottom-color: var(--chrome-tone-6);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
nav.evening .nav-links a { color: var(--chrome-tone-7); }
nav.evening .nav-links a:hover,
nav.evening .nav-links a.active { color: var(--chrome-tone-8); }
nav.evening .nav-logo img { filter: brightness(10); }
nav.evening .nav-cta { background: var(--chrome-tone-9); color: var(--chrome-tone-8); box-shadow: none; border: 1px solid var(--chrome-tone-10); }
nav.evening .nav-cta:hover { background: var(--chrome-tone-11); }
nav.evening.scrolled { box-shadow: 0 2px 24px var(--chrome-tone-12); }
.nav-logo { text-decoration: none; display: flex; align-items: center; }
.nav-logo img { height: 22px; width: auto; filter: brightness(0); }
.nav-links { display: flex; align-items: center; gap: 36px; margin: 0 auto 0 48px; }
.nav-links a { font-size: 13px; color: var(--chrome-tone-13); text-decoration: none; letter-spacing: 0.02em; transition: color 200ms; }
.nav-links a:hover, .nav-links a.active { color: var(--ink); }

/* ── Nav dropdown ───────────────────────────────────────── */
.nav-dropdown { position: relative; }
.nav-dropdown > a { display: flex; align-items: center; gap: 6px; }
.nav-dropdown > a svg { opacity: 0.5; transition: transform 200ms, opacity 200ms; flex-shrink: 0; }
.nav-dropdown:hover > a svg { transform: rotate(180deg); opacity: 0.8; }
.nav-dropdown-menu {
  position: absolute; top: 100%; left: 50%; padding-top: 16px; transform: translateX(-50%) translateY(-6px);
  background: var(--chrome-tone-14); backdrop-filter: blur(28px) saturate(160%); -webkit-backdrop-filter: blur(28px) saturate(160%);
  border: 1px solid var(--chrome-tone-15); border-radius: 10px;
  padding: 6px; min-width: 180px;
  box-shadow: 0 12px 40px var(--chrome-tone-16), 0 1px 0 var(--chrome-tone-17) inset;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 180ms cubic-bezier(0.16,1,0.3,1), transform 180ms cubic-bezier(0.16,1,0.3,1);
}
.nav-dropdown:hover .nav-dropdown-menu {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.nav-dropdown-menu a {
  display: flex; align-items: center;
  padding: 11px 16px; border-radius: 6px;
  font-size: 13px; font-weight: 400; color: var(--chrome-tone-18);
  text-decoration: none; transition: background 130ms, color 130ms; white-space: nowrap;
  letter-spacing: 0.01em;
}
.nav-dropdown-menu a:hover { background: var(--chrome-tone-19); color: var(--chrome-tone-8); }
.nav-dropdown-divider { height: 1px; background: var(--chrome-tone-19); margin: 3px 8px; }
.nav-cta {
  display: inline-flex; align-items: center; height: 38px; padding: 0 20px;
  background: var(--blue); color: var(--chrome-tone-8); border-radius: 9999px;
  font-family: var(--body); font-size: 13px; font-weight: 500;
  text-decoration: none; transition: background 200ms;
}
.nav-cta:hover { background: var(--blue-dk); }

/* ── Footer ──────────────────────────────────────────────── */
footer { background: var(--ink); border-top: 1px solid var(--chrome-tone-20); padding: 64px 0 40px; }
.footer-main { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 48px; }
.footer-lockup { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 24px; }
.footer-lockup img { filter: brightness(10); }
.footer-lockup-sep { width: 120px; height: 1px; background: var(--chrome-tone-21); }
.footer-lockup-words { font-family: var(--display); font-size: 14px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--chrome-tone-22); line-height: 2.1; margin: 0; }
.footer-col-label { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: var(--chrome-tone-23); margin-bottom: 16px; }
.footer-col-links { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.footer-col-links a { font-size: 14px; color: var(--chrome-tone-24); text-decoration: none; transition: color 150ms; }
.footer-col-links a:hover { color: var(--chrome-tone-25); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; padding-top: 24px; border-top: 1px solid var(--chrome-tone-20); flex-wrap: wrap; gap: 12px; }
.footer-copy { font-size: 12px; color: var(--chrome-tone-26); }
.footer-social { display: flex; align-items: center; gap: 16px; }
.footer-social a { color: var(--chrome-tone-24); display: inline-flex; transition: color 150ms; }
.footer-social a:hover { color: var(--chrome-tone-25); }


.nav-links{gap:26px}.nav-links a{letter-spacing:0}.nav-links a[aria-current]{color:var(--blue)}.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto}.nav-cta{white-space:nowrap}.nav-dropdown-menu{background:var(--white)}.nav-dropdown-menu a{color:var(--ink)}.nav-dropdown-menu a:hover{background:var(--surface);color:var(--ink)}
.events-intro{padding:132px var(--pad) 44px}.eyebrow{font-size:11px;color:var(--blue);font-weight:600;text-transform:uppercase;letter-spacing:0;margin-bottom:16px}.events-intro h1{font-size:72px;line-height:1.06}.intro-row{display:flex;justify-content:space-between;gap:28px;align-items:end}.intro-copy{max-width:520px;color:var(--ink-2);font-size:18px;margin-top:18px}.sample-note{font-size:12px;padding:8px 12px;background:var(--sample);border-radius:4px;max-width:270px}.calendar-section{padding:28px 0 64px;background:var(--surface);border-top:1px solid var(--border)}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.filters{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.segmented{display:flex;border-bottom:1px solid var(--border);gap:20px}.filter-button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:10px 0}.filter-button[aria-pressed=true]{border-bottom-color:var(--blue);color:var(--ink)}.format-select,.search{height:40px;background:var(--white);color:var(--ink);border:1px solid var(--border);border-radius:4px;padding:0 12px}.search{width:180px}.calendar-actions{display:flex;gap:8px;align-items:center}.icon-button{height:40px;width:40px;border:1px solid var(--border);border-radius:50%;background:var(--white);color:var(--ink);display:grid;place-items:center;font-size:21px}.today-button{height:40px;padding:0 14px;border:1px solid var(--border);border-radius:4px;background:var(--white);color:var(--ink)}.calendar-track{display:flex;overflow-x:auto;gap:28px;scroll-snap-type:x proximity;scroll-behavior:smooth;padding:2px 2px 24px;scrollbar-color:var(--blue) var(--border);scrollbar-width:thin;overscroll-behavior-x:contain}.month{flex:0 0 330px;scroll-snap-align:start;min-width:0}.month-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:22px}.month-head h2{font-size:25px}.month-head span{color:var(--muted);font-size:13px}.month[data-current=true] .month-head{border-bottom:2px solid var(--blue)}.event-card{display:block;border:1px solid var(--border);border-radius:8px;background:var(--white);overflow:hidden;transition:transform .25s,border-color .25s;margin-bottom:20px}.event-card:hover{transform:translateY(-4px);border-color:var(--blue)}.event-cover{position:relative;aspect-ratio:16/10;overflow:hidden}.event-cover img{width:100%;height:100%;object-fit:cover;display:block}.event-date{position:absolute;left:16px;top:16px;padding:8px 12px;background:var(--white);border-radius:4px;line-height:1.1;text-align:center}.event-date b{display:block;font-size:27px;font-weight:400}.event-date span{font-size:11px;text-transform:uppercase}.event-body{padding:20px}.event-tags{display:flex;align-items:center;gap:8px;margin-bottom:13px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:500;background:var(--online);color:var(--blue)}.pill.in-person{background:var(--person);color:var(--green)}.event-status{color:var(--muted);font-size:11px}.event-body h3{overflow-wrap:anywhere;font-size:25px;line-height:1.2;min-height:60px}.event-meta{font-size:13px;color:var(--muted);margin-top:16px;display:flex;flex-direction:column;gap:4px}.event-bottom{margin-top:18px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:14px;font-size:12px;color:var(--blue)}.empty-month{color:var(--muted);font-size:13px;padding:24px 0}.calendar-summary{font-size:12px;color:var(--muted);margin-top:18px}.empty-state{padding:60px 0;color:var(--muted)}.detail{padding:116px var(--pad) 72px}.back-link{display:inline-flex;gap:8px;color:var(--ink-2);font-size:14px;margin-bottom:32px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:64px;align-items:start}.detail h1{font-size:52px;line-height:1.12;margin:18px 0}.detail-lede{font-size:19px;color:var(--ink-2);margin-bottom:28px}.detail-cover{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px}.detail-content{margin-top:32px;max-width:650px}.detail-content h2{font-size:28px;margin-bottom:16px}.detail-content p{color:var(--ink-2);margin-bottom:20px}.event-facts{border-top:2px solid var(--blue);padding:24px 0;margin-top:8px}.event-facts dl{margin:0}.event-facts dt{font-size:12px;color:var(--muted);margin-top:22px}.event-facts dd{margin:5px 0 0;font-size:17px}.event-facts .sample-note{margin-top:30px}.detail-link{color:var(--blue);display:inline-flex;margin-top:24px}.footer-col-label,.footer-copy{letter-spacing:0}.footer-col-links{padding:0}.footer-lockup-words{letter-spacing:0}
@media(max-width:1100px){.nav-links{gap:16px;margin-left:28px}.nav-links a{font-size:12px}.nav-cta{padding:0 14px}.footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:28px}.search{width:150px}.detail-layout{gap:32px}}
@media(max-width:800px){.nav-links{display:none}.nav-cta{margin-left:auto}.events-intro{padding-top:110px}.events-intro h1{font-size:52px}.intro-row{display:block}.sample-note{margin-top:20px}.calendar-toolbar{align-items:start}.month{flex-basis:300px}.calendar-actions{margin-left:auto}.footer-main{grid-template-columns:1fr 1fr}.detail-layout{grid-template-columns:1fr}.detail h1{font-size:38px}.detail .event-facts{margin-top:0}.detail-cover{aspect-ratio:4/3}}
@media(max-width:420px){.events-intro h1{font-size:46px}.intro-copy{font-size:16px}.filters{gap:12px}.search{width:100%}.calendar-toolbar{gap:14px}.segmented{gap:18px}.month{flex-basis:calc(100vw - 56px)}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}.footer-col-links a{font-size:12px}.detail h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.calendar-track{scroll-behavior:auto}.event-card{transition:none}}

[hidden]{display:none!important}.event-body h3{hyphens:auto}.events-intro.container,.detail.container{width:100%}
.filters .search{border-radius:999px;padding-inline:16px}
.calendar-actions .today-button{border-radius:999px;padding-inline:18px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:20px;transition:background .2s,color .2s}
.calendar-actions .today-button:hover{background:var(--surface);color:var(--blue)}
.filters .segmented{gap:2px;padding:4px;border:1px solid var(--border);border-radius:999px;background:var(--white);min-height:42px;align-items:center}
.filters .filter-button{border:0;border-radius:999px;padding:7px 14px;line-height:20px;white-space:nowrap;transition:background .2s,color .2s}
.filters .filter-button:hover{background:var(--surface);color:var(--ink)}
.filters .filter-button[aria-pressed=true]{background:var(--blue);color:var(--white)}
@media(max-width:420px){.filters .filter-button{padding:6px 12px}}
