/* Conference (template-parts/single-events.php) */
.evt-status{display:inline-block;margin-inline-start:10px;padding:2px 12px;border-radius:999px;background:rgba(10,135,84,.2);border:1px solid rgba(46,204,113,.5);color:#7CE3A8;font-size:12px;font-weight:900;vertical-align:middle}
.evt-chips{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.evt-chips li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid var(--hair);color:#fff;font-weight:800;font-size:14px}
.evt-chips svg{width:18px;height:18px;color:var(--gold);flex:none}

/* Boarding pass */
.evt-pass{position:relative;width:min(420px,100%);margin-inline:auto;border-radius:26px;background:var(--card);color:var(--text);box-shadow:0 40px 80px rgba(0,0,0,.45);overflow:hidden;transform:rotate(-2.5deg)}
.evt-pass__img{margin:0;aspect-ratio:16/9;background:var(--ink-2)}
.evt-pass__img img{display:block;width:100%;height:100%;object-fit:cover}
.evt-pass__body{position:relative;padding:20px 24px 18px;border-top:2px dashed var(--line-2)}
.evt-pass__body::before,.evt-pass__body::after{content:"";position:absolute;top:-14px;width:26px;height:26px;border-radius:50%;background:#0A1430}
.evt-pass__body::before{inset-inline-start:-13px}
.evt-pass__body::after{inset-inline-end:-13px}
.evt-pass__head{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:900;color:var(--muted)}
.evt-pass__head b{padding:2px 10px;border-radius:999px;background:var(--gold);color:#0A1430}
.evt-pass__route{display:flex;align-items:center;gap:12px;margin:14px 0}
.evt-pass__route>div small{display:block;font-size:11px;color:var(--muted);font-weight:700}
.evt-pass__route>div b{font-size:24px;font-weight:900;color:var(--ink-text)}
.evt-pass__route>div:last-child{text-align:end}
.evt-pass__line{position:relative;flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--line-2) 0 6px,transparent 6px 11px)}
.evt-pass__line svg{position:absolute;top:50%;left:50%;width:26px;height:26px;margin:-13px 0 0 -13px;fill:var(--gold);transform:rotate(-90deg)}
.has-motion .evt-pass__line svg{animation:evt-fly 4s ease-in-out infinite}
@keyframes evt-fly{0%{left:8%;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:92%;opacity:0}}
.evt-pass__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:0}
.evt-pass__grid dt{font-size:11px;font-weight:700;color:var(--muted)}
.evt-pass__grid dd{margin:2px 0 0;font-size:14px;font-weight:900;color:var(--ink-text)}
.evt-pass__code{display:block;width:100%;height:30px;margin-top:16px;fill:var(--ink-text);opacity:.8}

/* About */
.evt-hosts{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.evt-hosts li{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:800;color:var(--ink-text)}
.evt-hosts span{flex:none;width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;font-weight:900}

/* Programme as a flight path */
.evt-flight{list-style:none;margin:0 auto;padding:0 0 0;max-width:860px;position:relative;display:grid;gap:16px;--p:0}
.evt-flight::before{content:"";position:absolute;inset-inline-start:27px;top:20px;bottom:20px;width:0;border-inline-start:3px dashed var(--line-2)}
.evt-flight::after{content:"";position:absolute;inset-inline-start:27px;top:20px;width:3px;height:calc((100% - 40px) * var(--p));background:var(--gold);border-radius:2px;transition:height .2s linear}
.evt-flight__plane{position:absolute;z-index:2;inset-inline-start:15px;top:calc(8px + (100% - 40px) * var(--p));width:28px;height:28px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px rgba(243,188,0,.2);transition:top .2s linear}
.evt-flight__plane svg{width:18px;height:18px;fill:#0A1430;transform:rotate(180deg)}
.evt-slot{position:relative;padding-inline-start:64px}
.evt-slot details{border-radius:22px;background:var(--card);border:1px solid var(--line);transition:border-color .25s,box-shadow .25s}
.evt-slot details[open]{border-color:rgba(243,188,0,.55);box-shadow:0 18px 40px var(--shadow)}
.evt-slot summary{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;list-style:none}
.evt-slot summary::-webkit-details-marker{display:none}
.evt-slot__n{position:absolute;inset-inline-start:12px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--paper);border:3px solid var(--line-2);font-size:13px;font-weight:900;color:var(--muted)}
.evt-slot.is-panel .evt-slot__n{border-color:var(--gold);color:var(--ink-text)}
.evt-slot__t{flex:1;display:flex;flex-direction:column;gap:2px}
.evt-slot__t small{font-size:12px;font-weight:900;color:var(--gold-ink)}
.evt-slot__t b{font-size:17px;font-weight:900;color:var(--ink-text);line-height:1.7}
.evt-slot summary svg{flex:none;width:20px;height:20px;fill:none;stroke:var(--muted);stroke-width:2.2;transition:transform .25s}
.evt-slot details[open] summary svg{transform:rotate(180deg)}
.evt-slot__body{padding:0 18px 18px}
.evt-slot__lead{display:flex;align-items:center;gap:12px;margin:0;padding:12px;border-radius:16px;background:rgba(243,188,0,.1)}
.evt-slot__lead b{display:block;color:var(--ink-text)}
.evt-slot__lead small,.evt-slot__people small{display:block;font-size:13px;color:var(--muted);line-height:1.8}
.evt-ava{flex:none;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#0A1430;font-weight:900;font-size:18px}
.evt-slot__people{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.evt-slot__people li{padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:var(--paper)}
.evt-slot__people b{font-size:14px;color:var(--ink-text)}

/* Speakers */

.evt-people{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.evt-person{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:22px 16px;border-radius:22px;background:var(--card);border:1px solid var(--line);transition:transform .3s,box-shadow .3s,border-color .3s}
.evt-person:hover{transform:translateY(-6px);box-shadow:0 20px 40px var(--shadow);border-color:rgba(243,188,0,.5)}
.evt-person__ava{width:64px;height:64px;margin-bottom:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:conic-gradient(from 200deg,var(--gold),#FFD34D,var(--navy),var(--gold));color:#fff;font-size:24px;font-weight:900;box-shadow:inset 0 0 0 4px var(--card);position:relative}
.evt-person__ava::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--navy);z-index:0}
.evt-person__ava{isolation:isolate}
.evt-person__ava{color:#fff}
.evt-person__ava::after{z-index:-1}
.evt-person b{font-size:15px;font-weight:900;color:var(--ink-text)}
.evt-person small{font-size:12.5px;color:var(--muted);line-height:1.8}
.evt-person em{margin-top:auto;padding:2px 10px;border-radius:999px;background:rgba(243,188,0,.14);color:var(--gold-ink);font-style:normal;font-size:11.5px;font-weight:900}

/* Series route */
.evt-stops{list-style:none;margin:0 auto;padding:0;max-width:1000px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative}
.evt-stops::before{content:"";position:absolute;top:30px;inset-inline:12%;height:0;border-top:3px dashed var(--line-2)}
.evt-stop{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.evt-stop__pin{position:relative;width:60px;height:60px;margin-bottom:10px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--card);border:3px solid var(--line-2)}
.evt-stop__pin svg{width:26px;height:26px}
.evt-stop.is-done .evt-stop__pin{background:var(--gold);border-color:var(--gold);color:#0A1430}
.evt-stop.is-done .evt-stop__pin svg{stroke-width:3}
.evt-stop.is-next .evt-stop__pin svg{fill:var(--muted);transform:rotate(-90deg)}
.evt-stop b{font-size:17px;font-weight:900;color:var(--ink-text)}
.evt-stop small{color:var(--muted);font-weight:700}
.evt-stop em{margin-top:6px;padding:2px 10px;border-radius:999px;font-style:normal;font-size:12px;font-weight:900;background:var(--paper);color:var(--muted)}
.evt-stop.is-done em{background:rgba(10,135,84,.12);color:var(--ok)}

/* Registration */
.evt .sv-sec.evt-reg{background:linear-gradient(160deg,#16244F,#0A1430);color:var(--on-ink)}
.evt-reg__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.evt-reg h2{margin:0 0 12px;font-size:34px;font-weight:900;color:#fff;line-height:1.5}
.evt-reg p{color:var(--on-ink-2);line-height:2}
.evt-reg .sv-kicker{background:rgba(243,188,0,.2);color:var(--gold)}
.evt-tickets{display:grid;gap:16px}
.evt-ticket{position:relative;display:flex;align-items:center;gap:16px;padding:22px 24px;border-radius:20px;background:rgba(255,255,255,.06);border:1px dashed rgba(255,255,255,.25);overflow:hidden}
.evt-ticket__kind{flex:none;padding:6px 14px;border-radius:12px;background:var(--gold);color:#0A1430;font-weight:900}
.evt-ticket b{flex:1;color:#fff;font-weight:800}
.evt-ticket__stamp{flex:none;padding:4px 12px;border:2px solid #FF8A8A;border-radius:10px;color:#FF8A8A;font-weight:900;font-size:13px;transform:rotate(-8deg)}

@media (max-width:960px){
	.evt-people{grid-template-columns:repeat(2,minmax(0,1fr))}
	.evt-reg__grid{grid-template-columns:minmax(0,1fr)}
	.evt-pass{margin-top:28px;transform:none}
}
@media (max-width:640px){
	.evt-chips li{font-size:13px;padding:7px 12px}
	.evt-slot{padding-inline-start:48px}
	.evt-flight::before,.evt-flight::after{inset-inline-start:19px}
	.evt-flight__plane{inset-inline-start:7px}
	.evt-slot__n{inset-inline-start:4px}
	.evt-slot__t b{font-size:15px}
	.evt-slot__people{grid-template-columns:minmax(0,1fr)}
	.evt-people{gap:10px}
	.evt-person{padding:16px 10px}
	.evt-stops{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
	.evt-stops::before{display:none}
	.evt-reg h2{font-size:26px}
	.evt-ticket{flex-wrap:wrap;padding:18px}
	.evt-pass__body{padding:18px}
}
@media (prefers-reduced-motion:reduce){.has-motion .evt-pass__line svg{animation:none}}
