/* New Horizon: near-black, white, ember and the supplied spectrum as a restrained accent. */
:root{--maroon:#151515;--ink:#171717;--muted:#606060;--line:#dedede;--red:#e32022}
.brand{width:225px;flex-shrink:0}.brand span{font-size:12px;letter-spacing:.09em;font-weight:700}.nav{gap:22px}.links{gap:19px}.links a{font-size:14px}
.hero{background:radial-gradient(ellipse at 0% 100%,#6d1b0a 0,transparent 48%),#090909}.hero-copy{padding-top:76px}.hero-copy .intro{color:#e0e0e0}.hero-visual:after{background:linear-gradient(90deg,#090909,transparent 35%,#0002)}.hero-visual{margin-right:calc((1320px - 100vw)/2)}
.hero-number{font-weight:500;opacity:.9}.hero-copy h1 b{letter-spacing:.06em}.horizon-rule{height:4px;background:linear-gradient(90deg,#5e1d2d,#e32022,#ff9700,#ffe6b0,#e32022);background-size:200% 100%;animation:horizonFlow 12s linear infinite}
.hero:before{content:'';position:absolute;width:65%;height:2px;top:20%;left:-30%;background:linear-gradient(90deg,transparent,#e32022,transparent);transform:rotate(-35deg);opacity:.5;animation:horizonDrift 14s ease-in-out infinite;pointer-events:none}
@keyframes horizonFlow{to{background-position:200% 0}}@keyframes horizonDrift{50%{transform:translate(20%,180px) rotate(-35deg);opacity:.15}}
.datebar .theme b{font-size:1.2rem;color:#171717;letter-spacing:.03em}.section.soft{background:#f4f4f4}.pagehero{background:linear-gradient(120deg,#090909,#26211e);color:white}.pagehero p{color:#ddd}.closing{background:#111}.btn{background:#171717;border-color:#171717}.hero .btn.white{color:#111}.hero .btn.secondary{color:white}.big-line em{color:#e32022}.proof strong{color:#171717}.organiser{margin-top:44px;padding:24px 0;border-top:1px solid #555;display:flex;gap:22px;align-items:center}.organiser span{font-size:13px;letter-spacing:.1em}.organiser img{width:160px!important;height:auto}.exibex-profile{width:210px!important;aspect-ratio:auto!important;margin-bottom:30px}
.sponsor-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sponsor-wall>div{min-height:120px;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:22px;background:white}.sponsor-wall strong{font-size:1.4rem}.sponsor-wall span{font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-top:12px;color:#666}.sponsor-wall img{width:140px;height:55px;object-fit:contain}
.charts{display:grid;grid-template-columns:1fr 1fr;gap:50px}.chart h3{font-size:1.6rem;margin-bottom:30px}.chart-layout{display:flex;gap:28px;align-items:center}.pie{width:210px;aspect-ratio:1;border-radius:50%;flex-shrink:0}.chart-key{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:0;border-bottom:1px solid #ddd;padding:9px 0;text-align:left;font-size:14px}.chart-key i{width:12px;height:12px;background:var(--key);flex-shrink:0}.chart-key b{margin-left:auto;padding-left:10px}.chart-key[aria-pressed=true]{font-weight:700}.chart-detail{font-size:14px;line-height:1.5;margin-top:22px}
dialog{width:min(780px,calc(100% - 30px));max-height:90vh;overflow:auto;border:0;padding:42px;color:#171717;background:white}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font-size:2.4rem;margin-bottom:20px}dialog>p{margin-bottom:25px}.dialog-close{position:sticky;top:0;float:right;font-size:30px;line-height:1;background:white;border:1px solid #ddd;width:40px;height:40px}dialog .eyebrow{padding-right:45px}dialog .form{margin-top:20px}.form label{font-size:15px}.form input[type=checkbox]{width:auto;margin-right:8px}.footer .copyright{font-size:14px}
@media(max-width:1100px){.nav .links{display:none}.menu{display:block}.nav .links.open{display:flex;position:absolute;left:0;right:0;top:100%;background:white;padding:25px;flex-direction:column;align-items:flex-start}.charts{grid-template-columns:1fr}.hero-visual{margin-right:-48px}}
@media(max-width:700px){.brand{width:190px}.brand span{font-size:11px}.nav>.btn{display:none}.hero-visual{margin:0 -20px}.hero-visual:after{background:linear-gradient(180deg,#090909,transparent 35%,#0002)}.hero-copy{padding-top:35px}.sponsor-wall{grid-template-columns:1fr 1fr}.sponsor-wall strong{font-size:1.1rem}.chart-layout{flex-direction:column;align-items:stretch}.pie{width:200px;align-self:center}dialog{padding:25px}dialog h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
