:root{--k-green:#00dd94;--k-light:#f5f7f4;--k-deep:#014737;--k-black:#050d0a;--k-line:rgba(0,221,148,.28)}
.odds-page{background:var(--k-black);color:var(--k-light)}
.odds-topline{background:var(--k-green)}
.odds-header{background:linear-gradient(180deg,rgba(5,13,10,.96),rgba(5,13,10,.74));border-color:var(--k-line);backdrop-filter:blur(12px)}
.odds-header .brand strong{color:var(--k-green)}.odds-header nav a:not(.nav-cta)::after{background:var(--k-green)}.odds-header .odds-cta{background:var(--k-green);border-color:var(--k-green);color:var(--k-black)}
.odds-hero{position:relative;min-height:100svh;display:grid;grid-template-columns:minmax(0,.82fr) minmax(430px,1fr);align-items:end;gap:clamp(2rem,5vw,6rem);padding:clamp(10rem,18vh,13rem) var(--pad) clamp(4rem,8vh,6rem);overflow:hidden;background:radial-gradient(circle at 22% 74%,rgba(0,221,148,.12),transparent 34%),var(--k-black)}
.odds-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,transparent 0 57%,rgba(0,221,148,.15) 57.2% 57.55%,transparent 57.75%)}
.odds-hero-copy{position:relative;z-index:2;max-width:800px}.odds-page .eyebrow{color:#b7c8c1}.odds-pulse{width:10px;height:10px;border-radius:2px;background:var(--k-green);box-shadow:0 0 0 7px rgba(0,221,148,.12);animation:kPulse 1.8s infinite}@keyframes kPulse{50%{box-shadow:0 0 0 13px rgba(0,221,148,0)}}
.odds-page h1{font-size:clamp(4rem,8.5vw,9.3rem)}.odds-page h1 span{color:var(--k-green);text-shadow:0 0 58px rgba(0,221,148,.17)}.odds-page .hero-deck{color:#dbe7e2}.odds-button{background:var(--k-green);border-color:var(--k-green);color:var(--k-black)}.odds-button:hover,.odds-button:focus-visible{background:#fff;border-color:#fff;color:#050d0a}.independent-note{margin:1.2rem 0 0;color:#82958d;font-size:.63rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.odds-hero-board{position:relative;z-index:1;overflow:hidden;border:1px solid rgba(0,221,148,.42);background:#0a1310;box-shadow:0 36px 100px rgba(0,0,0,.55);transform:perspective(1300px) rotateY(-4deg)}.odds-hero-board img{width:100%;height:auto;filter:saturate(.72) contrast(1.05)}.odds-hero-board::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,13,10,.66),transparent 42%);pointer-events:none}.odds-hero-board>div{position:absolute;z-index:1;left:1rem;right:1rem;bottom:1rem;display:flex;justify-content:space-between;align-items:end;gap:1rem}.odds-hero-board span{color:var(--k-green);font-size:.58rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.odds-hero-board strong{font-family:var(--display);font-size:clamp(1.1rem,2vw,2rem);text-align:right;text-transform:uppercase}
.odds-proof{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--k-line);background:#08110e}.odds-proof div{min-height:150px;padding:1.5rem var(--pad);border-right:1px solid var(--k-line)}.odds-proof div:last-child{border:0}.odds-proof strong{display:block;color:var(--k-green);font-family:var(--display);font-size:clamp(2.3rem,4vw,4rem);line-height:1;text-transform:uppercase}.odds-proof span{display:block;margin-top:.6rem;color:#81928b;font-size:.62rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.wall-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);min-height:760px;background:var(--k-light);color:#0b1511}.wall-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(4rem,8vw,8rem) var(--pad)}.odds-page .section-kicker{color:#008f60}.wall-copy h2,.read-board h2,.market-movement h2,.odds-experience h2,.independence h2,.odds-reserve h2,.odds-related h2{margin:0;font-family:var(--display);font-size:clamp(3rem,7vw,7.2rem);line-height:.86;letter-spacing:-.065em;text-transform:uppercase}.wall-copy h2 span,.odds-experience h2 span{color:#00a870}.wall-lede{margin:1.7rem 0 1rem;font-size:clamp(1.1rem,1.6vw,1.35rem);font-weight:750}.wall-copy>p:not(.section-kicker):not(.wall-lede){color:#4c5954;font-weight:600}.odds-link{border-color:var(--k-green);margin-top:1rem}.wall-photo{position:relative;margin:0;overflow:hidden;min-height:600px}.wall-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.25) saturate(.8) contrast(1.15)}.wall-photo figcaption{position:absolute;left:1rem;bottom:1rem;padding:.55rem .7rem;background:#050d0a;color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.read-board{padding:clamp(5rem,9vw,9rem) var(--pad);background:#07100d}.read-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr);align-items:end;gap:2rem;margin-bottom:3rem}.read-heading .section-kicker{grid-column:1/-1;margin-bottom:-1rem}.read-heading>p:last-child{margin:0;color:#9cada6;font-weight:600}.probability-demo{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--k-line);border-left:1px solid var(--k-line)}.probability-demo article{min-height:400px;padding:1.5rem;border-right:1px solid var(--k-line);border-bottom:1px solid var(--k-line)}.probability-demo article.mid{background:var(--k-green);color:var(--k-black)}.probability-demo span{display:block;color:#7e9189;font-size:.58rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.probability-demo .mid span{color:#075d42}.probability-demo strong{display:block;margin:3rem 0 .7rem;color:var(--k-green);font-family:var(--display);font-size:clamp(4.5rem,8vw,8rem);line-height:.8}.probability-demo .mid strong{color:var(--k-black)}.probability-demo b{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.probability-demo p{margin:2rem 0 0;color:#99aaa3;font-weight:570}.probability-demo .mid p{color:#063d2d}.price-note{display:grid;grid-template-columns:140px 1fr;gap:1rem;margin-top:1.3rem;padding:1.1rem 1.2rem;background:#10211a}.price-note strong{color:var(--k-green);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}.price-note p{margin:0;color:#93a49d;font-size:.78rem}
.market-movement{display:grid;grid-template-columns:1fr .85fr;min-height:700px;background:var(--k-green);color:var(--k-black)}.movement-visual{display:flex;align-items:end;gap:clamp(.45rem,1.4vw,1.2rem);padding:clamp(3rem,7vw,7rem);background:linear-gradient(180deg,rgba(255,255,255,.15),transparent)}.movement-visual span{position:relative;flex:1;height:var(--h);min-height:90px;background:#050d0a}.movement-visual i{position:absolute;top:-2rem;left:50%;transform:translateX(-50%);font-family:var(--display);font-style:normal}.movement-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(4rem,7vw,7rem)}.movement-copy .section-kicker{color:#075d42}.movement-copy p:not(.section-kicker){margin:1.6rem 0;color:#064831;font-weight:650}.movement-copy .odds-link{border-color:#050d0a}
.odds-experience{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:#050d0a}.experience-photo{overflow:hidden;min-height:600px}.experience-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.9) contrast(1.22)}.odds-experience .experience-copy{padding:clamp(4rem,7vw,7rem)}.odds-experience .experience-copy>p:not(.section-kicker){margin:1.5rem 0;color:#aab9b3;font-weight:600}.odds-experience ul{margin:0 0 2rem;padding:0;list-style:none;border-top:1px solid var(--k-line)}.odds-experience li{padding:.9rem 0;border-bottom:1px solid var(--k-line);color:#d9e4df;font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.independence{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr);gap:clamp(3rem,8vw,9rem);padding:clamp(5rem,9vw,9rem) var(--pad);background:#f0f2ef;color:#0a1511}.independence .section-kicker{grid-column:1/-1;margin-bottom:-2rem}.independence>div{align-self:end}.independence>div p{color:#535e5a;font-weight:600}.independence>div p:last-child{margin-bottom:0}
.odds-reserve{padding:clamp(5rem,10vw,10rem) var(--pad);background:linear-gradient(105deg,rgba(1,71,55,.95),rgba(5,13,10,.94)),url('/assets/election-live-odds-board-2026.png') center/cover}.odds-reserve .section-kicker{color:var(--k-green)}.odds-reserve p:not(.section-kicker){max-width:680px;margin:1.5rem 0 2rem;color:#d2dfda;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:600}.odds-button.light{background:#fff;border-color:#fff}.odds-button.light:hover{background:var(--k-green);border-color:var(--k-green)}
.odds-related{padding:clamp(4.5rem,8vw,8rem) var(--pad);background:#07100d}.odds-related h2{margin-bottom:2.2rem}.odds-related>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--k-line)}.odds-related a{padding:1.6rem 1.5rem;border-right:1px solid var(--k-line);border-bottom:1px solid var(--k-line)}.odds-related a:first-child{padding-left:0}.odds-related a:last-child{border-right:0}.odds-related span{display:block;color:#7d8f87;font-size:.58rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.odds-related strong{display:block;margin-top:.5rem;color:var(--k-green);font-family:var(--display);font-size:clamp(1.35rem,2.7vw,2.5rem);line-height:1;text-transform:uppercase}
.odds-faq{background:#050d0a}.odds-faq summary::after{color:var(--k-green)}.odds-page footer{border-color:var(--k-line)}.odds-page footer .brand strong{color:var(--k-green)}.odds-mobile{background:var(--k-green);color:var(--k-black)}
@media(max-width:1000px){.odds-hero{grid-template-columns:1fr}.odds-hero-board{width:min(100%,850px);transform:none}.wall-story{grid-template-columns:1fr}.wall-photo{height:62vw;min-height:450px}.read-heading{grid-template-columns:1fr}.market-movement{grid-template-columns:1fr}.movement-visual{min-height:500px}.odds-experience{grid-template-columns:1fr}.experience-photo{height:70vw}.independence{grid-template-columns:1fr}.independence .section-kicker{grid-column:auto;margin-bottom:0}}
@media(max-width:760px){.odds-header nav{background:#050d0a}.odds-hero{padding-top:10rem}.odds-page h1{font-size:clamp(3.8rem,18vw,6.5rem)}.odds-proof{grid-template-columns:1fr 1fr}.odds-proof div:nth-child(2){border-right:0}.probability-demo{grid-template-columns:1fr}.probability-demo article{min-height:280px}.probability-demo strong{margin-top:2rem}.price-note{grid-template-columns:1fr}.wall-photo{height:80vw;min-height:420px}.odds-related>div{grid-template-columns:1fr}.odds-related a,.odds-related a:first-child{padding-inline:0;border-right:0}}
@media(max-width:430px){.odds-page .hero-actions .button{width:100%}.odds-proof{grid-template-columns:1fr}.odds-proof div{border-right:0}.odds-hero-board>div{display:block}.odds-hero-board strong{display:block;margin-top:.3rem;text-align:left}.movement-visual{min-height:390px;padding-inline:1.2rem}}
@media(prefers-reduced-motion:reduce){.odds-pulse{animation:none}}
