/* News portal homepage — layered over the core theme. */
.portal-home{background:#090d0e}.portal-home+.site-footer{margin-top:0}.topbar{display:none}.brand-row{min-height:72px}.brand .custom-logo{max-height:54px}.main-nav{border-top:1px solid #24292a;border-bottom:1px solid #24292a}.main-nav a,.search-toggle{padding-top:12px;padding-bottom:12px;font-size:.78rem}.portal-hero{min-height:525px;background-color:#0b1513;background-image:radial-gradient(circle at 72% 28%,#244a3a 0,#122a23 23%,#090d0e 66%);background-position:center;background-size:cover;border-bottom:3px solid #d26520;position:relative;overflow:hidden}.portal-hero:after{content:"";position:absolute;inset:auto -5% -80px;height:120px;background:repeating-linear-gradient(-8deg,transparent 0 16px,#b74313 17px 20px,transparent 21px 30px);opacity:.3;transform:skewY(-2deg)}.portal-hero-inner{min-height:525px;display:flex;align-items:center;position:relative;z-index:1}.portal-hero-copy{max-width:570px}.portal-hero-copy h1{font:800 clamp(4rem,9vw,7.6rem)/.72 'Barlow Condensed',sans-serif;margin:0;color:#e1702d;transform:skew(-5deg);text-shadow:4px 4px 0 #121515}.portal-hero-copy h1 span{display:block;font-size:.55em;color:#f1eee4;letter-spacing:.04em}.portal-hero-copy strong{display:block;margin:34px 0 10px;font:700 1rem 'Barlow Condensed',sans-serif;letter-spacing:.12em}.portal-hero-copy p{color:#c3c7c4;max-width:500px}.hero-actions{display:flex;gap:10px;margin-top:24px}.button{background:#e96320;color:#fff;font-size:.78rem}.button:hover{background:#f48245;color:#fff}.button.ghost{background:transparent;border:1px solid #69706c}.portal-section{padding-block:42px}.portal-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #29302e;margin-bottom:18px}.portal-heading h2{font:800 1.65rem 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0;padding:0 0 9px;position:relative}.portal-heading h2:after{content:"";position:absolute;height:3px;width:48px;left:0;bottom:-2px;background:#e96320}.portal-heading>a{font-size:.75rem;color:#db7035}.latest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.latest-grid .story-card{background:#111718}.latest-grid .card-body{padding:14px}.latest-grid .card-body h3{font-size:1.1rem}.latest-grid .card-body p{display:none}.latest-grid .story-meta{font-size:.65rem}.latest-grid .eyebrow{color:#e96320}.topic-shortcuts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid #2c3331;background:#0d1213}.topic-shortcuts>a{min-height:105px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid #2c3331}.topic-shortcuts>a:last-child{border-right:0}.topic-shortcuts>a:hover{background:#151d1c;color:#f4f0e6}.shortcut-icon{color:#dc672c;font-size:1.55rem;line-height:1}.topic-shortcuts strong{font:700 1.05rem 'Barlow Condensed',sans-serif;text-transform:uppercase;margin-top:6px}.topic-shortcuts small{font-size:.58rem;color:#7f8885}.topic-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);gap:24px}.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.featured-grid .story-card{background:#111718}.featured-grid .card-body{padding:11px}.featured-grid .card-body h3{font-size:1rem}.featured-grid .card-body p,.featured-grid .story-meta{display:none}.trending{border-left:1px solid #3f2d24;padding-left:20px}.trending ol{list-style:none;padding:0;margin:0;counter-reset:none}.trending li{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;padding:9px 0;border-bottom:1px solid #232a28;font:700 .8rem/1.25 'Barlow Condensed',sans-serif}.trending li span{color:#e96320;font-size:1rem;text-align:center}.newsletter{position:relative;background:#151b1c;border-block:1px solid #383e3c;overflow:hidden}.newsletter:before,.newsletter:after{content:"";position:absolute;width:180px;height:100%;top:0;background:repeating-linear-gradient(-10deg,#dc4d12 0 4px,transparent 5px 11px);opacity:.75}.newsletter:before{left:-80px}.newsletter:after{right:-80px;transform:scaleX(-1)}.newsletter-inner{min-height:116px;display:flex;justify-content:space-between;align-items:center;gap:35px;position:relative;z-index:1}.newsletter h2{font:800 1.7rem 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0}.newsletter p{font-size:.72rem;color:#a4aaa7;margin:4px 0}.newsletter-form{display:flex;min-width:min(460px,45vw)}.newsletter-form input{flex:1;min-width:0;padding:13px;border:0;background:#f5f3ee;color:#111}.newsletter-form button{border:0;background:#d9571e;color:#fff;text-transform:uppercase;font-weight:800;padding:0 25px}.site-footer{padding-top:34px}.footer-grid{grid-template-columns:1.6fr 2fr auto;align-items:center}.footer-grid>div:first-child p{font-size:.7rem}.footer-grid nav ul{columns:3}.footer-grid nav a{font-size:.72rem;color:#a8ada7}.social-links{display:flex;gap:8px}.social-links a{width:30px;height:30px;border:1px solid #303635;display:grid;place-items:center}.copyright{text-align:center;margin-top:20px;padding-block:12px}
@media(max-width:950px){.latest-grid,.featured-grid{grid-template-columns:repeat(2,1fr)}.topic-shortcuts{grid-template-columns:repeat(3,1fr)}.topic-shortcuts>a:nth-child(3){border-right:0}.topic-shortcuts>a:nth-child(-n+3){border-bottom:1px solid #2c3331}.footer-grid{grid-template-columns:1fr 1fr}.social-links{grid-column:1/-1}}
@media(max-width:700px){.portal-hero,.portal-hero-inner{min-height:460px}.portal-hero-copy{padding-top:25px}.portal-hero-copy h1{font-size:4.5rem}.portal-hero-copy strong{margin-top:28px}.topic-layout{grid-template-columns:1fr}.trending{border-left:0;padding-left:0}.newsletter-inner{padding-block:28px;flex-direction:column;align-items:stretch}.newsletter-form{min-width:0;width:100%}.footer-grid{grid-template-columns:1fr}.social-links{grid-column:auto}}
@media(max-width:480px){.latest-grid,.featured-grid{grid-template-columns:1fr}.topic-shortcuts{grid-template-columns:repeat(2,1fr)}.topic-shortcuts>a{border-bottom:1px solid #2c3331}.topic-shortcuts>a:nth-child(odd){border-right:1px solid #2c3331}.topic-shortcuts>a:nth-child(even){border-right:0}.hero-actions{align-items:flex-start;flex-direction:column}.newsletter-form{flex-direction:column}.newsletter-form button{padding-block:12px}}

/* Image-only homepage banner. */
.portal-hero-image-only{display:block;background-image:var(--rr-hero-desktop);background-position:center;background-repeat:no-repeat;background-size:cover}
.portal-hero-image-only:after{display:none}
@media(max-width:700px){.portal-hero-image-only{min-height:clamp(420px,122vw,680px);background-image:var(--rr-hero-mobile,var(--rr-hero-desktop));background-position:center}}

/* Shared-results fan poll below the hero. */
.fan-poll{background:#111716;border-block:1px solid #303735;padding:34px 0}.fan-poll-inner{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,2fr);gap:38px;align-items:center}.poll-intro h2{font:800 clamp(1.8rem,3vw,2.7rem)/1 'Barlow Condensed',sans-serif;margin:.25em 0;text-transform:uppercase}.poll-intro p{color:#969e9a;font-size:.78rem}.poll-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.poll-option{position:relative;display:flex;min-height:58px;align-items:center;padding:10px 12px;background:#0b100f;border:1px solid #303735;cursor:pointer;overflow:hidden}.poll-option:hover,.poll-option:has(input:checked){border-color:#e16b2e}.poll-option input{accent-color:#e16b2e;margin-right:9px;position:relative;z-index:2}.poll-name{font:700 .9rem 'Barlow Condensed',sans-serif;position:relative;z-index:2}.poll-result{display:none;margin-left:auto;text-align:right;position:relative;z-index:2}.poll-percent{display:block;color:#f1b069;font-size:.85rem}.poll-votes{display:block;color:#8f9894;font-size:.58rem}.show-results .poll-result{display:block}.poll-bar{position:absolute;z-index:-1;top:-20px;bottom:-20px;right:-12px;width:var(--poll-percent);min-width:0;background:linear-gradient(90deg,transparent,rgba(218,91,34,.22))}.poll-controls{display:flex;align-items:center;gap:14px;margin-top:12px}.poll-submit{padding:9px 15px}.poll-message{margin:0;color:#aeb5b1;font-size:.72rem}
@media(max-width:800px){.fan-poll-inner{grid-template-columns:1fr;gap:18px}.poll-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.fan-poll{padding:26px 0}.poll-options{grid-template-columns:1fr}.poll-option{min-height:52px}}

/* Visual portrait-card poll experience. */
.fan-poll-visual{position:relative;padding:48px 0;background:radial-gradient(circle at 50% 0,#263028 0,#111716 42%,#080d0c 100%);overflow:hidden}.fan-poll-visual:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 80px,rgba(226,99,37,.035) 81px 82px);pointer-events:none}.fan-poll-visual .poll-intro{text-align:center;max-width:850px;margin:0 auto 27px}.poll-live{display:inline-flex;align-items:center;gap:7px;color:#ff9251;font:800 .72rem 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.14em}.poll-live i{width:7px;height:7px;border-radius:50%;background:#f05f20;box-shadow:0 0 0 0 rgba(240,95,32,.7);animation:poll-live-pulse 1.4s infinite}.fan-poll-visual .poll-intro h2{color:#fff2da;font-size:clamp(2.2rem,4vw,4rem);text-shadow:0 0 22px rgba(235,105,42,.22);animation:poll-headline-blink 2.2s ease-in-out infinite}.fan-poll-visual .poll-intro p{font-size:.85rem}.fan-poll-visual .poll-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.fan-poll-visual .poll-option{display:block;min-height:0;padding:0 0 13px;background:#0c1110;border:1px solid #35403b;text-align:center;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.fan-poll-visual .poll-option:hover{transform:translateY(-7px);border-color:#ef7132;box-shadow:0 12px 30px rgba(0,0,0,.45)}.fan-poll-visual .poll-option input{position:absolute;opacity:0;pointer-events:none}.poll-card-image{display:block;position:relative;aspect-ratio:4/5;margin-bottom:11px;background:linear-gradient(145deg,#263c32,#0b100f);overflow:hidden}.poll-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);transition:transform .35s ease,filter .35s ease}.poll-option:hover .poll-card-image img,.poll-option.is-selected .poll-card-image img{transform:scale(1.06);filter:saturate(1.15)}.poll-placeholder{display:grid;height:100%;place-items:center;color:#d9864b;font:800 3rem 'Barlow Condensed',sans-serif;background:radial-gradient(circle at 50% 35%,#345646,#0a100e 70%)}.poll-card-image:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.88));pointer-events:none}.poll-choice-mark{position:absolute;z-index:3;top:9px;right:9px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#ed6829;color:white;transform:scale(0);transition:transform .2s}.poll-option.is-selected{border-color:#ff7c39;box-shadow:0 0 0 2px #df5f24,0 0 32px rgba(223,95,36,.3);transform:translateY(-5px)}.poll-option.is-selected .poll-choice-mark{transform:scale(1)}.poll-leader-badge{display:none;position:absolute;z-index:3;top:10px;left:8px;background:#e8a54d;color:#15100a;padding:3px 7px;font:800 .62rem 'Barlow Condensed',sans-serif;text-transform:uppercase}.show-results .poll-option.is-leading .poll-leader-badge{display:block}.poll-image-result{display:none;position:absolute;z-index:3;left:10px;right:10px;bottom:9px;text-align:left}.show-results .poll-image-result{display:flex;align-items:end;justify-content:space-between}.poll-image-result .poll-percent{font:800 1.55rem 'Barlow Condensed',sans-serif;color:#fff}.poll-image-result .poll-votes{color:#d6d8d5}.fan-poll-visual .poll-name{display:block;padding:0 5px;font-size:1.05rem}.poll-tap{display:block;color:#717a76;font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}.show-results .poll-tap{color:#dc7139}.fan-poll-visual .poll-controls{justify-content:center;flex-wrap:wrap;margin-top:22px}.fan-poll-visual .poll-submit{position:relative;padding:12px 24px;box-shadow:0 0 24px rgba(226,96,35,.25)}.poll-total{margin:0;color:#aeb5b1;font-size:.75rem}.poll-total strong{color:#f3ad65;font-size:1rem}.fan-poll-visual .poll-message{flex-basis:100%;text-align:center}.needs-choice .poll-options{animation:poll-shake .35s}.vote-spark{position:absolute;z-index:10;width:8px;height:14px;left:50%;bottom:28px;background:#f36b29;animation:vote-spark 1.15s var(--delay) ease-out forwards}.vote-spark:nth-of-type(3n){background:#f4c45e}.vote-spark:nth-of-type(4n){background:#fff}.vote-complete .poll-intro h2{color:#ffc56d}
@keyframes poll-headline-blink{0%,88%,100%{opacity:1;color:#fff2da}92%{opacity:.55;color:#ff7b38}96%{opacity:1;color:#ffc268}}@keyframes poll-live-pulse{70%{box-shadow:0 0 0 8px rgba(240,95,32,0)}}@keyframes poll-shake{25%{transform:translateX(-7px)}50%{transform:translateX(7px)}75%{transform:translateX(-4px)}}@keyframes vote-spark{to{transform:translate(var(--x),-150px) rotate(420deg);opacity:0}}
@media(max-width:1000px){.fan-poll-visual .poll-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.fan-poll-visual{padding:35px 0}.fan-poll-visual .poll-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.fan-poll-visual .poll-option{min-height:0}.fan-poll-visual .poll-name{font-size:.95rem}.poll-card-image{aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){.poll-live i,.fan-poll-visual .poll-intro h2,.needs-choice .poll-options,.vote-spark{animation:none}.fan-poll-visual .poll-option,.poll-card-image img{transition:none}}

/* Floating poll invitation and modal on interior pages. */
.floating-vote-button{position:fixed;z-index:900;right:22px;bottom:22px;display:flex;align-items:center;gap:9px;border:1px solid #ff9b58;border-radius:999px;padding:10px 17px 10px 10px;background:linear-gradient(135deg,#e95f20,#a93412);color:#fff;box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 0 0 rgba(236,100,36,.5);font:800 .82rem 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;animation:floating-vote-pulse 2.2s infinite}.floating-vote-button:hover{transform:translateY(-3px);color:#fff}.floating-vote-button.has-voted{background:linear-gradient(135deg,#9a6824,#483113);border-color:#e3b866}.floating-vote-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#0e1513;color:#ffae66;font-size:1rem}.rr-poll-dialog{width:min(1040px,calc(100% - 28px));max-height:min(92vh,900px);padding:0;border:1px solid #535c57;border-radius:5px;background:#0b100f;color:#f3eee5;box-shadow:0 30px 100px rgba(0,0,0,.8);overflow:auto}.rr-poll-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}.rr-poll-dialog .fan-poll-visual{padding:38px 28px}.rr-poll-dialog .poll-dialog-inner{max-width:940px;margin:auto}.rr-poll-dialog .poll-intro{margin-bottom:20px}.rr-poll-dialog .poll-intro h2{font-size:clamp(2rem,4vw,3.35rem)}.rr-poll-dialog .poll-options{grid-template-columns:repeat(3,minmax(0,1fr));max-width:800px;margin:auto}.rr-poll-dialog .poll-card-image{aspect-ratio:4/3}.poll-dialog-close{position:sticky;z-index:20;float:right;top:10px;margin:10px 10px -50px 0;width:38px;height:38px;border:1px solid #59615d;border-radius:50%;background:rgba(8,12,11,.9);color:white;font-size:1.6rem;line-height:1;cursor:pointer}.poll-dialog-close:hover{background:#e15e24}.rr-poll-dialog[open]{animation:poll-dialog-in .25s ease-out}
@keyframes floating-vote-pulse{0%,100%{box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 0 0 rgba(236,100,36,.45)}50%{box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 0 12px rgba(236,100,36,0)}}@keyframes poll-dialog-in{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.floating-vote-button{right:12px;bottom:12px;padding:8px 13px 8px 8px}.floating-vote-icon{width:27px;height:27px}.rr-poll-dialog{width:calc(100% - 16px);max-height:94vh}.rr-poll-dialog .fan-poll-visual{padding:32px 12px 25px}.rr-poll-dialog .poll-options{grid-template-columns:repeat(2,minmax(0,1fr))}.rr-poll-dialog .poll-card-image{aspect-ratio:4/5}.poll-dialog-close{top:7px;margin:7px 7px -46px 0}}
@media(prefers-reduced-motion:reduce){.floating-vote-button,.rr-poll-dialog[open]{animation:none}}
.poll-highlight .poll-options{animation:poll-highlight-ring 1.1s ease}@keyframes poll-highlight-ring{0%,100%{filter:none}45%{filter:drop-shadow(0 0 15px rgba(242,105,40,.8))}}
