.refraction{--gutter:clamp(22px, 4vw, 72px);min-height:100vh;position:relative;overflow:hidden}.refraction-inner{max-width:1180px;padding:clamp(48px, 7vw, 96px) var(--gutter) clamp(80px, 10vw, 140px);margin:0 auto}.refraction-rule{position:relative}.refraction-rule:after{content:"";pointer-events:none;border-top:1px solid #e6eddc1f;width:100vw;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.refraction-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--accent,#cf0);margin:0 0 22px;font-size:12px}.refraction h1{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.065em;margin:0 0 28px;font-size:clamp(58px,9vw,132px);font-weight:400;line-height:.86}.refraction-lede{color:#979e93;max-width:560px;margin:0 0 44px;font-size:clamp(15px,1.25vw,19px);line-height:1.65}.beam{grid-template-columns:minmax(60px,1fr) 4fr;align-items:stretch;gap:0;height:132px;margin-bottom:12px;display:grid}.beam-in{position:relative}.beam-in:after{content:"";background:linear-gradient(90deg,#0000,#f4f7ef);height:2px;position:absolute;top:50%;left:0;right:0}.beam-out{grid-template-rows:repeat(4,1fr);gap:6px;display:grid}.beam-band{transform-origin:0;opacity:.45;background:#16180f;border-radius:2px;transition:background .42s,opacity .42s}.beam-band.lit{opacity:1}.beam-band.lit:first-child{background:linear-gradient(90deg,#f4f7ef,#cf0)}.beam-band.lit:nth-child(2){background:linear-gradient(90deg,#cf0,#7fdbca)}.beam-band.lit:nth-child(3){background:linear-gradient(90deg,#7fdbca,#7aa2f7)}.beam-band.lit:nth-child(4){background:linear-gradient(90deg,#7aa2f7,#c792ea)}.beam-caption{letter-spacing:.1em;text-transform:uppercase;color:#687064;justify-content:space-between;margin-bottom:clamp(56px,7vw,96px);padding-bottom:28px;font-size:12px;display:flex}.prize-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:clamp(20px,3vw,48px);margin-bottom:clamp(56px,7vw,96px);padding-bottom:40px;display:grid}.prize{flex-direction:column;gap:6px;display:flex}.prize .place{letter-spacing:.14em;text-transform:uppercase;color:#687064;font-size:12px}.prize .amount{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.05em;font-size:clamp(36px,4.4vw,62px);line-height:1}.prize.open .amount{color:#f4f7ef}.prize.taken .amount{color:#687064}.prize .holder{color:#687064;font-size:13px}.prize .holder a{color:var(--accent,#cf0)}.refraction h2{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.04em;margin:0 0 32px;font-size:clamp(28px,3vw,44px);font-weight:400;line-height:1}.stage{border-top:1px solid #e6eddc1f;grid-template-columns:56px 1fr;align-items:start;gap:clamp(16px,2vw,32px);padding:32px 0;display:grid}.stage:last-of-type{border-bottom:1px solid #e6eddc1f}.stage-index{font-family:var(--font-display), Arial, sans-serif;color:#2f3529;letter-spacing:-.04em;font-size:28px;line-height:1}.stage.solved .stage-index{color:var(--accent,#cf0)}.stage h3{letter-spacing:-.01em;margin:0 0 10px;font-size:17px;font-weight:400}.stage p{color:#979e93;max-width:640px;margin:0 0 18px;font-size:15px;line-height:1.6}.stage form{flex-wrap:wrap;gap:10px;max-width:520px;display:flex}.stage input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;border-bottom:1px solid #e6eddc33;flex:15rem;padding:10px 2px;font-size:16px}.stage input::placeholder{color:#4a5145}.stage input:focus{border-bottom-color:var(--accent,#cf0);outline:none}.stage-submit{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #e6eddc33;border-radius:999px;padding:8px 20px;font-size:14px;transition:border-color .16s,color .16s}.stage-submit:hover{border-color:var(--accent,#cf0);color:var(--accent,#cf0)}.stage-solved{color:var(--accent,#cf0);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px}.stage-wrong{color:#ff8787;margin:12px 0 0;font-size:14px}.stage-hint{color:#4a5145;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:14px 0 0;font-size:13px;display:block}.stage-hint:hover{color:#979e93}.claim{border:1px solid var(--accent,#cf0);background:linear-gradient(135deg,#ccff000f,#0000 60%);border-radius:4px;margin:clamp(56px,7vw,88px) 0 0;padding:clamp(32px,4vw,52px)}.claim p{color:#979e93;max-width:620px;margin:0 0 16px;font-size:15px;line-height:1.65}.claim .solution{color:var(--accent,#cf0);word-break:break-all;margin:0 0 24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(15px,1.8vw,22px)}.refraction-foot{color:#687064;border-top:1px solid #e6eddc1f;flex-wrap:wrap;justify-content:space-between;gap:24px;margin-top:clamp(56px,7vw,88px);padding-top:32px;font-size:13px;display:flex}.refraction-foot a{color:#979e93}.refraction-foot a:hover{color:var(--accent,#cf0)}@media (max-width:720px){.beam{grid-template-columns:36px 4fr;height:96px}.stage{grid-template-columns:36px 1fr}.stage-index{font-size:20px}}.status-row{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:28px;display:flex}.status-pill{letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:999px;align-items:center;gap:9px;padding:7px 16px 7px 13px;font-size:12px;display:inline-flex}.status-pill.open{color:var(--accent,#cf0);background:#ccff000f;border-color:#cf06}.status-pill.over{color:#687064;border-color:#e6eddc24}.status-pill i{background:currentColor;border-radius:50%;width:7px;height:7px}.status-pill.open i{animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.status-fact{letter-spacing:.1em;text-transform:uppercase;color:#687064;font-size:12px}.refraction h1 .unit{letter-spacing:.04em;color:#687064;vertical-align:baseline;font-size:.34em}.podium{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:8px 0 44px;display:grid}.slot{background:linear-gradient(160deg,#ccff000d,#0000 70%);border:1px solid #e6eddc24;border-radius:6px;flex-direction:column;gap:8px;padding:22px 22px 20px;display:flex}.slot.taken{background:0 0;border-color:#e6eddc14}.slot-place{letter-spacing:.14em;text-transform:uppercase;color:#687064;font-size:12px}.slot-amount{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.05em;color:#f4f7ef;font-size:clamp(30px,3.4vw,46px);line-height:1}.slot.taken .slot-amount{color:#4a5145}.slot-amount em{letter-spacing:.04em;color:#687064;font-size:.4em;font-style:normal}.slot-holder{color:#687064;font-size:13px}.slot-holder a{color:#979e93}.claim-flag{letter-spacing:.14em;text-transform:uppercase;color:var(--accent,#cf0);font-size:12px;margin:0 0 14px!important}
