/* One Question / Web Summit page. Reuses ../style.css tokens. */
.ws { padding: 10px clamp(16px, 4vw, 40px) 56px; max-width: 820px; margin: 0 auto; }
.ws h1 { font: 800 clamp(28px, 5vw, 48px)/1.08 var(--serif); font-variation-settings: 'SOFT' 100, 'WONK' 1; letter-spacing: -.02em; margin: 8px 0 12px; text-align: center; color: var(--cream); }
.ws h2 { font: 700 12px var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin: 34px 0 12px; text-align: center; }
.ws .sub, .ws .sub2 { text-align: center; color: var(--muted); max-width: 62ch; margin: 0 auto 18px; }
.ops { list-style: none; counter-reset: o; padding: 0; margin: 0; display: grid; gap: 12px; }
.ops li { counter-increment: o; position: relative; padding: 16px 18px 16px 58px; border: 1.5px solid rgba(246,236,217,.22); border-radius: 16px; background: rgba(0,0,0,.18); }
.ops li::before { content: counter(o); position: absolute; left: 16px; top: 14px; width: 30px; height: 30px; border-radius: 50%; background: var(--cream); color: var(--table); font: 800 14px/30px var(--sans); text-align: center; }
.ops .o { margin: 0 0 6px; font: 700 clamp(18px, 2.6vw, 22px)/1.25 var(--serif); color: var(--cream); text-wrap: balance; }
.ops .w { margin: 0; color: var(--muted); font-size: 14.5px; }
.ops .w b { color: var(--cream); font-weight: 700; }
.exits { margin: 0; padding: 0 0 0 22px; display: grid; gap: 10px; color: var(--cream); }
.ws .note { text-align: center; color: var(--muted); font-size: 14px; max-width: 64ch; margin: 22px auto 0; }
