/* 13 zenitheventco.com — Chromatic Sequence. Page-scoped under .cs */
:root{
  --cs-white:#FFFFFF; --cs-ink:#202E4A; --cs-blue:#254F9C; --cs-teal:#2D706E;
  --cs-coral:#EEA28D; --cs-yellow:#F1DF9F;
  /* Kumbh Sans / Istok Web are not installed on the build host. */
  --cs-head:"Segoe UI Semibold","Segoe UI",Frutiger,"Helvetica Neue",sans-serif;
  --cs-body:Tahoma,Geneva,Verdana,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
.cs{margin:0;background:var(--cs-white);color:var(--cs-ink);font-family:var(--cs-body);
  font-size:16px;line-height:1.7;-webkit-text-size-adjust:100%}
.cs h1,.cs h2,.cs h3{font-family:var(--cs-head);margin:0;line-height:1.14;font-weight:700}
.cs p{margin:0 0 1em}
.cs a{color:var(--cs-blue)}
.cs :focus-visible{outline:3px solid var(--cs-ink);outline-offset:3px}
.cs .cs-skip{position:absolute;left:-9999px;background:var(--cs-ink);color:#fff;padding:14px}
.cs .cs-skip:focus{left:0;top:0;z-index:30}

.cs-nav{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;
  justify-content:space-between;padding:10px clamp(16px,4vw,48px);
  border-bottom:1px solid #e6e9ef;background:var(--cs-white)}
.cs-nav img{width:126px;height:49px;object-fit:contain;background:#000;padding:4px 8px}
.cs-nav nav{display:flex;flex-wrap:wrap}
.cs-nav nav a{min-height:44px;display:inline-flex;align-items:center;padding:0 12px;
  text-decoration:none;font-weight:700;font-size:15px;color:var(--cs-ink)}
.cs-nav nav a:hover{color:var(--cs-blue);text-decoration:underline}

.cs-heading{padding:clamp(26px,4.5vw,70px) clamp(16px,4vw,48px);max-width:1200px;margin:0 auto}
.cs-kick{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  color:var(--cs-teal)}
.cs-open h1{font-size:clamp(36px,4.7vw,72px);max-width:18ch;margin-bottom:.35em}
.cs-lede{font-size:18px;max-width:62ch}
.cs-acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.cs .cs-btn{display:inline-flex;align-items:center;min-height:52px;padding:0 26px;
  background:var(--cs-blue);color:#fff;text-decoration:none;font-family:var(--cs-head);
  font-weight:700}
.cs .cs-btn:hover{background:#1c3f7e}
.cs .cs-btn--line{background:transparent;color:var(--cs-ink);box-shadow:inset 0 0 0 2px var(--cs-ink)}

/* the five fields --------------------------------------------------------- */
.cs-bands{display:block}
.cs .cs-band{display:grid;grid-template-columns:120px 230px 1fr;gap:clamp(14px,3vw,44px);
  align-items:center;background:var(--cs-bg);color:var(--cs-fg);
  min-height:var(--cs-h);padding:20px clamp(16px,4vw,48px);text-decoration:none;
  border-bottom:2px solid var(--cs-white)}
.cs .cs-band:hover .cs-bandname{text-decoration:underline}
.cs .cs-band:hover{filter:brightness(.94)}
.cs-bandday{font-size:13px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  font-family:var(--cs-head)}
.cs-banddate{font-size:18px;font-weight:700;font-family:var(--cs-head)}
.cs-bandname{font-family:var(--cs-head);font-size:clamp(22px,2.8vw,38px);line-height:1.1;
  display:block;font-weight:700}
.cs-bandline{display:block;font-size:16px;margin-top:8px;max-width:70ch}
.cs .cs-band--3 .cs-bandline,.cs .cs-band--4 .cs-bandline{opacity:.92}

/* details ------------------------------------------------------------------ */
.cs-details,.cs-agenda,.cs-orgs,.cs-attend,.cs-business,.cs-venue,.cs-organiser{
  max-width:1200px;margin:0 auto;padding:clamp(32px,5vw,80px) clamp(16px,4vw,48px)}
.cs-details h2,.cs-agenda h2,.cs-orgs h2,.cs-attend h2,.cs-business h2,.cs-venue h2,
.cs-organiser h2{font-size:clamp(26px,3.3vw,44px);margin-bottom:.5em}
.cs-wide{max-width:78ch;font-size:17px}
.cs-detail{border-top:1px solid #e6e9ef;padding:26px 0 26px 26px;position:relative}
.cs-detail::before{content:"";position:absolute;left:0;top:26px;width:10px;height:64px;
  background:var(--cs-mark)}
.cs-detailkick{font-size:13px;letter-spacing:.11em;text-transform:uppercase;font-weight:700;
  color:#4a5a76}
.cs-detail h3{font-size:clamp(21px,2.5vw,32px);margin-bottom:.45em}
.cs-detaildesc{font-size:18px;max-width:68ch}
.cs-detailhours{font-size:15px;color:#4a5a76}
.cs-people{list-style:none;margin:16px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.cs-people li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}
.cs-people img{display:block;width:92px;height:auto;object-fit:cover}
.cs-mini{display:grid;place-items:center;width:92px;height:92px;background:var(--cs-ink);
  color:#fff;font-family:var(--cs-head);font-size:28px;font-weight:700}
.cs-people b{display:block;font-size:17px;font-family:var(--cs-head)}
.cs-people span{display:block;font-size:13px;line-height:1.45}

.cs-agenda{background:#f7f8fa;max-width:none}
.cs-agenda>*{max-width:1200px;margin-left:auto;margin-right:auto}
.cs-table{width:100%;border-collapse:collapse;font-size:15px;background:var(--cs-white)}
.cs-table caption{text-align:left;font-size:14px;color:#4a5a76;padding-bottom:10px}
.cs-table th,.cs-table td{text-align:left;padding:10px 13px;border-bottom:1px solid #e6e9ef;
  vertical-align:top}
.cs-table thead th{background:var(--cs-ink);color:#fff;font-family:var(--cs-head);
  font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.cs-table tbody th{font-weight:700;width:22%}
.cs-table td:first-child{width:17%;color:#4a5a76}
.cs-link{font-weight:700;margin-top:18px}

.cs-logos{list-style:none;margin:22px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:10px}
.cs-logos li{display:flex;align-items:center;gap:12px;background:#f7f8fa;padding:13px;
  min-height:72px}
.cs-logos img{width:46px;height:auto;object-fit:contain}
.cs-logos span{font-size:13px;font-weight:700}

.cs-modes{width:100%;border-collapse:collapse;font-size:16px}
.cs-modes caption{text-align:left;font-size:14px;color:#4a5a76;padding-bottom:10px}
.cs-modes th,.cs-modes td{text-align:left;padding:13px 16px;border-bottom:1px solid #e6e9ef;
  vertical-align:top}
.cs-modes tbody th{background:var(--cs-ink);color:#fff;width:18%;font-family:var(--cs-head);
  font-size:14px;text-transform:uppercase;letter-spacing:.05em}
.cs-modes tr:first-child td{font-weight:700;font-family:var(--cs-head);font-size:18px}
.cs-fine{font-size:15px;color:#4a5a76;max-width:88ch;margin-top:18px}

.cs-business{background:var(--cs-yellow);max-width:none}
.cs-business>*{max-width:1200px;margin-left:auto;margin-right:auto}
.cs-business p{max-width:82ch}
.cs-vgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,54px);align-items:start}
.cs-dl{margin:0;background:#f7f8fa;padding:6px 22px}
.cs-dl>div{display:grid;grid-template-columns:minmax(130px,32%) 1fr;gap:12px;padding:11px 0;
  border-bottom:1px solid #e6e9ef}
.cs-dl dt{font-family:var(--cs-head);font-weight:700;font-size:14px;text-transform:uppercase;
  letter-spacing:.05em;color:var(--cs-teal)}
.cs-dl dd{margin:0}
.cs-map{margin:0 0 22px}
.cs-map img{width:100%;height:auto;display:block}
.cs-map figcaption{font-size:14px;padding-top:10px;color:#4a5a76}
.cs-venue details{border-top:1px solid #e6e9ef}
.cs-venue summary{cursor:pointer;padding:15px 0;font-weight:700;min-height:44px;display:flex;
  align-items:center;font-family:var(--cs-head)}
.cs-venue details p,.cs-venue details ul{margin:0 0 14px}

.cs-organiser{background:var(--cs-ink);color:#fff;max-width:none}
.cs-organiser h2,.cs-organiser h3{color:#fff}
.cs-organiser a{color:#a9c1ee}
.cs-organiser .cs-fine{color:#c3cde0}
.cs-organiser>*{max-width:1200px;margin-left:auto;margin-right:auto}
.cs-ogrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:clamp(20px,4vw,54px);margin-bottom:22px}
.cs-organiser h3{font-size:14px;text-transform:uppercase;letter-spacing:.09em;
  margin-bottom:.9em;color:#a9c1ee}
.cs-links{list-style:none;margin:0;padding:0}
.cs-links li{padding:3px 0}
.cs-links a{display:inline-flex;min-height:34px;align-items:center}
.cs-foot{background:#18233a;color:#c3cde0;font-size:14px;padding:20px clamp(16px,4vw,48px)}
.cs-foot a{color:#a9c1ee}
.cs-foot p{margin:0}

@media (max-width:900px){
  /* mobile keeps the five broad bands, full width, at a natural height */
  .cs-band{grid-template-columns:1fr;min-height:0;gap:6px;padding:22px clamp(16px,4vw,48px)}
  .cs-vgrid{grid-template-columns:1fr}
  .cs-table,.cs-table thead,.cs-table tbody,.cs-table tr,.cs-table th,.cs-table td,
  .cs-modes,.cs-modes tbody,.cs-modes tr,.cs-modes th,.cs-modes td{display:block;width:auto}
  .cs-table thead{position:absolute;left:-9999px}
  .cs-table tr,.cs-modes tr{border-bottom:2px solid #e6e9ef;padding:10px 0}
  .cs-table th,.cs-table td,.cs-modes th,.cs-modes td{border:0;padding:3px 0}
  .cs-table tbody th,.cs-table td:first-child,.cs-modes tbody th{width:auto}
  .cs-people li{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.cs *{transition:none!important;animation:none!important}}
