/*
Theme Name: PNGRFL Pro
Theme URI: https://pngrfl.local
Author: PNGRFL
Description: Elementor-ready rugby league theme for Papua New Guinea RFL with NRL-style news, match centre, clubs, players, sponsors and MySideline embeds.
Version: 50.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: pngrfl-pro
*/

:root {
    --pngrfl-yellow: #ffc928;
    --pngrfl-yellow-dark: #e3b321;
    --pngrfl-red: #c8102e;
    --pngrfl-red-dark: #9e0d24;
    --pngrfl-black: #111111;
    --pngrfl-white: #ffffff;
    --pngrfl-grey: #f5f5f5;
    --pngrfl-gold: #f4bf21;
}
/*:root{--black:#050505;--charcoal:#111;--red:#c81e3a;--gold:#ffc928;--white:#fff;--muted:#f4f4f4;--text:#151515;--green:#104b28;--border:#e9e9e9}*{box-sizing:border-box}*/body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1180px,92%);margin:0 auto}.topbar{background:#ffc928;color:#ffc928;font-size:13px}.topbar .container{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.site-header{background:#111;color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 10px 30px rgba(0,0,0,.22)}.nav-wrap{display:flex;align-items:center;gap:24px;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.5px}.brand img{width:58px;height:58px;object-fit:contain}.brand span{font-size:24px}.main-nav{margin-left:auto;display:flex;gap:4px;align-items:center}.main-nav a{padding:12px 14px;font-weight:800;text-transform:uppercase;font-size:13px;border-radius:6px}.main-nav a:hover{background:var(--red)}.header-cta{background:var(--gold);color:#050505!important;padding:12px 16px!important;border-radius:4px}.hero{background:linear-gradient(100deg,rgba(0,0,0,.9),rgba(0,0,0,.54)),url('assets/images/pngrfl-logo.jpg') center/contain no-repeat,#151515;color:#fff;padding:74px 0 36px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-140px;top:-130px;width:420px;height:420px;background:var(--red);transform:rotate(25deg);opacity:.75}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:end}.kicker{display:inline-flex;background:var(--gold);color:#000;font-weight:900;padding:6px 10px;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.hero h1{font-size:clamp(42px,7vw,84px);line-height:.92;margin:16px 0 16px;text-transform:uppercase;letter-spacing:-.05em}.hero p{font-size:19px;max-width:630px;color:#e8e8e8}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;padding:14px 18px;border-radius:4px;font-weight:900;text-transform:uppercase;font-size:13px}.btn.gold{background:var(--gold);color:#000}.btn.dark{background:#111;color:#fff}.match-card{background:#fff;color:#111;border-radius:10px;overflow:hidden;box-shadow:0 20px 70px rgba(0,0,0,.35)}.match-card header{background:var(--red);color:#fff;padding:14px 18px;font-weight:900;text-transform:uppercase}.match-body{padding:20px}.teams{display:flex;justify-content:space-between;align-items:center;font-weight:900;font-size:22px}.vs{background:#111;color:#fff;border-radius:50%;padding:9px;font-size:12px}.match-meta{border-top:1px solid #eee;margin-top:18px;padding-top:16px;color:#555}.strip{background:var(--gold);color:#111}.strip .container{display:flex;gap:28px;overflow:auto;padding:14px 0;font-weight:900;text-transform:uppercase}.section{padding:58px 0}.section.dark{background:#0d0d0d;color:#fff}.section.gray{background:#f7f7f7}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-title h2{font-size:38px;line-height:1;margin:0;text-transform:uppercase;letter-spacing:-.035em}.section-title p{max-width:600px;color:#666}.dark .section-title p{color:#cfcfcf}.news-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}.card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.06)}.card.dark-card{background:#161616;border-color:#242424;color:#fff}.card-img{height:190px;background:linear-gradient(135deg,#202020,#c81e3a);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;text-transform:uppercase}.card.feature .card-img{height:310px}.card-content{padding:18px}.meta{color:var(--red);font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.card h3{font-size:22px;line-height:1.05;margin:8px 0 8px}.feature h3{font-size:34px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.quick-tile{background:#111;color:#fff;border-radius:10px;padding:22px;min-height:145px;display:flex;flex-direction:column;justify-content:space-between;border-bottom:5px solid var(--gold)}.quick-tile b{font-size:22px;text-transform:uppercase}.mysideline-box{background:#fff;border-radius:12px;border:1px solid #ddd;overflow:hidden}.mysideline-box header{background:#111;color:#fff;padding:14px 18px;font-weight:900;text-transform:uppercase}.mysideline-box iframe{width:100%;height:760px;border:0}.club-grid,.player-grid,.sponsor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.club-card,.player-card,.sponsor-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:18px;text-align:center}.club-logo,.player-photo{height:105px;width:105px;border-radius:50%;background:#f0f0f0;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;overflow:hidden}.sponsor-card img{max-height:70px;object-fit:contain}.footer{background:#050505;color:#fff;padding:46px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:26px}.footer a{display:block;color:#cfcfcf;margin:8px 0}.copyright{border-top:1px solid #2a2a2a;margin-top:26px;padding-top:18px;color:#999;font-size:13px}.page-hero{background:#111;color:#fff;padding:52px 0;border-bottom:8px solid var(--gold)}.page-hero h1{font-size:52px;margin:0;text-transform:uppercase}.content-wrap{padding:48px 0}.article{max-width:850px}.article h1{font-size:48px}.badge{background:var(--red);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:900;text-transform:uppercase}@media(max-width:900px){.hero-grid,.news-grid,.footer-grid{grid-template-columns:1fr}.quick-grid,.club-grid,.player-grid,.sponsor-grid{grid-template-columns:repeat(2,1fr)}.main-nav{display:none}.brand span{font-size:19px}.hero h1{font-size:48px}}@media(max-width:560px){.quick-grid,.club-grid,.player-grid,.sponsor-grid{grid-template-columns:1fr}.section-title{display:block}.topbar .container{display:block}.teams{font-size:18px}}

/* PNGRFL v2.1 left-sidebar / match-centre home layout */
:root{--pn-maroon:#5b0034;--pn-maroon-dark:#3a0025;--pn-pink:#8d0050;--pn-pink2:#a40052;--pn-panel:#65003b;--pn-white:#fff;--pn-muted:rgba(255,255,255,.72)}
body{background:var(--pn-maroon-dark);color:#fff;overflow-x:hidden}.container{width:min(1180px,92%)}.pn-side-nav{position:fixed;inset:0 auto 0 0;width:176px;background:linear-gradient(180deg,#99004f 0%,#850044 72%,#6e003a 100%);z-index:1000;color:#fff;display:flex;flex-direction:column;box-shadow:14px 0 35px rgba(0,0,0,.22)}.side-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:132px;padding:22px}.side-logo img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.25));border-radius:8px}.side-logo span{font-size:13px;font-weight:900;letter-spacing:.18em}.side-menu{display:flex;flex-direction:column;padding:10px 26px;gap:2px}.side-menu a,.side-menu li a{display:block;color:#fff;text-transform:uppercase;letter-spacing:.28em;font-size:12px;font-weight:900;padding:12px 0}.side-menu ul{list-style:none;margin:0;padding:0}.side-menu a:hover,.side-more a:hover{opacity:.75}.side-more{padding:14px 26px;display:flex;flex-direction:column;gap:16px}.side-more a{color:#fff;font-size:15px}.side-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.12)}.side-bottom form{display:flex;align-items:center;padding:13px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.side-bottom label{display:none}.side-bottom input[type=search]{width:100%;background:transparent;border:0;color:#fff;font-weight:700;outline:0}.side-bottom input[type=submit]{display:none}.login-link{display:block;padding:16px 26px;font-weight:800;color:#fff}.site-shell{margin-left:176px;min-height:100vh;background:radial-gradient(circle at 35% 25%,rgba(151,0,80,.8),transparent 36%),linear-gradient(115deg,#72003f 0%,#4b002d 55%,#420026 100%)}.score-strip{position:sticky;top:0;z-index:900;background:#65003b;height:104px;border-bottom:1px solid rgba(255,255,255,.09);overflow:hidden}.score-scroll{display:flex;gap:22px;align-items:stretch;height:100%;overflow-x:auto;padding:10px 28px}.score-card{min-width:137px;color:#fff;text-align:left;display:flex;flex-direction:column;gap:3px}.score-card small{color:rgba(255,255,255,.74);font-size:12px}.score-card b{font-size:13px}.score-card span{font-size:13px;color:#f8d8ea}.score-card em{margin-top:auto;background:#85004a;border-radius:4px;text-align:center;padding:8px 10px;font-style:normal;font-size:11px}.site-main{min-height:70vh}.topbar,.site-header{display:none!important}.home-stage{display:grid;grid-template-columns:minmax(0,1fr) 430px;min-height:560px}.home-hero-card{min-height:560px;display:flex;align-items:end;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(42,0,24,.15),rgba(91,0,52,.92)),linear-gradient(180deg,rgba(80,0,46,.05),rgba(62,0,37,.98)),url('assets/images/pngrfl-logo.jpg') center/43% no-repeat,linear-gradient(135deg,#cfcfcf,#2b2b2b)}.home-hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(61,0,35,.1),rgba(91,0,52,.86));mix-blend-mode:multiply}.hero-copy{position:relative;z-index:2;max-width:760px;padding:0 60px 72px}.tag,.rail-item span{display:inline-flex;background:rgba(255,255,255,.64);color:#390022;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.hero-copy h1{font-size:clamp(38px,4.5vw,66px);line-height:1.02;margin:14px 0 14px;letter-spacing:-.045em;color:#fff}.hero-copy p{font-size:18px;line-height:1.45;color:rgba(255,255,255,.88);max-width:720px}.hero-copy a{font-weight:900;color:#fff}.home-news-rail{padding:24px 32px;background:rgba(70,0,41,.72)}.rail-item{padding:0 0 22px;margin:0 0 22px}.rail-item a{display:grid;grid-template-columns:1fr 136px;gap:18px;color:#fff}.rail-item h3{font-size:17px;line-height:1.1;margin:10px 0 26px}.rail-item small{color:rgba(255,255,255,.65)}.rail-thumb{height:112px;background:linear-gradient(135deg,#8d0050,#222);border-radius:8px;overflow:hidden}.rail-thumb img{width:100%;height:100%;object-fit:cover}.video-row-section{padding:24px 32px 42px}.video-row-section h2{font-size:18px;margin:0 0 16px}.video-row{display:grid;grid-template-columns:repeat(6,minmax(210px,1fr));gap:14px;overflow-x:auto}.video-card{position:relative;height:152px;border-radius:7px;overflow:hidden;background:linear-gradient(135deg,#62738a,#750041);display:flex;align-items:end;padding:14px;color:#fff}.video-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(62,0,37,.85))}.video-card b,.play,.duration{position:relative;z-index:2}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;color:#750041;border-radius:50%;width:42px;height:42px;display:grid;place-items:center}.duration{position:absolute;right:8px;top:8px;background:rgba(91,0,52,.75);border-radius:5px;padding:3px 7px;font-size:12px}.magenta-section{padding:54px 32px;background:#50002f}.magenta-section.darker{background:#3c0025}.section-title h2{color:#fff}.outline-link{border:1px solid rgba(255,255,255,.35);padding:10px 14px;border-radius:4px;color:#fff;font-weight:900}.quick-tile{background:#6f003e;border:1px solid rgba(255,255,255,.11);border-bottom:4px solid #ffc928}.footer{background:#250018;margin-top:0}.footer-logo{max-width:90px}.page-hero{background:#50002f;border-bottom:0;padding:52px 32px}.content-wrap,.section{padding-left:32px;padding-right:32px}.card,.club-card,.player-card,.sponsor-card,.mysideline-box{background:rgba(255,255,255,.95);color:#111}.club-grid,.player-grid,.sponsor-grid{padding:0 0 20px}@media(max-width:1050px){.home-stage{grid-template-columns:1fr}.home-news-rail{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.video-row{grid-template-columns:repeat(6,230px)}}@media(max-width:760px){.pn-side-nav{position:sticky;top:0;width:100%;height:auto;display:block}.side-logo{height:auto;flex-direction:row;justify-content:flex-start}.side-logo img{width:54px;height:54px}.side-menu{flex-direction:row;overflow-x:auto;padding:8px 16px}.side-menu a,.side-menu li a{white-space:nowrap;padding:10px 12px}.side-more,.side-bottom{display:none}.site-shell{margin-left:0}.score-strip{top:0;height:92px}.home-hero-card{min-height:520px}.hero-copy{padding:0 24px 48px}.home-news-rail{display:block}.video-row-section,.magenta-section,.page-hero,.content-wrap,.section{padding-left:20px;padding-right:20px}}

/* PNGRFL v2.2: Original PNG RFL colours + customizable layout */
:root{--pn-black:#050505;--pn-red:#c81e3a;--pn-red-dark:#8e1027;--pn-gold:#ffc928;--pn-white:#fff;--pn-sidebar-width:176px;--pn-radius:10px}
body{background:var(--pn-black);color:var(--pn-white)}.pn-side-nav{width:var(--pn-sidebar-width);background:linear-gradient(180deg,var(--pn-black),#161616 58%,var(--pn-red-dark));border-right:5px solid var(--pn-gold)}.side-logo{background:var(--pn-black);border-bottom:1px solid rgba(255,255,255,.12)}.side-logo img{background:#fff;padding:6px;border-radius:var(--pn-radius)}.side-menu a:hover,.side-menu li a:hover,.side-more a:hover{color:var(--pn-gold);opacity:1}.site-shell{margin-left:var(--pn-sidebar-width);background:radial-gradient(circle at 40% 25%,rgba(255,201,40,.16),transparent 32%),linear-gradient(115deg,var(--pn-black),#161616 48%,var(--pn-red-dark))}.score-strip{background:linear-gradient(90deg,var(--pn-black),var(--pn-red-dark));border-bottom:4px solid var(--pn-gold)}.score-card em{background:var(--pn-red)}.score-card span{color:var(--pn-gold)}.home-hero-card{background:linear-gradient(90deg,rgba(0,0,0,.25),rgba(5,5,5,.92)),linear-gradient(180deg,rgba(200,30,58,.05),rgba(0,0,0,.95)),url('assets/images/pngrfl-logo.jpg') center/43% no-repeat,linear-gradient(135deg,#333,#050505)}.home-hero-card:after{background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(200,30,58,.72));mix-blend-mode:multiply}.tag,.rail-item span{background:var(--pn-gold);color:var(--pn-black)}.hero-copy a,.outline-link{border-color:var(--pn-gold);color:#fff}.hero-copy a:hover,.outline-link:hover{background:var(--pn-gold);color:#050505}.home-news-rail,.magenta-section,.video-row-section{background:linear-gradient(180deg,#101010,#050505);color:#fff}.magenta-section.darker{background:#0b0b0b}.rail-item{border-bottom-color:rgba(255,201,40,.25)}.rail-item h3:hover{color:var(--pn-gold)}.video-card{background:linear-gradient(180deg,rgba(200,30,58,.10),rgba(0,0,0,.82)),url('assets/images/pngrfl-logo.jpg') center/55% no-repeat,#1a1a1a;border:1px solid rgba(255,201,40,.22)}.video-card .play{color:var(--pn-red)}.duration{background:rgba(0,0,0,.72);border:1px solid rgba(255,201,40,.4)}.quick-tile{background:linear-gradient(135deg,var(--pn-red),var(--pn-black));border:1px solid rgba(255,201,40,.3);border-bottom:5px solid var(--pn-gold)}.page-hero{background:linear-gradient(90deg,var(--pn-black),var(--pn-red-dark));border-bottom:6px solid var(--pn-gold)}.footer{background:#000;border-top:5px solid var(--pn-gold)}.btn,.main-nav a:hover{background:var(--pn-red)}.btn.gold,.header-cta{background:var(--pn-gold)!important;color:#050505!important}.meta{color:var(--pn-red)}.badge{background:var(--pn-red)}.card,.club-card,.player-card,.sponsor-card,.mysideline-box{border-radius:var(--pn-radius)}body.pngrfl-boxed .site-shell{max-width:1600px;margin-right:auto}.elementor-page .article{max-width:none}.page-template-template-elementor-full .content-wrap{padding:0}.page-template-template-elementor-full .article{max-width:none;width:100%}.pngrfl-widget-section{padding:24px 32px}@media(max-width:760px){.site-shell{margin-left:0}.pn-side-nav{width:100%;border-right:0;border-bottom:4px solid var(--pn-gold)}}
/* Elementor compatibility: the front page now contains the_content(). */
.elementor-home-content:empty{display:none;}
.elementor-home-content .elementor{width:100%;}
body.elementor-editor-active .elementor-home-content:empty{display:block;min-height:80px;border:2px dashed rgba(255,201,40,.45);margin:20px;padding:20px;}

/* Fully editable Elementor homepage mode */
.pngrfl-elementor-home,
.pngrfl-builder-page {
  width: 100%;
  min-height: 70vh;
}
.pngrfl-elementor-home > .elementor,
.pngrfl-builder-page > .elementor {
}
body.elementor-page .site-main {
  padding: 0;
}
body.elementor-page .pngrfl-elementor-home .elementor-section,
body.elementor-page .pngrfl-elementor-home .e-con {
  --pn-red: #c8102e;
  --pn-gold: #ffcc29;
  --pn-black: #050505;
}

/* PNGRFL v2.3 MySideline draw cards + homepage-only score strip */
body:not(.home) .score-strip { display:none !important; }
.pngrfl-draw-cards-wrap{padding:32px;background:#fff;color:#050505;border-radius:var(--pn-radius);margin:24px 32px;border-top:5px solid var(--pn-gold)}
.pngrfl-draw-cards-wrap h2{margin:0 0 18px;font-size:32px;line-height:1;text-transform:uppercase;color:#050505}
.pngrfl-draw-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.pngrfl-draw-card{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid #e5e5e5;border-radius:var(--pn-radius);padding:16px;color:#050505;box-shadow:0 12px 28px rgba(0,0,0,.08);transition:.18s ease}
.pngrfl-draw-card:hover{transform:translateY(-2px);border-color:var(--pn-red)}
.pngrfl-draw-card small{font-weight:900;text-transform:uppercase;color:var(--pn-red)}
.draw-card-comp{display:inline-flex;align-self:flex-start;background:var(--pn-gold);color:#050505;font-weight:900;padding:4px 8px;border-radius:4px;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.draw-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-weight:900;font-size:15px;text-transform:uppercase}
.draw-teams span{display:flex;align-items:center;gap:8px;min-width:0}
.draw-teams span:last-child{justify-content:flex-end;text-align:right}
.draw-teams img{width:30px;height:30px;object-fit:contain;background:#fff;border-radius:50%}
.draw-teams strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#050505;color:#fff;font-size:11px}
.pngrfl-draw-card p{margin:0;color:#555;font-size:13px;min-height:18px}
.pngrfl-draw-card em{display:block;text-align:center;background:var(--pn-red);color:#fff;padding:10px;border-radius:5px;font-style:normal;font-weight:900;text-transform:uppercase;font-size:12px;margin-top:auto}
.draw-score-card{border-left:1px solid rgba(255,255,255,.12);padding-left:14px}
.draw-score-card b{color:#fff}.draw-score-card span{color:var(--pn-gold)}.draw-score-card em{background:var(--pn-red);color:#fff}
@media(max-width:760px){.pngrfl-draw-cards-wrap{margin:20px;padding:20px}.draw-teams{grid-template-columns:1fr}.draw-teams strong{margin:auto}.draw-teams span:last-child{justify-content:flex-start;text-align:left}}

/* PNGRFL v2.4 Full NRL Experience - red/white mockup theme */
:root{--pn-red:#c8102e;--pn-red-dark:#990015;--pn-gold:#f2b705;--pn-black:#111111;--pn-white:#ffffff;--pn-grey:#f5f5f5;--pn-border:#e7e7e7;--pn-sidebar-width:216px}
body{background:#fff;color:#111}.site-shell{background:#fff;margin-left:var(--pn-sidebar-width)}.pn-side-nav{width:var(--pn-sidebar-width);background:linear-gradient(180deg,#d00019 0%,#c8102e 50%,#a60f25 100%);border-right:8px solid var(--pn-gold);box-shadow:6px 0 22px rgba(0,0,0,.12)}.side-logo{background:#c8102e}.side-logo img{background:transparent;padding:0;border-radius:0;max-width:132px}.side-menu a,.side-menu li a{color:#fff;font-size:15px;letter-spacing:.03em}.side-menu a:hover,.side-menu li a:hover,.side-menu .current-menu-item>a{background:#fff;color:#c8102e}.side-more{border-color:rgba(255,255,255,.18)}.side-bottom{border-color:rgba(255,255,255,.18)}
.score-strip{background:#fff;color:#111;border-bottom:1px solid #e9e9e9;height:126px;position:sticky;top:0;z-index:900;box-shadow:0 4px 18px rgba(0,0,0,.05)}.score-scroll{height:100%;display:flex;align-items:center}.score-card,.draw-score-card{color:#111;border-left:1px solid #e6e6e6;min-width:190px}.draw-score-card b{color:#111}.score-card small,.draw-score-card small{color:#111}.score-card span,.draw-score-card span{color:#111}.score-card em,.draw-score-card em{background:#fff;color:#c8102e;border:1px solid #c8102e}.score-card em:hover,.draw-score-card em:hover{background:#c8102e;color:#fff}
.pngrfl-nrl-ticker{display:flex;align-items:center;height:126px;background:#fff;border-bottom:1px solid #e8e8e8;overflow:hidden}.ticker-track{display:flex;overflow-x:auto;scroll-snap-type:x proximity;flex:1;height:100%}.ticker-arrow{width:44px;height:100%;border:0;background:#fff;font-size:38px;color:#111;cursor:pointer}.ticker-fixture{min-width:190px;padding:18px 20px;border-left:1px solid #e8e8e8;display:flex;flex-direction:column;justify-content:center;gap:5px;scroll-snap-align:start}.ticker-fixture small{font-weight:800;text-transform:uppercase;font-size:12px}.ticker-fixture span{display:flex;align-items:center;gap:7px;font-weight:700}.ticker-fixture img{width:20px;height:20px;object-fit:contain}.ticker-fixture em{margin-top:6px;border:1px solid var(--pn-red);color:var(--pn-red);font-style:normal;text-align:center;padding:6px;border-radius:4px;font-weight:800;font-size:12px}.ticker-fixture:hover em{background:var(--pn-red);color:#fff}
.pngrfl-nrl-home-grid{display:grid;grid-template-columns:1fr 360px;gap:0;border-bottom:1px solid #eee;background:#fff}.nrl-hero-article{min-height:540px;background-size:cover;background-position:center;display:flex;align-items:center;padding:64px 60px}.nrl-hero-article>div{max-width:520px}.nrl-label{display:inline-flex;background:var(--pn-gold);color:#111;padding:5px 8px;border-radius:3px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.nrl-label.red{background:var(--pn-red);color:#fff}.nrl-hero-article h1{font-size:clamp(36px,4vw,58px);line-height:1.04;margin:18px 0 16px;color:#111;letter-spacing:-.04em}.nrl-hero-article p{color:#333;font-size:17px;line-height:1.55}.nrl-readmore{display:inline-flex;color:#c8102e;font-weight:900;margin-top:12px}.pngrfl-nrl-news-rail{padding:30px 28px;border-left:1px solid #e6e6e6;background:#fff}.nrl-rail-news{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #e6e6e6}.nrl-rail-news a{display:grid;grid-template-columns:1fr 118px;gap:16px}.nrl-rail-news h3{margin:8px 0 18px;color:#111;font-size:16px;line-height:1.2}.nrl-rail-news small{color:#c8102e;font-weight:700}.nrl-rail-news img{width:118px;height:86px;object-fit:cover;border-radius:6px}
.pngrfl-video-carousel{padding:26px 42px 36px;background:#fff;border-bottom:1px solid #eee}.pngrfl-video-carousel h2{font-size:20px;margin:0 0 16px;color:#111;text-transform:uppercase}.pngrfl-video-carousel h2 span{color:#c8102e}.pngrfl-video-track{display:grid;grid-template-columns:repeat(6,minmax(210px,1fr));gap:16px;overflow-x:auto}.pngrfl-video-card{height:150px;border-radius:8px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;padding:14px;color:#fff;overflow:hidden;min-width:210px}.pngrfl-video-card b{position:relative;z-index:2;line-height:1.14}.pngrfl-video-card .video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:#fff;color:#c8102e;border-radius:50%;display:grid;place-items:center;z-index:3}.pngrfl-video-card small{position:absolute;right:8px;top:8px;background:rgba(0,0,0,.72);padding:3px 7px;border-radius:8px;color:#fff;z-index:3}
.pngrfl-ladder{background:#fff;color:#111;margin:32px;border:1px solid #eee;border-radius:10px;overflow:hidden}.pngrfl-ladder h2{margin:0;padding:18px 22px;background:#111;color:#fff;text-transform:uppercase}.pngrfl-ladder table{width:100%;border-collapse:collapse}.pngrfl-ladder th,.pngrfl-ladder td{padding:14px 16px;border-bottom:1px solid #eee;text-align:left}.pngrfl-ladder th{background:#f7f7f7;text-transform:uppercase;font-size:12px}.team-cell{display:flex;align-items:center;gap:10px}.team-cell img{width:34px;height:34px;object-fit:contain}.pngrfl-partners-strip{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center;padding:30px 42px;background:#fff;border-top:1px solid #eee;color:#111}.pngrfl-partners-strip h3{text-transform:uppercase;font-size:13px;margin:0}.pngrfl-partners-strip>div{display:flex;align-items:center;gap:34px;flex-wrap:wrap}.pngrfl-partners-strip img{max-height:56px;max-width:145px;object-fit:contain;filter:none}.pngrfl-player-profile{display:grid;grid-template-columns:320px 1fr;gap:36px;align-items:end;background:linear-gradient(135deg,#fff,#f7f7f7);color:#111;border-bottom:6px solid var(--pn-red);padding:42px}.player-photo-large img{width:100%;max-height:420px;object-fit:cover;border-radius:12px}.pngrfl-player-profile h1{font-size:58px;margin:12px 0}.player-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.player-stat-grid div{background:#fff;border:1px solid #eee;border-radius:8px;padding:12px}.player-stat-grid small{display:block;color:#777;text-transform:uppercase;font-weight:800;font-size:11px}.player-stat-grid b{font-size:22px}.pngrfl-draw-cards-wrap{background:#fff;color:#111}.pngrfl-draw-card small,.pngrfl-draw-card em{color:#c8102e}.pngrfl-draw-card em{border:1px solid #c8102e;background:#fff}.pngrfl-draw-card:hover em{background:#c8102e;color:#fff}
@media(max-width:1050px){.pngrfl-nrl-home-grid{grid-template-columns:1fr}.pngrfl-nrl-news-rail{border-left:0}.pngrfl-video-track{grid-template-columns:repeat(6,220px)}.pngrfl-partners-strip{grid-template-columns:1fr}.site-shell{margin-left:0}.pn-side-nav{position:sticky;width:100%;height:auto;border-right:0;border-bottom:5px solid var(--pn-gold)}}@media(max-width:760px){.nrl-hero-article{min-height:460px;padding:36px 24px}.pngrfl-nrl-news-rail,.pngrfl-video-carousel{padding:24px}.nrl-rail-news a{grid-template-columns:1fr}.nrl-rail-news img{width:100%;height:150px}.pngrfl-player-profile{grid-template-columns:1fr;padding:24px}.pngrfl-player-profile h1{font-size:38px}.score-strip,.pngrfl-nrl-ticker{height:108px}.ticker-fixture{min-width:170px;padding:12px}}

/* =========================================================
   PNGRFL v25 - QRL-style red/yellow/white final layout
   ========================================================= */
:root{--pn-sidebar-width:220px;--pn-red:#c8102e;--pn-red-dark:#a60f25;--pn-red-deep:#8b081b;--pn-gold:#ffc400;--pn-black:#111;--pn-grey:#f5f5f5;--pn-line:#e8e8e8;--pn-radius:8px}
body{background:#fff!important;color:#111!important;font-family:Inter,Arial,Helvetica,sans-serif}.site-shell{background:#fff!important;margin-left:var(--pn-sidebar-width)!important}.site-main{background:#fff!important}.pn-side-nav{width:var(--pn-sidebar-width)!important;background:linear-gradient(180deg,#ffd400 0%,#ffc400 100%)!important;border-right:8px solid var(--pn-red)!important;color:#111!important;box-shadow:6px 0 22px rgba(0,0,0,.08)!important}.side-logo{height:190px!important;background:var(--pn-gold)!important;border-bottom:1px solid rgba(0,0,0,.08)!important}.side-logo img{width:132px!important;height:132px!important;object-fit:contain!important;background:transparent!important;padding:0!important}.side-logo span{display:none}.side-menu{padding:20px 24px!important;gap:0!important}.side-menu a,.side-menu li a{display:flex!important;align-items:center!important;gap:10px!important;color:#111!important;text-transform:uppercase!important;font-size:15px!important;font-weight:900!important;letter-spacing:.02em!important;padding:12px 0!important;border-radius:0!important}.side-menu a:hover,.side-menu li a:hover,.side-menu .current-menu-item>a{color:var(--pn-red)!important;background:transparent!important}.side-more{padding:16px 24px!important;border-top:1px solid rgba(0,0,0,.12)!important;gap:14px!important}.side-more a{color:#111!important;font-size:15px!important}.side-bottom{border-top:1px solid rgba(0,0,0,.12)!important;color:#111!important}.side-bottom input[type=search]{color:#111!important}.login-link{color:#111!important}.score-strip{height:128px!important;background:#fff!important;border-bottom:1px solid var(--pn-line)!important;box-shadow:0 2px 16px rgba(0,0,0,.04)!important;position:sticky!important;top:0!important;z-index:900!important}.score-scroll{padding:0 24px!important;gap:0!important;align-items:center!important}.draw-score-card{min-width:205px!important;height:100%!important;padding:14px 24px!important;border-left:1px solid var(--pn-line)!important;color:#111!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:7px!important}.draw-score-card small{font-size:12px!important;text-transform:uppercase!important;font-weight:900!important;color:#111!important}.score-team{display:flex;align-items:center;gap:8px;line-height:1}.score-team img{width:22px;height:22px;object-fit:contain}.score-team b,.score-team span{color:#111!important;font-size:14px!important;font-weight:800!important}.draw-score-card em{align-self:flex-start;background:#fff!important;color:var(--pn-red)!important;border:1px solid var(--pn-red)!important;border-radius:4px!important;padding:6px 20px!important;font-size:12px!important;font-weight:900!important;margin-top:4px!important}.draw-score-card:hover em{background:var(--pn-red)!important;color:#fff!important}.qrl-home-exact{background:#fff}.qrl-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;background:#fff;border-bottom:1px solid var(--pn-line)}.qrl-hero-left{min-width:0}.qrl-hero-splash{min-height:520px;position:relative;display:grid;grid-template-columns:minmax(360px,43%) 1fr;align-items:center;overflow:hidden;background:#fff}.qrl-hero-copy{position:relative;z-index:3;padding:40px 32px 40px 56px}.qrl-red-tag{display:inline-flex;align-items:center;background:var(--pn-red);color:#fff;border-radius:3px;padding:5px 8px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.qrl-hero-copy h1{font-size:clamp(38px,4vw,58px);line-height:1.03;letter-spacing:-.05em;margin:18px 0;color:#111}.qrl-hero-copy p{font-size:17px;line-height:1.45;color:#222}.qrl-hero-copy small,.qrl-news-row small{color:var(--pn-red);font-weight:800}.qrl-paint-splash{position:absolute;left:38%;right:3%;top:70px;bottom:30px;background:radial-gradient(circle at 45% 50%,rgba(255,196,0,.98),rgba(255,196,0,.8) 32%,rgba(255,196,0,.15) 58%,transparent 68%);clip-path:polygon(4% 24%,22% 15%,32% 2%,48% 18%,78% 4%,95% 21%,82% 42%,100% 59%,69% 64%,88% 92%,53% 78%,34% 100%,25% 72%,0 84%,13% 52%);z-index:1}.qrl-paint-splash:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 40%,rgba(255,255,255,.42) 40% 45%,transparent 45% 100%)}.qrl-hero-logo-watermark{position:absolute;right:11%;bottom:54px;width:300px;height:300px;object-fit:contain;z-index:2;opacity:.98;filter:drop-shadow(0 14px 18px rgba(0,0,0,.22))}.qrl-news-column{padding:30px 28px;background:#fff;border-left:1px solid var(--pn-line)}.qrl-news-row{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--pn-line)}.qrl-news-row a{display:grid;grid-template-columns:1fr 108px;gap:16px;color:#111}.qrl-news-row h3{font-size:16px;line-height:1.18;margin:9px 0 20px;color:#111}.qrl-thumb-placeholder{width:108px;height:86px;border-radius:6px;overflow:hidden;background:linear-gradient(135deg,#fff,var(--pn-gold))}.qrl-thumb-placeholder img{width:100%;height:100%;object-fit:contain;padding:10px}.qrl-view-all{display:block;text-align:center;border:1px solid var(--pn-red);color:var(--pn-red);font-weight:900;border-radius:5px;padding:12px;margin-top:8px}.qrl-view-all:hover{background:var(--pn-red);color:#fff}.pngrfl-video-carousel{background:#fff!important;padding:28px 34px!important;border-bottom:1px solid var(--pn-line)!important}.pngrfl-video-carousel h2{font-size:18px!important;text-transform:uppercase!important;color:#111!important;margin:0 0 18px!important}.pngrfl-video-carousel h2 span{color:var(--pn-gold)!important}.pngrfl-video-track{display:grid!important;grid-template-columns:repeat(6,minmax(190px,1fr))!important;gap:16px!important;overflow-x:auto!important}.pngrfl-video-card{height:150px!important;border-radius:7px!important;border:0!important;background-size:cover!important;background-position:center!important;box-shadow:0 6px 12px rgba(0,0,0,.1)!important}.pngrfl-video-card b{font-size:14px!important;line-height:1.1!important;color:#fff!important}.video-play{background:#fff!important;color:var(--pn-red)!important}.pngrfl-partners-strip{display:grid!important;grid-template-columns:130px 1fr!important;gap:24px!important;align-items:center!important;background:#fff!important;padding:28px 34px!important;border-top:1px solid var(--pn-line)!important;color:#111!important}.pngrfl-partners-strip h3{text-transform:uppercase;font-size:12px;margin:0;color:#111}.pngrfl-partners-strip>div{display:flex;align-items:center;gap:44px;flex-wrap:wrap}.pngrfl-partners-strip a{font-size:20px;font-weight:900;color:#111}.pngrfl-ladder,.pngrfl-page-grid,.pngrfl-draw-cards-wrap{background:#fff;color:#111;padding:32px}.pngrfl-ladder table{background:#fff;color:#111;border-collapse:collapse;width:100%;box-shadow:0 8px 24px rgba(0,0,0,.05)}.pngrfl-ladder th{background:var(--pn-red);color:#fff;text-align:left}.pngrfl-ladder th,.pngrfl-ladder td{padding:13px;border-bottom:1px solid var(--pn-line)}.team-cell img{width:32px;height:32px;object-fit:contain;margin-right:10px}.news-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{background:#fff;border:1px solid var(--pn-line);border-radius:8px;overflow:hidden}.news-card a{color:#111}.news-card-img{height:150px;background:linear-gradient(135deg,#fff,var(--pn-gold));display:grid;place-items:center}.news-card-img img{max-width:120px;max-height:120px}.news-card h2,.news-card p,.news-card span{margin-left:18px;margin-right:18px}.news-card h2{font-size:21px}.club-grid,.player-grid,.sponsor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:32px;background:#fff}.club-card,.player-card,.sponsor-card{background:#fff!important;border:1px solid var(--pn-line);box-shadow:0 8px 24px rgba(0,0,0,.04);color:#111!important;text-align:center}.club-card img,.player-card img,.sponsor-card img{max-width:120px;max-height:120px;object-fit:contain}.draw-teams img{width:58px;height:58px;object-fit:contain}.pngrfl-draw-card{background:#fff!important;border:1px solid var(--pn-line)!important;color:#111!important}.pngrfl-draw-card em{background:#fff!important;color:var(--pn-red)!important;border:1px solid var(--pn-red)!important}.footer{background:#fff!important;border-top:1px solid var(--pn-line)!important;color:#777!important}.page-hero{background:#fff!important;color:#111!important;border-bottom:1px solid var(--pn-line)!important}body:not(.home) .score-strip{display:none!important}@media(max-width:1200px){.qrl-hero-layout{grid-template-columns:1fr}.qrl-news-column{border-left:0;border-top:1px solid var(--pn-line);display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.pngrfl-video-track{grid-template-columns:repeat(6,220px)!important}.club-grid,.player-grid,.sponsor-grid,.news-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.site-shell{margin-left:0!important}.pn-side-nav{position:sticky!important;width:100%!important;height:auto!important;border-right:0!important;border-bottom:6px solid var(--pn-red)!important}.side-logo{height:auto!important;flex-direction:row!important;justify-content:flex-start!important}.side-logo img{width:78px!important;height:78px!important}.side-menu{flex-direction:row!important;overflow:auto!important;padding:8px 14px!important}.side-menu a,.side-menu li a{white-space:nowrap!important;padding:10px!important}.score-strip{height:112px!important}.qrl-hero-splash{grid-template-columns:1fr;min-height:620px}.qrl-hero-copy{padding:34px 22px}.qrl-paint-splash{left:8%;right:8%;top:310px}.qrl-hero-logo-watermark{right:15%;bottom:38px;width:230px;height:230px}.qrl-news-column,.news-card-grid,.club-grid,.player-grid,.sponsor-grid{grid-template-columns:1fr}.pngrfl-partners-strip{grid-template-columns:1fr!important}.pngrfl-video-carousel{padding:24px!important}}

/* PNGRFL v26 QRL-style demo refinements */
.score-strip .draw-score-card em{border-color:var(--pn-gold)!important;color:#111!important;background:#fff!important;box-shadow:inset 0 0 0 1px var(--pn-gold)!important}
.score-strip .draw-score-card:hover em{background:var(--pn-gold)!important;color:#111!important}
.qrl-hero-splash{border-bottom:1px solid var(--pn-line)!important}
.qrl-hero-copy{max-width:640px!important}
.qrl-news-column .qrl-red-tag:nth-child(1){background:var(--pn-red)!important;color:#fff!important}
.qrl-news-column .qrl-news-row:nth-child(4) .qrl-red-tag,
.qrl-news-column .qrl-news-row:nth-child(5) .qrl-red-tag{background:var(--pn-gold)!important;color:#111!important}
.pngrfl-video-carousel h2:before{content:"";display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--pn-gold);margin-right:8px;vertical-align:-1px}
.pngrfl-video-carousel h2 span{display:none!important}
.side-logo{padding-top:20px!important;padding-bottom:20px!important}
.pn-side-nav:after{content:"";position:absolute;top:0;right:-8px;width:8px;height:100%;background:var(--pn-red)}
body.home .site-main{min-height:100vh;background:#fff!important}

/* v27 Customizer/blank-page stability */
.blank-page-spacer{min-height:100vh;background:#fff;}
.customize-partial-edit-shortcut button{z-index:999999;}
body.customize-partial-edit-shortcuts-shown .site-shell{min-height:100vh;}

/* PNGRFL v28 Mobile Friendly Stylish Sidebar Menu */
:root{
  --pn-red:#c8102e;
  --pn-red-dark:#9f0e22;
  --pn-gold:#ffc928;
  --pn-black:#111111;
  --pn-white:#ffffff;
  --pn-line:#eeeeee;
  --pn-sidebar-width:216px;
}

/* remove WordPress menu bullets/dots completely */
.pn-side-nav ul,
.pn-side-nav ol,
.side-menu ul,
.side-menu ol,
.side-menu-list{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
.pn-side-nav li,
.side-menu li,
.side-more li{
}
.pn-side-nav li::marker,
.side-menu li::marker,
.side-menu-list li::marker{content:""!important;font-size:0!important;}

/* left menu shell */
.pn-side-nav{
  width:var(--pn-sidebar-width)!important;
  background:linear-gradient(180deg,#ffc928 0%,#f7bd00 62%,#efb000 100%)!important;
  color:var(--pn-black)!important;
  border-right:8px solid var(--pn-red)!important;
  box-shadow:10px 0 28px rgba(0,0,0,.08)!important;
}
.pn-side-nav:after{display:none!important;}
.site-shell{margin-left:var(--pn-sidebar-width)!important;background:#fff!important;}

.side-logo{
  height:auto!important;
  min-height:166px!important;
  padding:22px 18px 18px!important;
  border-bottom:1px solid rgba(0,0,0,.10)!important;
}
.side-logo img{width:118px!important;height:118px!important;object-fit:contain!important;}
.side-logo span{color:var(--pn-black)!important;font-size:12px!important;letter-spacing:.15em!important;}

.side-menu{
  padding:16px 12px!important;
  gap:5px!important;
}
.side-menu a,
.side-menu li a{
  position:relative!important;
  display:block!important;
  min-height:40px!important;
  padding:11px 14px 11px 26px!important;
  border-radius:0!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:var(--pn-black)!important;
  transition:background .15s ease,color .15s ease!important;
}
/* Remove the decorative square icons — not in the design */
.side-menu a:before,
.side-menu li a:before{
  display:none!important;
  content:none!important;
}
.side-menu a:hover,
.side-menu li a:hover,
.side-menu .current-menu-item>a,
.side-menu .current_page_item>a,
.side-menu a[aria-current="page"]{
  background:var(--pn-red)!important;
  color:#fff!important;
  transform:none!important;
  box-shadow:none!important;
  opacity:1!important;
}
/* No ::before on hover either */
.side-menu a:hover:before,
.side-menu li a:hover:before,
.side-menu .current-menu-item>a:before,
.side-menu .current_page_item>a:before{display:none!important;content:none!important;}

.side-more{
  padding:12px 24px 20px!important;
  border-top:1px solid rgba(0,0,0,.10)!important;
  gap:0!important;
}
.side-more a{
  display:block!important;
  padding:9px 0!important;
  font-weight:700!important;
  opacity:.9!important;
}
.side-more a:hover{color:var(--pn-red)!important;opacity:1!important;}
.side-bottom{border-top:1px solid rgba(0,0,0,.12)!important;background:rgba(255,255,255,.18)!important;}
.side-bottom form{border-bottom:1px solid rgba(0,0,0,.10)!important;padding:14px 20px!important;}
.side-bottom input[type=search]{color:var(--pn-black)!important;font-weight:800!important;}
.side-bottom input[type=search]::placeholder{color:rgba(0,0,0,.62)!important;}
.login-link{
  display:block!important;
  margin:10px 16px 16px!important;
  padding:13px 20px!important;
  background:#fff!important;
  color:var(--pn-black)!important;
  font-weight:900!important;
  font-size:14px!important;
  letter-spacing:.06em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  border-radius:4px!important;
  border:2px solid rgba(0,0,0,.12)!important;
}
.login-link:hover{background:var(--pn-red)!important;color:#fff!important;border-color:var(--pn-red)!important;}

/* Responsive content scaling */
.qrl-hero-layout{grid-template-columns:minmax(0,1fr) 360px!important;}
.qrl-hero-copy h1{font-size:clamp(32px,4vw,58px)!important;}
.pngrfl-video-track{grid-template-columns:repeat(5,minmax(190px,1fr))!important;}

@media(max-width:1280px){
  :root{--pn-sidebar-width:196px;}
  .qrl-hero-layout{grid-template-columns:1fr!important;}
  .qrl-news-column{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;border-left:0!important;border-top:1px solid var(--pn-line)!important;}
  .qrl-news-row{margin:0!important;}
  .pngrfl-video-track{grid-template-columns:repeat(5,220px)!important;}
}

@media(max-width:900px){
  :root{--pn-sidebar-width:0px;}
  body{padding-top:0!important;}
  .site-shell{margin-left:0!important;}
    position:sticky!important;
    top:0!important;
    width:100%!important;
    max-height:none!important;
    border-right:0!important;
    border-bottom:5px solid var(--pn-red)!important;
    z-index:2000!important;
    overflow:visible!important;
  }
    min-height:78px!important;
    height:78px!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    padding:10px 14px!important;
    gap:12px!important;
  }
  .side-logo img{width:58px!important;height:58px!important;}
  .side-logo span{font-size:13px!important;color:#111!important;}
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    padding:9px 12px 12px!important;
    scrollbar-width:none!important;
  }
  .side-menu::-webkit-scrollbar{display:none!important;}
  .side-menu ul,.side-menu-list{display:flex!important;gap:8px!important;}
  .side-menu li{flex:0 0 auto!important;}
  .side-menu a,.side-menu li a{
    flex:0 0 auto!important;
    min-height:36px!important;
    border-radius:999px!important;
    border:1px solid rgba(0,0,0,.12)!important;
    background:rgba(255,255,255,.32)!important;
    font-size:12px!important;
    white-space:nowrap!important;
    transform:none!important;
  }
  .side-menu a:before,.side-menu li a:before{display:none!important;}
  .side-menu a:hover,.side-menu li a:hover,.side-menu .current-menu-item>a,.side-menu .current_page_item>a,.side-menu a[aria-current="page"]{
  }
  .side-more,.side-bottom{display:none!important;}
  .score-strip{height:auto!important;position:relative!important;}
  .score-scroll{padding:10px 12px!important;gap:12px!important;}
  .qrl-hero-splash{grid-template-columns:1fr!important;min-height:auto!important;padding-bottom:260px!important;}
  .qrl-hero-copy{padding:30px 20px!important;}
  .qrl-hero-copy h1{font-size:34px!important;}
  .qrl-paint-splash{left:10%!important;right:10%!important;top:auto!important;bottom:40px!important;height:250px!important;}
  .qrl-hero-logo-watermark{right:50%!important;transform:translateX(50%)!important;bottom:38px!important;width:210px!important;height:210px!important;}
  .qrl-news-column{grid-template-columns:1fr!important;padding:22px!important;}
  .pngrfl-video-carousel{padding:22px 16px!important;}
  .pngrfl-video-track{grid-template-columns:repeat(6,210px)!important;}
  .pngrfl-partners-strip{grid-template-columns:1fr!important;padding:24px 18px!important;}
  .pngrfl-partners-strip>div{gap:22px!important;}
}

@media(max-width:560px){
  .side-logo{height:70px!important;min-height:70px!important;}
  .side-logo img{width:50px!important;height:50px!important;}
  .side-logo span{font-size:11px!important;}
  .score-card{min-width:145px!important;}
  .qrl-hero-copy h1{font-size:30px!important;line-height:1.05!important;}
  .qrl-hero-copy p{font-size:15px!important;}
  .qrl-hero-splash{padding-bottom:230px!important;}
  .qrl-paint-splash{height:220px!important;left:4%!important;right:4%!important;}
  .qrl-hero-logo-watermark{width:180px!important;height:180px!important;}
  .qrl-news-row a{grid-template-columns:1fr 86px!important;gap:12px!important;}
  .qrl-thumb-placeholder{width:86px!important;height:72px!important;}
}

/* === PNGRFL v29 production responsive + Elementor editing polish === */
.pn-side-nav ul,.pn-side-nav li,.side-menu-list,.side-menu-list li{list-style:none!important;margin:0!important;padding:0!important}
.pn-side-nav{background:linear-gradient(180deg,#ffc928 0%,#ffc928 68%,#f3b600 100%);border-right:8px solid #c8102e;color:#111;box-shadow:8px 0 24px rgba(0,0,0,.08)}
.pn-side-nav .side-logo{background:#ffc928;color:#111;text-align:center;font-weight:900;text-decoration:none;padding:22px 12px 18px;display:block}
.pn-side-nav .side-logo img{max-width:120px;height:auto;display:block;margin:0 auto 8px}.pn-side-nav .side-logo span{letter-spacing:.08em}
.side-menu a,.pn-side-nav .menu-item a,.side-more a,.side-bottom a{display:flex;align-items:center;gap:11px;text-decoration:none;color:#111;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-radius:0;padding:12px 18px;line-height:1.1;transition:all .18s ease}
/* bullet icons removed */.side-menu a:hover,.side-menu .current-menu-item>a,.side-menu .current_page_item>a{background:#c8102e;color:#fff}.side-more{border-top:1px solid rgba(0,0,0,.18);margin:18px 18px 0;padding-top:12px}.side-more a{text-transform:none;font-weight:600;padding:8px 0}.side-bottom{border-top:1px solid rgba(0,0,0,.18);margin:20px 18px 0;padding-top:14px}.side-bottom .search-form{display:flex;gap:6px}.side-bottom input[type=search]{width:100%;border:1px solid rgba(0,0,0,.18);border-radius:999px;padding:9px 12px}.side-bottom input[type=submit]{display:none}
.site-shell{background:#fff}.score-strip{background:#fff;border-bottom:1px solid #e8e8e8;position:sticky;top:0;z-index:50}.score-scroll{overflow-x:auto;scrollbar-width:thin}.pngrfl-nrl-ticker{display:flex;align-items:stretch;gap:10px;min-height:118px;background:#fff}.ticker-track{display:flex;gap:0;min-width:max-content}.ticker-fixture{min-width:180px;border-left:1px solid #eee;padding:18px 22px;text-decoration:none;color:#111;display:grid;gap:6px}.ticker-fixture small{font-weight:800;text-transform:uppercase}.ticker-fixture span{display:flex;align-items:center;gap:7px;font-weight:700}.ticker-fixture img{width:20px;height:20px;object-fit:contain}.ticker-fixture em{border:1px solid #e0a800;color:#111;background:#fff;border-radius:4px;text-align:center;font-style:normal;font-weight:800;font-size:12px;padding:5px 9px}.ticker-arrow{border:0;background:#fff;font-size:32px;padding:0 14px;cursor:pointer}.pngrfl-elementor-home,.pngrfl-builder-page{width:100%;max-width:none;margin:0;padding:0}.pngrfl-page-content{min-height:70vh;padding:40px clamp(18px,4vw,64px)}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1320px}.elementor-widget-shortcode{width:100%}
.pngrfl-nrl-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:0;background:#fff;border-bottom:1px solid #e9e9e9}.nrl-hero-article{min-height:510px;background-size:cover;background-position:center right;display:flex;align-items:center;padding:60px clamp(28px,5vw,70px)}.nrl-hero-article>div{max-width:520px}.nrl-label{display:inline-block;border-radius:4px;background:#ffc928;color:#111;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:5px 9px}.nrl-label.red{background:#c8102e;color:#fff}.nrl-hero-article h1{font-size:clamp(34px,4vw,58px);line-height:1.03;margin:16px 0;color:#111}.nrl-hero-article p{font-size:17px;line-height:1.55}.nrl-readmore{color:#c8102e;font-weight:900;text-decoration:none}.pngrfl-nrl-news-rail{border-left:1px solid #eee;padding:28px}.nrl-rail-news a{display:grid;grid-template-columns:1fr 112px;gap:16px;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #eee;color:#111;text-decoration:none}.nrl-rail-news h3{font-size:17px;line-height:1.25;margin:8px 0}.nrl-rail-news small{color:#c8102e;font-weight:700}.nrl-rail-news img{width:112px;height:80px;object-fit:cover;border-radius:7px}.pngrfl-video-carousel{padding:28px clamp(18px,4vw,56px);border-bottom:1px solid #eee}.pngrfl-video-carousel h2{font-size:20px;text-transform:uppercase}.pngrfl-video-track{display:grid;grid-template-columns:repeat(6,minmax(160px,1fr));gap:18px;overflow-x:auto}.pngrfl-video-card{min-height:142px;background-size:cover;background-position:center;color:#fff;text-decoration:none;border-radius:8px;padding:12px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:#fff;color:#c8102e;display:grid;place-items:center;font-weight:900}.pngrfl-video-card small{position:absolute;top:7px;right:7px;background:rgba(0,0,0,.7);padding:3px 7px;border-radius:999px}.pngrfl-ladder,.pngrfl-partners-strip,.pngrfl-widget-section{padding:34px clamp(18px,4vw,56px);background:#fff}.pngrfl-ladder table{width:100%;border-collapse:collapse;background:#fff}.pngrfl-ladder th,.pngrfl-ladder td{padding:13px;border-bottom:1px solid #eee;text-align:left}.pngrfl-ladder th{background:#111;color:#fff}.team-cell{display:flex;align-items:center;gap:10px}.team-cell img{width:34px;height:34px;object-fit:contain}.pngrfl-partners-strip{border-top:1px solid #eee}.pngrfl-partners-strip>div{display:flex;flex-wrap:wrap;align-items:center;gap:36px}.pngrfl-partners-strip a{color:#111;text-decoration:none;font-size:22px;font-weight:900}.pngrfl-partners-strip img{max-height:54px;width:auto}.pngrfl-draw-cards,.mysideline-draw-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.pngrfl-draw-card,.mysideline-draw-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:16px;box-shadow:0 4px 18px rgba(0,0,0,.05)}
@media (max-width:1100px){.pngrfl-nrl-home-grid{grid-template-columns:1fr}.pngrfl-nrl-news-rail{border-left:0;border-top:1px solid #eee}.pngrfl-video-track{grid-template-columns:repeat(3,minmax(190px,1fr))}}
@media (max-width:820px){body{overflow-x:hidden}.pn-side-nav{position:sticky!important;top:0!important;width:100%!important;min-height:auto!important;height:auto!important;border-right:0;border-bottom:5px solid #c8102e;z-index:999}.pn-side-nav .side-logo{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px}.pn-side-nav .side-logo img{max-width:64px;margin:0}.side-menu-list,.pn-side-nav .menu{display:flex!important;overflow-x:auto;gap:0;padding:0 8px!important;white-space:nowrap}.side-menu a,.pn-side-nav .menu-item a{padding:13px 14px;font-size:13px}.side-more,.side-bottom{display:none}.site-shell{margin-left:0!important;width:100%!important}.score-strip{top:0}.pngrfl-nrl-ticker{min-height:96px}.ticker-fixture{min-width:155px;padding:12px}.nrl-hero-article{min-height:430px;padding:34px 20px;background-position:center}.nrl-hero-article h1{font-size:34px}.nrl-rail-news a{grid-template-columns:1fr 90px}.nrl-rail-news img{width:90px;height:68px}.pngrfl-video-track{display:flex}.pngrfl-video-card{min-width:245px}.pngrfl-page-content{padding:24px 18px}}
@media (max-width:520px){.nrl-hero-article{min-height:390px}.nrl-hero-article h1{font-size:29px}.nrl-hero-article p{font-size:15px}.pngrfl-nrl-news-rail{padding:18px}.ticker-arrow{display:none}.pngrfl-ladder{overflow-x:auto}.pngrfl-ladder table{min-width:640px}}

/* v31 Full QRL-style hero section with PNGRFL yellow gradient overlay */
.qrl-full-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 390px!important;
  min-height:560px!important;
  background:#fff!important;
  border-bottom:1px solid var(--pn-line,#e8e8e8)!important;
  overflow:hidden!important;
}
.qrl-full-hero a{text-decoration:none!important;color:inherit!important;}
.qrl-full-hero-main{min-width:0!important;position:relative!important;}
.qrl-full-hero-link{display:block!important;height:100%!important;min-height:560px!important;position:relative!important;overflow:hidden!important;background:#fff!important;}
.qrl-full-hero-media{position:absolute!important;inset:0!important;background-size:cover!important;background-position:center!important;transform:scale(1.001)!important;transition:transform .35s ease!important;}
.qrl-full-hero-link:hover .qrl-full-hero-media{transform:scale(1.035)!important;}
.qrl-full-hero-gradient{position:absolute!important;inset:0!important;z-index:1!important;background:
  linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 30%, rgba(255,255,255,.18) 62%, rgba(255,255,255,0) 100%),
  linear-gradient(0deg, rgba(255,201,40,1) 0%, rgba(255,201,40,.88) 26%, rgba(255,201,40,.38) 56%, rgba(255,201,40,0) 86%)!important;
  clip-path:polygon(0 0,72% 0,63% 100%,0% 100%)!important;
}
.qrl-full-watermark{position:absolute!important;right:7%!important;bottom:42px!important;width:min(350px,36vw)!important;height:min(350px,36vw)!important;object-fit:contain!important;z-index:2!important;filter:drop-shadow(0 18px 18px rgba(0,0,0,.24))!important;}
.qrl-full-hero-copy{position:absolute!important;left:clamp(24px,5vw,64px)!important;bottom:clamp(34px,7vw,76px)!important;z-index:3!important;max-width:620px!important;color:#111!important;}
.qrl-chip{display:inline-flex!important;align-items:center!important;border-radius:3px!important;padding:6px 9px!important;font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;line-height:1!important;}
.qrl-chip.red{background:var(--pn-red,#c8102e)!important;color:#fff!important;}
.qrl-chip.gold{background:#ffc928!important;color:#111!important;}
.qrl-full-hero-copy h1{font-size:clamp(38px,5.2vw,72px)!important;line-height:.96!important;letter-spacing:-.065em!important;margin:18px 0 18px!important;font-weight:950!important;color:#111!important;max-width:620px!important;}
.qrl-full-hero-copy p{font-size:18px!important;line-height:1.44!important;color:#222!important;margin:0 0 16px!important;max-width:560px!important;}
.qrl-full-hero-copy small,.qrl-full-news-card small{color:var(--pn-red,#c8102e)!important;font-weight:900!important;font-size:12px!important;text-transform:uppercase!important;}
.qrl-full-news-rail{background:#fff!important;border-left:1px solid var(--pn-line,#e8e8e8)!important;padding:22px 26px!important;display:flex!important;flex-direction:column!important;gap:0!important;}
.qrl-full-rail-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 14px!important;text-transform:uppercase!important;}
.qrl-full-rail-head strong{font-size:13px!important;letter-spacing:.06em!important;color:#111!important;}
.qrl-full-rail-head a{font-size:12px!important;color:var(--pn-red,#c8102e)!important;font-weight:900!important;}
.qrl-full-news-card{border-bottom:1px solid var(--pn-line,#e8e8e8)!important;padding:0 0 17px!important;margin:0 0 17px!important;}
.qrl-full-news-card:last-child{border-bottom:0!important;margin-bottom:0!important;}
.qrl-full-news-card a{display:grid!important;grid-template-columns:minmax(0,1fr) 112px!important;gap:16px!important;align-items:center!important;}
.qrl-full-news-text h3{font-size:17px!important;line-height:1.14!important;font-weight:900!important;letter-spacing:-.025em!important;margin:9px 0 18px!important;color:#111!important;}
.qrl-full-news-thumb{width:112px!important;height:88px!important;border-radius:7px!important;background-size:cover!important;background-position:center!important;position:relative!important;overflow:hidden!important;border:1px solid rgba(0,0,0,.04)!important;}
.qrl-full-news-thumb span{position:absolute!important;inset:0!important;background:linear-gradient(0deg,rgba(255,201,40,.85),rgba(255,201,40,.12))!important;}
.qrl-full-news-card:hover h3,.qrl-full-rail-head a:hover{color:var(--pn-red,#c8102e)!important;}
@media(max-width:1180px){
  .qrl-full-hero{grid-template-columns:1fr!important;}
  .qrl-full-news-rail{border-left:0!important;border-top:1px solid var(--pn-line,#e8e8e8)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;}
  .qrl-full-rail-head{grid-column:1/-1!important;}
  .qrl-full-news-card{margin:0!important;}
}
@media(max-width:760px){
  .qrl-full-hero{display:block!important;min-height:0!important;}
  .qrl-full-hero-link{min-height:640px!important;}
  .qrl-full-hero-gradient{clip-path:none!important;background:
    linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 34%,rgba(255,201,40,.92) 64%,rgba(255,201,40,1) 100%)!important;}
  .qrl-full-watermark{right:50%!important;transform:translateX(50%)!important;bottom:34px!important;width:230px!important;height:230px!important;}
  .qrl-full-hero-copy{left:22px!important;right:22px!important;top:34px!important;bottom:auto!important;}
  .qrl-full-hero-copy h1{font-size:38px!important;line-height:1.02!important;}
  .qrl-full-hero-copy p{font-size:15px!important;}
  .qrl-full-news-rail{grid-template-columns:1fr!important;padding:20px!important;}
  .qrl-full-news-card a{grid-template-columns:1fr 88px!important;gap:12px!important;}
  .qrl-full-news-thumb{width:88px!important;height:72px!important;}
}

/* v32 Pixel-perfect QRL hero refinement: balanced headline, angled yellow fade, smaller PNGRFL watermark */
}
.qrl-full-hero-link{
}
.qrl-full-hero-media{
  background-position:center right!important;
}
.qrl-full-hero-gradient{
  background:
    linear-gradient(90deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.95) 34%, rgba(255,255,255,.58) 52%, rgba(255,255,255,0) 72%),
    linear-gradient(0deg, rgba(255,201,40,.92) 0%, rgba(255,201,40,.62) 27%, rgba(255,201,40,.20) 55%, rgba(255,201,40,0) 86%)!important;
  clip-path:polygon(0 0,70% 0,61% 100%,0% 100%)!important;
}
.qrl-full-hero-copy{
  left:clamp(28px,4.8vw,64px)!important;
  top:clamp(42px,5.6vw,76px)!important;
  bottom:auto!important;
  max-width:540px!important;
}
.qrl-full-hero-copy h1{
  font-size:clamp(34px,3.65vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  max-width:530px!important;
  margin:14px 0 18px!important;
  text-wrap:balance;
}
.qrl-full-hero-copy p{
  max-width:500px!important;
  font-size:16px!important;
  line-height:1.45!important;
}
.qrl-full-watermark{
  width:min(220px,22vw)!important;
  height:min(220px,22vw)!important;
  right:11%!important;
  bottom:52px!important;
}
.qrl-full-news-text h3{
  line-height:1.17!important;
}
.qrl-full-news-thumb{
  width:106px!important;
  height:82px!important;
}
.qrl-full-news-card a{
  grid-template-columns:minmax(0,1fr) 106px!important;
}
  .qrl-full-hero-copy h1{font-size:clamp(34px,5vw,50px)!important;}
  .qrl-full-watermark{width:190px!important;height:190px!important;right:8%!important;bottom:42px!important;}
}
  .qrl-full-hero-link{min-height:560px!important;}
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 40%, rgba(255,201,40,.82) 72%, rgba(255,201,40,.96) 100%)!important;}
  .qrl-full-hero-copy{top:28px!important;left:20px!important;right:20px!important;max-width:none!important;}
  .qrl-full-hero-copy h1{font-size:30px!important;line-height:1.05!important;letter-spacing:-.035em!important;}
  .qrl-full-hero-copy p{font-size:14px!important;line-height:1.45!important;}
  .qrl-full-watermark{width:140px!important;height:140px!important;right:22px!important;left:auto!important;transform:none!important;bottom:28px!important;opacity:.78!important;}
}

/* v33 Pro animation + compact QRL hero title: 2-line heading only, no excerpt */
.qrl-full-hero-link{overflow:hidden!important;}
.qrl-full-hero-link:hover .qrl-full-hero-media{transform:scale(1.025)!important;}
.qrl-full-hero-link:hover .qrl-full-watermark{opacity:1!important;transform:translate3d(-4px,-4px,0) scale(1.04)!important;}
.qrl-full-hero-copy{animation:qrlHeroCopyIn .75s cubic-bezier(.22,.61,.36,1) both!important;}
.qrl-full-watermark{width:72px!important;height:72px!important;right:14px!important;bottom:14px!important;opacity:.72!important;transform:none!important;transition:opacity .25s ease, transform .35s ease, filter .35s ease!important;filter:drop-shadow(0 6px 12px rgba(0,0,0,.22))!important;}
.qrl-full-hero-copy h1{font-size:clamp(24px,2.55vw,38px)!important;line-height:1.05!important;letter-spacing:-.035em!important;max-width:520px!important;margin:12px 0 14px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.qrl-full-hero-copy p{display:none!important;}
.qrl-full-hero-gradient{transition:opacity .35s ease!important;}
.qrl-full-hero-link:hover .qrl-full-hero-gradient{opacity:.96!important;}
@keyframes qrlHeroCopyIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1180px){.qrl-full-watermark{width:64px!important;height:64px!important;right:12px!important;bottom:12px!important;}.qrl-full-hero-copy h1{font-size:clamp(24px,4vw,34px)!important;max-width:500px!important;}}
@media(max-width:760px){.qrl-full-watermark{width:48px!important;height:48px!important;right:10px!important;bottom:10px!important;opacity:.72!important;}.qrl-full-hero-copy h1{font-size:24px!important;line-height:1.08!important;max-width:88vw!important;}.qrl-full-hero-link:hover .qrl-full-watermark{transform:translate3d(-2px,-2px,0) scale(1.03)!important;}}
@media (prefers-reduced-motion: reduce){.qrl-full-hero-copy,.qrl-full-hero-media,.qrl-full-watermark,.qrl-full-hero-gradient{animation:none!important;transition:none!important;}}

/* v34 Exact QRL-style hero refinement: bottom headline, transparent photo-first gradient */
}
.qrl-full-hero-main,
.qrl-full-hero-link,
.qrl-full-hero-media{position:relative!important;}
  border-radius:0!important;
  background:#111!important;
}
  inset:0!important;
  background-size:cover!important;
  background-position:center center!important;
  transform:scale(1.001)!important;
}
  z-index:1!important;
  clip-path:none!important;
    linear-gradient(0deg, rgba(255,201,40,.92) 0%, rgba(255,201,40,.70) 22%, rgba(255,201,40,.35) 44%, rgba(255,201,40,.10) 66%, rgba(255,201,40,0) 100%),
    linear-gradient(0deg, rgba(0,0,0,.34) 0%, rgba(0,0,0,.13) 30%, rgba(0,0,0,0) 58%)!important;
}
  left:clamp(22px,4vw,48px)!important;
  right:clamp(22px,18vw,190px)!important;
  top:auto!important;
  bottom:clamp(26px,4vw,46px)!important;
  z-index:3!important;
  max-width:620px!important;
  color:#111!important;
  animation:qrlHeroCopyIn .75s cubic-bezier(.22,.61,.36,1) both!important;
}
.qrl-full-hero-copy .qrl-chip,
.qrl-full-hero-copy small,
  font-size:clamp(22px,2.2vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  font-weight:950!important;
  max-width:590px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  text-overflow:ellipsis!important;
  text-shadow:none!important;
}
  width:48px!important;
  height:48px!important;
  right:12px!important;
  bottom:12px!important;
  z-index:4!important;
  object-fit:contain!important;
  opacity:.74!important;
  pointer-events:none!important;
  filter:drop-shadow(0 5px 10px rgba(0,0,0,.25))!important;
  transition:opacity .25s ease, transform .35s ease, filter .35s ease!important;
}
.qrl-full-hero-link:hover .qrl-full-hero-media{transform:scale(1.028)!important;}
.qrl-full-hero-link:hover .qrl-full-watermark{opacity:.95!important;transform:translate3d(-2px,-2px,0) scale(1.05)!important;filter:drop-shadow(0 8px 16px rgba(0,0,0,.28))!important;}
.qrl-full-news-rail{background:#fff!important;border-left:1px solid #ececec!important;}
.qrl-full-news-card a{border-bottom:1px solid #ececec!important;}
.qrl-full-news-text h3{font-size:15px!important;line-height:1.18!important;font-weight:850!important;}
  .qrl-full-hero{grid-template-columns:1fr 340px!important;}
  .qrl-full-hero-copy{right:96px!important;bottom:30px!important;}
  .qrl-full-hero-copy h1{font-size:clamp(22px,3.2vw,30px)!important;}
  .qrl-full-watermark{width:44px!important;height:44px!important;right:10px!important;bottom:10px!important;}
}
  .qrl-full-hero-link{min-height:470px!important;}
  .qrl-full-hero-copy{left:18px!important;right:78px!important;bottom:22px!important;max-width:none!important;}
  .qrl-full-hero-copy h1{font-size:26px!important;line-height:1.08!important;}
  .qrl-full-watermark{width:40px!important;height:40px!important;right:10px!important;bottom:10px!important;}
}
  .qrl-full-hero-link{min-height:390px!important;}
  .qrl-full-hero-gradient{background:
    linear-gradient(0deg, rgba(255,201,40,.95) 0%, rgba(255,201,40,.74) 26%, rgba(255,201,40,.36) 50%, rgba(255,201,40,.08) 72%, rgba(255,201,40,0) 100%),
    linear-gradient(0deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.10) 42%, rgba(0,0,0,0) 70%)!important;}
  .qrl-full-hero-copy{left:16px!important;right:68px!important;bottom:18px!important;}
  .qrl-full-hero-copy h1{font-size:21px!important;line-height:1.1!important;}
  .qrl-full-watermark{width:34px!important;height:34px!important;right:8px!important;bottom:8px!important;}
}

/* v35 QRL.com.au hero title style: white text, dark gradient, full title visible */
.qrl-full-hero-gradient{
  clip-path:none!important;
  background:
    linear-gradient(0deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.58) 28%, rgba(0,0,0,.22) 56%, rgba(0,0,0,0) 82%)!important;
}
.qrl-full-hero-copy{
  top:auto!important;
  bottom:clamp(32px,5vw,64px)!important;
  left:clamp(24px,4.5vw,56px)!important;
  right:clamp(24px,20vw,220px)!important;
  max-width:640px!important;
  color:#fff!important;
  animation:qrlHeroCopyIn .75s cubic-bezier(.22,.61,.36,1) both!important;
}
.qrl-full-hero-copy h1{
  color:#fff!important;
  font-size:clamp(32px,3.8vw,58px)!important;
  font-weight:700!important;
  line-height:1.06!important;
  letter-spacing:-.025em!important;
  max-width:620px!important;
  margin:12px 0 14px!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-shadow:0 2px 12px rgba(0,0,0,.38)!important;
  text-wrap:balance;
}
.qrl-full-hero-copy small{color:rgba(255,255,255,.78)!important;}
.qrl-chip.red{background:var(--pn-red,#c8102e)!important;color:#fff!important;}
@media(max-width:1180px){
  .qrl-full-hero-copy{right:clamp(24px,12vw,120px)!important;}
  .qrl-full-hero-copy h1{font-size:clamp(28px,4vw,44px)!important;}
}
@media(max-width:760px){
  .qrl-full-hero-gradient{background:linear-gradient(0deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.62) 34%, rgba(0,0,0,.26) 60%, rgba(0,0,0,0) 88%)!important;}
  .qrl-full-hero-copy{left:18px!important;right:18px!important;bottom:24px!important;top:auto!important;}
  .qrl-full-hero-copy h1{font-size:26px!important;line-height:1.1!important;}
}

/* v36 Full QRL post page system: article hero, meta, share, sidebar, related news */
.single-post .site-main{background:#fff!important;}
.pngrfl-article-system{background:#fff;color:#111;}
.pngrfl-article-hero{position:relative;min-height:520px;background-size:cover;background-position:center;display:flex;align-items:flex-end;overflow:hidden;}
.pngrfl-article-hero-gradient{position:absolute;inset:0;background:linear-gradient(45deg,rgba(255,201,40,.94) 0%,rgba(255,201,40,.78) 30%,rgba(255,201,40,.38) 58%,rgba(255,201,40,.08) 78%,rgba(255,201,40,0) 100%),linear-gradient(0deg,rgba(0,0,0,.36) 0%,rgba(0,0,0,.10) 42%,rgba(0,0,0,0) 70%);z-index:1;}
.pngrfl-article-hero-inner{position:relative;z-index:2;width:min(980px,calc(100% - 56px));padding:0 0 54px;margin-left:clamp(22px,5vw,70px);}
.pngrfl-breadcrumb{display:flex;gap:9px;align-items:center;margin-bottom:16px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.pngrfl-breadcrumb a{color:#111;text-decoration:none;}
.pngrfl-breadcrumb a:hover{text-decoration:underline;}
.pngrfl-article-category{display:inline-flex;background:#c8102e;color:#fff;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.04em;padding:7px 11px;border-radius:4px;margin-bottom:12px;}
.pngrfl-article-title{max-width:760px;margin:0;color:#111;font-size:clamp(34px,4vw,58px);line-height:.98;font-weight:950;letter-spacing:-.045em;text-wrap:balance;}
.pngrfl-article-frame{display:grid;grid-template-columns:minmax(0,780px) 320px;gap:44px;width:min(1180px,calc(100% - 56px));margin:0 auto;padding:42px 0 60px;align-items:start;}
.pngrfl-article-main{min-width:0;}
.pngrfl-article-meta-card{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;margin-bottom:20px;}
.pngrfl-article-meta-card>div{padding:16px 20px 16px 0;}
.pngrfl-meta-label{display:block;color:#777;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:4px;}
.pngrfl-article-meta-card strong{font-size:15px;}
.pngrfl-share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 32px;padding-bottom:22px;border-bottom:1px solid #eee;}
.pngrfl-share-row span{font-weight:900;margin-right:6px;}
.pngrfl-share-row a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 11px;border:1px solid #ddd;border-radius:999px;color:#111;background:#fff;text-decoration:none;font-size:12px;font-weight:800;transition:.2s ease;}
.pngrfl-share-row a:hover{background:#c8102e;color:#fff;border-color:#c8102e;transform:translateY(-1px);}
.pngrfl-article-content{font-size:18px;line-height:1.72;color:#222;}
.pngrfl-article-content p{margin:0 0 1.25em;}
.pngrfl-article-content img{max-width:100%;height:auto;border-radius:10px;}
.pngrfl-article-content blockquote{border-left:5px solid #ffc928;margin:28px 0;padding:14px 22px;background:#fff8dc;font-weight:800;}
.pngrfl-inline-sponsor{margin:38px 0;padding:22px;border-radius:14px;background:linear-gradient(135deg,#ffc928,#ffe58a);color:#111;display:grid;gap:4px;}
.pngrfl-inline-sponsor span{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.08em;}
.pngrfl-inline-sponsor strong{font-size:18px;}
.pngrfl-section-heading-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;border-top:4px solid #111;padding-top:18px;}
.pngrfl-section-heading-row h2{margin:0;font-size:24px;line-height:1;font-weight:950;text-transform:uppercase;letter-spacing:-.03em;}
.pngrfl-section-heading-row a{color:#c8102e;text-decoration:none;font-weight:900;font-size:13px;}
.pngrfl-related-news{margin-top:48px;}
.pngrfl-related-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.pngrfl-related-item{display:grid;grid-template-columns:128px minmax(0,1fr);gap:14px;text-decoration:none;color:#111;background:#fff;border:1px solid #ececec;border-radius:12px;overflow:hidden;transition:.2s ease;}
.pngrfl-related-item:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.pngrfl-related-thumb{min-height:104px;background:#f2f2f2;}
.pngrfl-related-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.pngrfl-related-copy{padding:12px 12px 12px 0;}
.pngrfl-related-copy span{display:inline-block;color:#c8102e;font-size:10px;font-weight:950;text-transform:uppercase;margin-bottom:6px;}
.pngrfl-related-copy h3{margin:0 0 6px;font-size:15px;line-height:1.15;font-weight:900;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.pngrfl-related-copy small{color:#777;font-weight:800;font-size:11px;}
.pngrfl-article-sidebar{position:sticky;top:22px;display:grid;gap:18px;}
.pngrfl-side-widget{border:1px solid #ececec;border-radius:14px;background:#fff;padding:18px;box-shadow:0 8px 22px rgba(0,0,0,.04);}
.pngrfl-side-widget h3{margin:0 0 14px;font-size:18px;text-transform:uppercase;font-weight:950;letter-spacing:-.03em;}
.pngrfl-back-news a{display:block;background:#c8102e;color:#fff;border-radius:10px;text-decoration:none;padding:13px 14px;font-weight:900;}
.pngrfl-latest-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;color:#111;text-decoration:none;padding:12px 0;border-top:1px solid #eee;}
.pngrfl-latest-item:first-of-type{border-top:0;padding-top:0;}
.pngrfl-latest-item img{width:72px;height:58px;object-fit:cover;border-radius:8px;background:#eee;}
.pngrfl-latest-item span{font-size:13px;line-height:1.18;font-weight:900;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.pngrfl-acknowledgement{background:#111;color:#fff;border-color:#111;}
.pngrfl-acknowledgement p{color:#ddd;font-size:13px;line-height:1.5;margin:0;}
@media(max-width:1100px){.pngrfl-article-frame{grid-template-columns:1fr;gap:28px;}.pngrfl-article-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr));}.pngrfl-acknowledgement{grid-column:1/-1;}}
@media(max-width:760px){.pngrfl-article-hero{min-height:360px;}.pngrfl-article-hero-inner{width:calc(100% - 32px);margin-left:16px;padding-bottom:28px;}.pngrfl-breadcrumb{font-size:10px;margin-bottom:10px;}.pngrfl-article-category{font-size:10px;padding:6px 9px;}.pngrfl-article-title{font-size:clamp(26px,8vw,36px);line-height:1.03;}.pngrfl-article-frame{width:calc(100% - 32px);padding:28px 0 42px;}.pngrfl-article-meta-card{grid-template-columns:1fr;}.pngrfl-article-meta-card>div{padding:12px 0;border-bottom:1px solid #eee;}.pngrfl-share-row{align-items:flex-start;}.pngrfl-share-row span{width:100%;}.pngrfl-article-content{font-size:16px;line-height:1.68;}.pngrfl-related-list{grid-template-columns:1fr;}.pngrfl-related-item{grid-template-columns:108px minmax(0,1fr);}.pngrfl-article-sidebar{grid-template-columns:1fr;}.pngrfl-section-heading-row{align-items:flex-start;gap:10px;flex-direction:column;}}

/* PNGRFL v40: QRL sidebar search, icons and Teams dropdown */
.pn-side-nav,
.pn-side-nav *{box-sizing:border-box;}
.pn-side-nav li{list-style:none!important;margin:0!important;padding:0!important;}
.side-menu-list{display:block!important;width:100%!important;}
.side-menu .menu-item{position:relative!important;}
.pn-side-nav .menu-item a{position:relative!important;display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;padding:12px 18px!important;border-radius:10px!important;color:#111!important;text-decoration:none!important;text-transform:uppercase!important;font-size:12px!important;font-weight:900!important;letter-spacing:.045em!important;line-height:1!important;transition:background .18s ease,color .18s ease,transform .18s ease!important;}
.side-menu .is-open>a{background:#c8102e!important;color:#fff!important;transform:translateX(2px)!important;box-shadow:inset 5px 0 0 #ffc928!important;}
/* v40 icon injection REMOVED — icons replaced by clean text-only menu */
.side-menu .menu-item-has-children>a:after{content:'⌄'!important;margin-left:auto!important;font-size:14px!important;color:inherit!important;transition:transform .2s ease!important;}
.side-menu .menu-item-has-children.is-open>a:after,
.side-menu .menu-item-has-children:hover>a:after{transform:rotate(180deg)!important;}
.side-menu .sub-menu{display:none!important;margin:4px 0 8px 38px!important;padding-left:0!important;border-left:3px solid #ffc928!important;}
.side-menu .menu-item-has-children.is-open>.sub-menu,
.side-menu .menu-item-has-children:hover>.sub-menu{display:block!important;}
.side-menu .sub-menu a{font-size:11px!important;letter-spacing:.04em!important;font-weight:800!important;padding:9px 12px!important;color:#333!important;background:rgba(255,201,40,.16)!important;border-radius:8px!important;margin:3px 0!important;}
.side-menu .sub-menu a:hover{background:#ffc928!important;color:#111!important;box-shadow:none!important;transform:none!important;}
/* sub-menu ::before bullets REMOVED */

.qrl-side-actions{margin:20px 18px 0!important;padding:0!important;border:0!important;display:grid!important;gap:10px!important;}
.qrl-side-search,.qrl-login-link{min-height:48px!important;background:#fff!important;border:1px solid rgba(0,0,0,.14)!important;border-radius:12px!important;box-shadow:0 6px 15px rgba(0,0,0,.08)!important;overflow:hidden!important;}
.qrl-side-search{display:flex!important;align-items:center!important;padding:0 12px!important;gap:8px!important;}
.qrl-search-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;background:#ffc928!important;color:#111!important;border-radius:50%!important;font-weight:900!important;}
.qrl-side-search .search-form{display:flex!important;align-items:center!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important;}
.qrl-side-search label{display:block!important;width:100%!important;}
.qrl-side-search .screen-reader-text{display:none!important;}
.qrl-side-search input[type=search]{width:100%!important;border:0!important;background:transparent!important;color:#111!important;font-weight:800!important;outline:0!important;padding:10px 0!important;}
.qrl-side-search input[type=search]::placeholder{color:#666!important;}
.qrl-side-search input[type=submit],.qrl-side-search button[type=submit]{display:none!important;}
.qrl-login-link{display:flex!important;align-items:center!important;gap:10px!important;padding:0 16px!important;color:#111!important;font-weight:900!important;text-transform:uppercase!important;text-decoration:none!important;}
.qrl-login-link:hover{background:#c8102e!important;color:#fff!important;border-color:#c8102e!important;}

@media(max-width:820px){
  .side-menu .menu-item-has-children>.sub-menu{position:absolute!important;left:0!important;top:100%!important;z-index:1002!important;min-width:190px!important;margin:0!important;padding:8px!important;border-left:0!important;background:#fff!important;border-radius:0 0 12px 12px!important;box-shadow:0 10px 24px rgba(0,0,0,.18)!important;}
  .qrl-side-actions{display:none!important;}
}

/* PNGRFL v42: final sidebar text-only menu + fixed bottom search/login */
  flex-direction:column!important;
  height:100vh!important;
  min-height:100vh!important;
}
  flex:0 1 auto!important;
  overflow-y:auto!important;
  padding:22px 28px 10px!important;
}
  padding:18px 28px!important;
  border-top:1px solid rgba(0,0,0,.16)!important;
}
/* remove all menu icons/squares generated by older CSS */
.pn-side-nav .menu-item a:before,
.side-menu .sub-menu a:before,
.side-menu i,
.side-menu svg,
.side-menu .menu-icon{
  display:none!important;
  content:none!important;
  width:0!important;
  height:0!important;
  flex-basis:0!important;
  background:none!important;
  box-shadow:none!important;
}
.pn-side-nav .menu-item a{
  justify-content:space-between!important;
  padding:13px 0!important;
  background:transparent!important;
  font-size:15px!important;
  line-height:1.15!important;
  letter-spacing:.025em!important;
  text-decoration:none!important;
}
.side-menu .is-open>a{
  color:#c8102e!important;
}
/* keep Teams dropdown, text-only */
.side-menu .menu-item-has-children>a:after{
  content:'⌄'!important;
  display:inline-block!important;
  margin-left:auto!important;
  font-size:17px!important;
}
.side-menu .menu-item-has-children:hover>a:after{transform:rotate(180deg)!important;color:#c8102e!important;}
.side-menu .sub-menu{
  position:static!important;
  margin:2px 0 10px 14px!important;
  padding:6px 0 6px 16px!important;
  border-left:3px solid #c8102e!important;
}
.side-menu .sub-menu a{
  font-size:13px!important;
  font-weight:850!important;
}
.side-menu .sub-menu a:hover{color:#c8102e!important;background:transparent!important;}
/* bottom section fixed to the bottom of the sidebar */
.qrl-side-actions,
.side-bottom.qrl-side-actions{
  margin-top:auto!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-bottom:0!important;
  padding:18px 22px 20px!important;
  border-top:1px solid rgba(0,0,0,.18)!important;
  background:rgba(255,255,255,.12)!important;
}
.qrl-side-search,
.qrl-login-link{
  min-height:54px!important;
  /*border-radius:14px!important;*/
  border:1px solid rgba(0,0,0,.18)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.10)!important;
}
.qrl-login-link span[aria-hidden="true"]{display:none!important;}
  justify-content:center!important;
  padding:0 16px!important;
}
  .pn-side-nav{height:100vh!important;min-height:100vh!important;overflow:hidden!important;}
  .side-menu{overflow-y:auto!important;padding:20px 28px 10px!important;}
  .side-more{padding:18px 28px!important;}
  .qrl-side-actions,.side-bottom.qrl-side-actions{display:grid!important;margin-top:auto!important;}
  .side-menu .menu-item-has-children>.sub-menu{position:static!important;min-width:0!important;margin:2px 0 10px 14px!important;padding:6px 0 6px 16px!important;border-left:3px solid #c8102e!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;}
}

/* PNGRFL v43 FINAL HOMEPAGE YELLOW FIX
   This block must stay at the very bottom of style.css.
   It targets the actual homepage selectors used by header.php and inc/nrl-experience.php. */
  --pngrfl-yellow:#ffc928;
  --pngrfl-gold:#ffc928;
  --pngrfl-red:#c8102e;
  --pngrfl-black:#111111;
  --pngrfl-white:#ffffff;
}

/* 1) HOMEPAGE TOP DRAW / MATCH STRIP - force yellow background */
body.home .score-strip,
body.front-page .score-strip,
body.home .score-scroll,
body.front-page .score-scroll,
body.home .pngrfl-nrl-ticker,
body.front-page .pngrfl-nrl-ticker,
body.home .ticker-track,
body.front-page .ticker-track{
  background:#ffc928 !important;
  background-color:#ffc928 !important;
  /*color:#111111 !important;*/
}

body.front-page .score-strip{
  height:96px !important;
  min-height:120px !important;
  max-height:150px !important;
  /*border-bottom:1px solid rgba(0,0,0,.12) !important;*/
  box-shadow:none !important;
  overflow:hidden !important;
}

body.front-page .score-scroll{
  min-height:96px !important;
  padding:8px 24px !important;
  gap:14px !important;
  align-items:center !important;
}

body.home .score-card,
body.front-page .score-card,
body.home .draw-score-card,
body.front-page .draw-score-card,
body.home .ticker-fixture,
body.front-page .ticker-fixture{
  color:#111111 !important;
  min-width:160px !important;
  max-width:190px !important;
  height:78px !important;
  min-height:78px !important;
  padding:6px 10px !important;
  border-radius:0 !important;
  border-right:1px solid rgba(0,0,0,.18) !important;
  text-decoration:none !important;
}

body.home .score-card small,
body.front-page .score-card small,
body.home .draw-score-card small,
body.front-page .draw-score-card small,
body.home .ticker-fixture small,
body.front-page .ticker-fixture small{
  font-size:10px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  line-height:1.15 !important;
}

body.home .score-card b,
body.front-page .score-card b,
body.home .score-card span,
body.front-page .score-card span,
body.home .draw-score-card b,
body.front-page .draw-score-card b,
body.home .draw-score-card span,
body.front-page .draw-score-card span,
body.home .ticker-fixture span,
body.front-page .ticker-fixture span{
  font-size:12px !important;
  font-weight:850 !important;
}

body.home .score-card img,
body.front-page .score-card img,
body.home .draw-score-card img,
body.front-page .draw-score-card img,
body.home .ticker-fixture img,
body.front-page .ticker-fixture img{
  width:18px !important;
  height:18px !important;
  object-fit:contain !important;
  margin-right:5px !important;
}

body.home .score-card em,
body.front-page .score-card em,
body.home .draw-score-card em,
body.front-page .draw-score-card em,
body.home .ticker-fixture em,
body.front-page .ticker-fixture em{
  display:inline-flex !important;
  justify-content:center !important;
  width:auto !important;
  margin-top:5px !important;
  padding:5px 10px !important;
  background:#ffffff !important;
  border:1px solid #c8102e !important;
  border-radius:4px !important;
  font-style:normal !important;
}

/* 2) HOMEPAGE LATEST NEWS RIGHT RAIL - force yellow/gold background */
body.home .qrl-full-news-rail,
body.front-page .qrl-full-news-rail,
body.home .pngrfl-nrl-news-rail,
body.front-page .pngrfl-nrl-news-rail,
body.home .qrl-news-column,
body.front-page .qrl-news-column{
  border-left:1px solid rgba(0,0,0,.15) !important;
}

body.home .qrl-full-rail-head strong,
body.front-page .qrl-full-rail-head strong,
body.home .qrl-full-news-card h3,
body.front-page .qrl-full-news-card h3,
body.home .qrl-news-row h3,
body.front-page .qrl-news-row h3,
body.home .nrl-rail-news h3,
body.front-page .nrl-rail-news h3{
}

body.home .qrl-full-news-card,
body.front-page .qrl-full-news-card,
body.home .qrl-news-row,
body.front-page .qrl-news-row,
body.home .nrl-rail-news,
body.front-page .nrl-rail-news{
  border-bottom:1px solid rgba(0,0,0,.15) !important;
}

body.home .qrl-full-rail-head a,
body.front-page .qrl-full-rail-head a,
body.home .qrl-view-all,
body.front-page .qrl-view-all,
body.home .nrl-rail-news small,
body.front-page .nrl-rail-news small,
body.home .qrl-full-news-card small,
body.front-page .qrl-full-news-card small,
body.home .qrl-news-row small,
body.front-page .qrl-news-row small{
  color:#c8102e !important;
}

/* 3) Keep hero image clear while using yellow overlay */
body.home .qrl-full-hero-gradient,
body.front-page .qrl-full-hero-gradient{
  /*background:linear-gradient(45deg,rgba(255,201,40,.92) 0%,rgba(255,201,40,.68) 34%,rgba(255,201,40,.26) 62%,rgba(255,201,40,0) 100%) !important;*/
}

/* =========================================
   FORCE YELLOW BACKGROUND FIX
========================================= */

/* MAIN PAGE WRAPPERS
body,
.site,
.site-content,
.content-area,
.main-content,
.page-wrapper,
.home-wrapper,
.homepage-wrapper {
    background: #ffc928 !important;
}*/

/* DRAW STRIP OUTER AREA */
.top-draw-strip,
.pngrfl-draw-strip,
.draw-strip,
.draw-strip-wrapper,
.draw-container {
}

/* HERO WRAPPERS */
.pngrfl-hero,
.hero-section,
.hero-wrapper,
.home-hero,
.hero-container {
}

/* REMOVE WHITE GAPS */
.hero-grid,
.hero-layout,
.hero-inner,
.home-grid,
.home-layout {
}

/* RIGHT NEWS COLUMN */
.latest-news-rail,
.home-latest-news,
.latest-news-sidebar {
}

/* TOP BORDER AREAS */
.header-spacer,
.hero-spacer,
.draw-spacer {
}

/* REMOVE WHITE BODY STRIPS */
section,
main,
article {
    background-color: transparent !important;
}

/* ===== V46 DRAW STRIP FULL VISIBILITY FIX ===== */

    min-height: 150px !important;
    height: auto !important;
    overflow: visible !important;
    /*padding-bottom: 12px !important;*/
    position: relative !important;
    z-index: 50 !important;
}

.top-draw-strip .fixture-card,
.pngrfl-draw-strip .fixture-card,
.draw-strip .fixture-card {
}

.fixture-card .match-centre-btn,
.fixture-card .match-centre,
.fixture-card button {
    margin-top: 6px !important;
    z-index: 5 !important;
}

.hero-wrapper {
    margin-top: 14px !important;
    border-top: 4px solid #ffc928 !important;
    border-bottom: 4px solid #ffc928 !important;
}

}

/* FINAL REMOVE OUTER WHITE BORDERS */
html,
#page,
.pngrfl-main,
.pngrfl-layout,
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* REMOVE TOP/LEFT/RIGHT PAGE GUTTERS */
body {
    overflow-x: hidden !important;
}

/* MAIN CONTENT BESIDE SIDEBAR */
.main-content {
    width: calc(100vw - 200px) !important;
    max-width: calc(100vw - 200px) !important;
    margin-left: 200px !important;
}

/* REMOVE SECTION GAPS */
.latest-videos-section {
}

/* DRAW STRIP FULL WIDTH */
.draw-strip {
    width: 100% !important;
    max-width: 100% !important;
}

/* HERO + NEWS FULL WIDTH */
.hero-inner {
}

/* IF A WHITE BORDER IS FROM ELEMENTOR */
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
    max-width: none !important;
}

   PNGRFL FINAL FULL-WIDTH HOMEPAGE FIX
   Added after all earlier rules so it overrides Elementor/theme padding.
   Fixes the white/yellow gutters around the top draw strip and hero.

  --pn-sidebar-width: 220px;
  --pn-sidebar-border: 8px;
  --pn-content-offset: calc(var(--pn-sidebar-width) + var(--pn-sidebar-border));
  --pn-yellow: #ffc928;
  --pn-black: #111111;
}

/* Remove browser/theme gutters */
  background: var(--pn-yellow) !important;
}

/* Fixed sidebar width + red divider */
body.home .pn-side-nav,
body.front-page .pn-side-nav {
  left: 0 !important;
  top: 0 !important;
  width: var(--pn-sidebar-width) !important;
  border-right: var(--pn-sidebar-border) solid var(--pn-red) !important;
}

/* Main content starts immediately after sidebar + red divider */
body.home .site-shell,
body.front-page .site-shell {
  margin-left: var(--pn-content-offset) !important;
  width: calc(100vw - var(--pn-content-offset)) !important;
  max-width: calc(100vw - var(--pn-content-offset)) !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Kill all wrapper spacing around homepage content */
body.home #page,
body.front-page #page,
body.home .site,
body.front-page .site,
body.home .site-main,
body.front-page .site-main,
body.home .site-content,
body.front-page .site-content,
body.home .content-area,
body.front-page .content-area,
body.home .main-content,
body.front-page .main-content,
body.home .pngrfl-main,
body.front-page .pngrfl-main,
body.home .pngrfl-layout,
body.front-page .pngrfl-layout,
body.home .home-wrapper,
body.front-page .home-wrapper,
body.home .homepage-wrapper,
body.front-page .homepage-wrapper,
body.home .qrl-home-exact,
body.front-page .qrl-home-exact,
body.home .pngrfl-elementor-home,
body.front-page .pngrfl-elementor-home,
body.home .pngrfl-builder-page,
body.front-page .pngrfl-builder-page,
body.home .entry-content,
body.front-page .entry-content,
body.home .page-content,
body.front-page .page-content,
body.home .post-content,
body.front-page .post-content {
}

/* Elementor creates the visible gutters with column padding. Remove them. */
body.home .elementor,
body.front-page .elementor,
body.home .elementor-section,
body.front-page .elementor-section,
body.home .elementor-container,
body.front-page .elementor-container,
body.home .elementor-column,
body.front-page .elementor-column,
body.home .elementor-widget-wrap,
body.front-page .elementor-widget-wrap,
body.home .elementor-widget-container,
body.front-page .elementor-widget-container,
body.home .elementor-element,
body.front-page .elementor-element,
body.home .elementor-element-populated,
body.front-page .elementor-element-populated,
body.home .e-con,
body.front-page .e-con,
body.home .e-con-inner,
body.front-page .e-con-inner {
  --widgets-spacing: 0px 0px !important;
  --container-widget-width: 100% !important;
  --container-widget-flex-grow: 1 !important;
}

/* Top draw strip: full width, no inner left/right gutter, keep cards visible */
body.front-page .score-strip {
  display: block !important;
  min-height: 112px !important;
  top: auto !important;
  z-index: 20 !important;
}

body.front-page .ticker-track {
  overflow-x: auto !important;
  overflow-y: visible !important;
}

/* Match cards keep their spacing internally, not by creating page gutters */
body.front-page .ticker-fixture {
  min-height: 96px !important;
  padding: 10px 16px !important;
  border-left: 1px solid rgba(0,0,0,.16) !important;
  border-right: 0 !important;
}

/* Hero + latest news rail edge-to-edge */
body.home .qrl-full-hero,
body.front-page .qrl-full-hero,
body.home .qrl-hero-layout,
body.front-page .qrl-hero-layout,
body.home .pngrfl-nrl-home-grid,
body.front-page .pngrfl-nrl-home-grid {
  gap: 0 !important;
}

body.home .qrl-full-hero-main,
body.front-page .qrl-full-hero-main,
body.home .qrl-full-hero-link,
body.front-page .qrl-full-hero-link,
body.home .qrl-full-hero-media,
body.front-page .qrl-full-hero-media {
}

body.front-page .qrl-full-hero-link {
  min-height: 520px !important;
}

body.front-page .qrl-news-column {
  padding: 26px 28px !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-left: 1px solid rgba(0,0,0,.15) !important;
}

/* Remove section borders that look like white gutters */
body.home section,
body.front-page section,
body.home main,
body.front-page main,
body.home article,
body.front-page article {
}

/* Mobile/tablet: sidebar becomes full width, so content offset must disappear */
@media (max-width: 820px) {
    margin-left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
  }

    border-bottom: 6px solid var(--pn-red) !important;
  }

    min-height: 100px !important;
  }
}


/* =========================================================
   PNGRFL v50 — DRAW STRIP + HERO EDGE-TO-EDGE ONLY
   Purpose: remove left/top/right gutters and borders from
   homepage top draw section and hero section only.
   ========================================================= */

:root{
  --pn-sidebar-width: 220px;
  --pn-sidebar-red-border: 8px;
  --pn-yellow: #ffc928;
  --pn-red: #c8102e;
}

/* Homepage content begins exactly after sidebar. */
body.home .site-shell,
body.front-page .site-shell{
  margin-left: var(--pn-sidebar-width) !important;
  width: calc(100vw - var(--pn-sidebar-width)) !important;
  max-width: calc(100vw - var(--pn-sidebar-width)) !important;
  padding: 0 !important;
  border: 0 !important;
  background: var(--pn-yellow) !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

/* Remove only the parent spacing that affects draw + hero. */
body.home .site-main,
body.front-page .site-main,
body.home .qrl-home-exact,
body.front-page .qrl-home-exact,
body.home .entry-content,
body.front-page .entry-content,
body.home .pngrfl-elementor-home,
body.front-page .pngrfl-elementor-home,
body.home .pngrfl-builder-page,
body.front-page .pngrfl-builder-page{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  width: 100% !important;
  max-width: none !important;
  background: var(--pn-yellow) !important;
  box-sizing: border-box !important;
}

/* TOP DRAW STRIP: no top/left/right gutter or border. */
body.home .score-strip,
body.front-page .score-strip,
body.home .score-scroll,
body.front-page .score-scroll,
body.home .pngrfl-nrl-ticker,
body.front-page .pngrfl-nrl-ticker,
body.home .ticker-track,
body.front-page .ticker-track,
body.home .top-draw-strip,
body.front-page .top-draw-strip,
body.home .pngrfl-draw-strip,
body.front-page .pngrfl-draw-strip,
body.home .draw-strip,
body.front-page .draw-strip{
  margin-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  max-width: none !important;
  background: var(--pn-yellow) !important;
  box-sizing: border-box !important;
}

body.home .score-strip,
body.front-page .score-strip,
body.home .top-draw-strip,
body.front-page .top-draw-strip,
body.home .pngrfl-draw-strip,
body.front-page .pngrfl-draw-strip,
body.home .draw-strip,
body.front-page .draw-strip{
  min-height: 112px !important;
  height: auto !important;
  overflow: visible !important;
  position: relative !important;
  top: auto !important;
}

body.home .score-scroll,
body.front-page .score-scroll{
  min-height: 112px !important;
  height: auto !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
}

/* HERO SECTION: no top/left/right gutter or border. */
body.home .qrl-full-hero,
body.front-page .qrl-full-hero,
body.home .qrl-hero-layout,
body.front-page .qrl-hero-layout,
body.home .pngrfl-nrl-home-grid,
body.front-page .pngrfl-nrl-home-grid,
body.home .hero-section,
body.front-page .hero-section,
body.home .home-hero,
body.front-page .home-hero,
body.home .pngrfl-hero,
body.front-page .pngrfl-hero{
  margin-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  max-width: none !important;
  background: var(--pn-yellow) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  gap: 0 !important;
}

/* Hero inner containers also touch edges. */
body.home .qrl-full-hero-main,
body.front-page .qrl-full-hero-main,
body.home .qrl-full-hero-link,
body.front-page .qrl-full-hero-link,
body.home .qrl-full-hero-media,
body.front-page .qrl-full-hero-media,
body.home .nrl-hero-article,
body.front-page .nrl-hero-article,
body.home .hero-image-wrap,
body.front-page .hero-image-wrap,
body.home .hero-media,
body.front-page .hero-media{
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Elementor gutter reset for only containers wrapping draw/hero. */
body.home .elementor-section,
body.front-page .elementor-section,
body.home .elementor-container,
body.front-page .elementor-container,
body.home .elementor-column,
body.front-page .elementor-column,
body.home .elementor-widget-wrap,
body.front-page .elementor-widget-wrap,
body.home .elementor-widget-container,
body.front-page .elementor-widget-container,
body.home .elementor-element-populated,
body.front-page .elementor-element-populated,
body.home .e-con,
body.front-page .e-con,
body.home .e-con-inner,
body.front-page .e-con-inner{
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: none !important;
}

/* Mobile: sidebar is no longer left-fixed, so content becomes full viewport. */
@media(max-width:820px){
  body.home .site-shell,
  body.front-page .site-shell{
    margin-left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
  }
}

/* =============================================================
   PNGRFL FINAL — Clean text-only sidebar menu (no icons/boxes)
   Must remain at the very bottom of style.css
   ============================================================= */

/* 0. Force sidebar and menu to always be vertical column */
.pn-side-nav {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
.side-menu,
.side-menu ul,
.side-menu ol,
.side-menu-list {
  display: flex !important;
  flex-direction: column !important;
  overflow-x: unset !important;
  overflow-y: unset !important;
  white-space: normal !important;
  gap: 0 !important;
}

/* 1. Nuke every ::before icon / square / bullet — all versions */
.pn-side-nav .menu-item a::before,
.pn-side-nav .menu-item a:before,
.side-menu a::before,
.side-menu a:before,
.side-menu li a::before,
.side-menu li a:before,
.side-menu .sub-menu a::before,
.side-menu .sub-menu a:before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  flex: none !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
}

/* 2. Clean link styling — matches the screenshot */
.pn-side-nav .menu-item a,
.side-menu a,
.side-menu li a {
  display: block !important;
  padding: 12px 26px !important;
  color: #111111 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  line-height: 1.2 !important;
  border-radius: 0 !important;
  border: none !important;
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
  transition: background .15s ease, color .15s ease !important;
  gap: 0 !important;
  flex: unset !important;
  white-space: normal !important;
  min-height: unset !important;
}

/* 3. Hover / active state — red background, white text */
.pn-side-nav .menu-item a:hover,
.side-menu a:hover,
.side-menu li a:hover,
.side-menu .current-menu-item > a,
.side-menu .current_page_item > a,
.side-menu a[aria-current="page"] {
  background: #c8102e !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
}

/* 4. Sub-menu items (Origin, History, Shop, Membership) */
.side-menu .sub-menu {
  display: none !important;
  margin: 0 0 6px 20px !important;
  padding: 4px 0 !important;
  border-left: 3px solid #c8102e !important;
}
.side-menu .menu-item-has-children.is-open > .sub-menu,
.side-menu .menu-item-has-children:hover > .sub-menu {
  display: block !important;
}
.side-menu .sub-menu a,
.side-menu .sub-menu li a {
  padding: 9px 16px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #222 !important;
  background: transparent !important;
}
.side-menu .sub-menu a:hover {
  color: #c8102e !important;
  background: transparent !important;
}

/* 5. TEAMS dropdown chevron — keep that */
.side-menu .menu-item-has-children > a::after {
  content: '›' !important;
  display: inline-block !important;
  float: right !important;
  font-size: 16px !important;
  line-height: 1 !important;
  transform: rotate(90deg) !important;
  transition: transform .2s ease !important;
}
.side-menu .menu-item-has-children.is-open > a::after {
  transform: rotate(270deg) !important;
}

/* National Teams badges — QRL-style dark maroon tile cards */
.elementor-element-f3a4d5b {
  gap: 16px !important;
}
.elementor-element-f3a4d5b .e-con-inner {
  gap: 16px !important;
  justify-content: center !important;
}
.elementor-element-f3a4d5b .elementor-cta {
  background: #5b1030 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  min-height: 140px !important;
  position: relative !important;
}
.elementor-element-f3a4d5b .elementor-cta__bg-wrapper {
  display: none !important;
}
.elementor-element-f3a4d5b .elementor-cta__content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px 20px 20px !important;
  min-height: 140px !important;
  text-align: center !important;
}
.elementor-element-f3a4d5b .elementor-cta__image img {
  max-width: 110px !important;
  max-height: 90px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}
.elementor-element-f3a4d5b .elementor-ribbon {
  position: static !important;
  display: block !important;
  width: 100% !important;
  background: transparent !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-element-f3a4d5b .elementor-ribbon-inner {
  background: transparent !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 8px 0 0 !important;
  display: block !important;
  white-space: nowrap !important;
}
@media(max-width:760px){
  .elementor-element-f3a4d5b .elementor-cta{min-height:110px!important;}
  .elementor-element-f3a4d5b .elementor-cta__image img{max-width:80px!important;max-height:64px!important;}
}
/* ── QRL-style Watch page — PNGRFL yellow theme ──────────────────────── */
.pn-watch-page {
  background: #ffc928;
  min-height: 80vh;
  padding-bottom: 60px;
}

/* ── Page header ─────────────────────────────────────────────────────── */
.pn-watch-header {
  padding: 36px clamp(20px,5vw,64px) 28px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.pn-watch-heading {
  color: #111;
  font-size: clamp(34px,5vw,56px);
  font-weight: 900;
  letter-spacing: -.03em;
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
}
.pn-watch-slash {
  color: var(--pn-red, #c8102e);
  font-weight: 900;
}

/* Topic dropdown */
.pn-watch-select-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.pn-watch-select {
  -webkit-appearance: none;
  appearance: none;
  background: rgba(255,255,255,.88);
  border: 1.5px solid rgba(0,0,0,.18);
  border-radius: 6px;
  padding: 10px 40px 10px 14px;
  font-size: 14px;
  font-weight: 600;
  color: #111;
  cursor: pointer;
  min-width: 180px;
  font-family: inherit;
  transition: background .15s, border-color .15s;
}
.pn-watch-select:hover { background: #fff; border-color: rgba(0,0,0,.3); }
.pn-watch-select-chevron {
  position: absolute;
  right: 13px;
  color: #555;
  pointer-events: none;
  font-size: 16px;
  line-height: 1;
}

/* ── Sections ─────────────────────────────────────────────────────────── */
.pn-watch-section {
  padding: 0 clamp(20px,5vw,64px) 40px;
}
.pn-watch-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 0 18px;
  border-top: 2px solid rgba(0,0,0,.15);
}
.pn-watch-section-title {
  font-size: clamp(17px,2.2vw,24px);
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: -.015em;
  margin: 0;
  line-height: 1;
}
.pn-watch-view-more {
  font-size: 13px;
  font-weight: 700;
  color: #111;
  text-decoration: none !important;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity .15s;
}
.pn-watch-view-more:hover { opacity: .65; }

/* ── Cards — base ────────────────────────────────────────────────────── */
.pn-watch-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none !important;
  color: #111;
  box-shadow: 0 2px 10px rgba(0,0,0,.12);
  transition: box-shadow .2s ease, transform .18s ease;
}
.pn-watch-card:hover {
  box-shadow: 0 10px 32px rgba(0,0,0,.22);
  transform: translateY(-2px);
}

/* Thumbnail */
.pn-watch-card-thumb {
  position: relative;
  background-size: cover;
  background-position: center;
  aspect-ratio: 16/9;
  overflow: hidden;
  flex-shrink: 0;
}

/* Bottom gradient + category badge on thumbnail */
.pn-watch-thumb-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 28px 10px 8px;
  background: linear-gradient(to top, rgba(0,0,0,.6) 0%, transparent 100%);
  display: flex;
  align-items: flex-end;
}
.pn-watch-cat-badge {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 3px 8px;
  border-radius: 2px;
}

/* Card body */
.pn-watch-card-body {
  padding: 12px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
}
.pn-watch-cat-label {
  font-size: 10px;
  font-weight: 800;
  color: var(--pn-red, #c8102e);
  text-transform: uppercase;
  letter-spacing: .07em;
}
.pn-watch-card-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  color: #111;
  margin: 0;
}
.pn-watch-card-date {
  font-size: 11px;
  color: #888;
  margin-top: auto;
  padding-top: 4px;
}

/* ── Feature card (left of Latest Videos) ────────────────────────────── */
.pn-watch-card--feature {
  height: 100%;
}
.pn-watch-card--feature .pn-watch-card-thumb {
  aspect-ratio: unset;
  flex: 1;
  min-height: 200px;
}
.pn-watch-card--feature .pn-watch-card-title {
  font-size: 17px;
  line-height: 1.25;
}

/* ── Latest Videos: 1 large left + 2×2 right ────────────────────────── */
.pn-watch-latest-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: stretch;
}
.pn-watch-latest-right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 16px;
}

/* ── Category sections: 4-column grid ───────────────────────────────── */
.pn-watch-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .pn-watch-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .pn-watch-header { padding: 24px 16px 20px; gap: 14px; }
  .pn-watch-section { padding-left: 16px; padding-right: 16px; padding-bottom: 28px; }
  .pn-watch-latest-grid { grid-template-columns: 1fr; }
  .pn-watch-card--feature { height: auto; }
  .pn-watch-card--feature .pn-watch-card-thumb { aspect-ratio: 16/9; flex: unset; min-height: unset; }
  .pn-watch-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 480px) {
  .pn-watch-grid { grid-template-columns: 1fr; }
  .pn-watch-latest-right { grid-template-columns: 1fr; }
}

/* ── QRL-style Draw page ────────────────────────────────────────────────── */
.pn-draw-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 60px;
}

/* Title bar */
.pn-draw-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e0e0e0;
}
.pn-draw-heading {
  color: #111;
  font-size: clamp(28px,4vw,44px);
  font-weight: 900;
  letter-spacing: -.03em;
  margin: 0;
  line-height: 1;
}
.pn-draw-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 6px;
  font-weight: 900;
}

/* Competition bar */
.pn-draw-competition-bar {
  background: var(--pn-red, #c8102e);
  padding: 10px clamp(20px,5vw,64px);
  display: flex;
  align-items: center;
  gap: 16px;
}
.pn-draw-comp-label {
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

/* Round section */
.pn-draw-round {
  padding: 36px clamp(20px,5vw,64px) 0;
  max-width: 900px;
}
.pn-draw-round-header {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--pn-red, #c8102e);
}
.pn-draw-round-label {
  color: #111;
  font-size: 18px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.pn-draw-round-dates {
  color: #888;
  font-size: 13px;
  font-weight: 600;
}

/* Match list */
.pn-draw-match-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.pn-draw-match-item {
  margin: 0;
  padding: 0;
}

/* Match card */
.pn-draw-card {
  display: block;
  text-decoration: none !important;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  padding: 0;
  transition: transform .18s ease, box-shadow .18s ease;
  box-shadow: 0 2px 10px rgba(0,0,0,.08);
  border: 1px solid #e8e8e8;
  color: inherit;
}
.pn-draw-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.13);
  border-color: var(--pn-red, #c8102e);
}

/* Card meta: date + status */
.pn-draw-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px 10px;
  border-bottom: 1px solid #f0f0f0;
}
.pn-draw-card-datetime {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.pn-draw-day {
  color: #111;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.pn-draw-date {
  color: #666;
  font-size: 12px;
  font-weight: 600;
}
.pn-draw-time {
  color: #666;
  font-size: 12px;
  font-weight: 600;
}
.pn-draw-status {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 4px 10px;
  border-radius: 4px;
}
.pn-draw-status--live {
  background: var(--pn-red, #c8102e);
  color: #fff;
  display: flex;
  align-items: center;
  gap: 6px;
}
.pn-draw-live-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
  animation: pnDrawPulse 1s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes pnDrawPulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:.4; transform:scale(.7); }
}
.pn-draw-status--ft {
  background: #f0f0f0;
  color: #555;
}

/* Teams row */
.pn-draw-teams {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 20px 20px 16px;
  gap: 16px;
}
.pn-draw-team {
  display: flex;
  align-items: center;
  gap: 14px;
}
.pn-draw-team--home {
  justify-content: flex-start;
}
.pn-draw-team--away {
  justify-content: flex-end;
  flex-direction: row-reverse;
}
.pn-draw-team-logo {
  width: 52px;
  height: 52px;
  object-fit: contain;
  flex-shrink: 0;
}
.pn-draw-team-name {
  color: #111;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
}
.pn-draw-score {
  font-size: 28px;
  font-weight: 900;
  color: #111;
  line-height: 1;
  min-width: 36px;
  text-align: center;
}
.pn-draw-centre {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  min-width: 60px;
}
.pn-draw-vs {
  color: #bbb;
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.pn-draw-kickoff {
  color: #aaa;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
  white-space: nowrap;
}

/* Card footer: venue + CTA */
.pn-draw-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px 14px;
  border-top: 1px solid #f0f0f0;
}
.pn-draw-venue {
  color: #888;
  font-size: 12px;
  font-weight: 600;
}
.pn-draw-cta {
  color: var(--pn-red, #c8102e);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  transition: color .15s;
}
.pn-draw-card:hover .pn-draw-cta {
  color: #111;
}

/* Responsive */
@media(max-width:600px) {
  .pn-draw-round { padding-left: 16px; padding-right: 16px; }
  .pn-draw-team-logo { width: 38px; height: 38px; }
  .pn-draw-team-name { font-size: 13px; }
  .pn-draw-score { font-size: 22px; }
  .pn-draw-teams { padding: 14px 14px 12px; gap: 10px; }
  .pn-draw-centre { min-width: 44px; }
  .pn-draw-card-meta, .pn-draw-card-footer { padding-left: 14px; padding-right: 14px; }
}

/* ── QRL-style News page ────────────────────────────────────────────────── */
.pn-news-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 60px;
}

/* Title bar */
.pn-news-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e0e0e0;
}
.pn-news-heading {
  color: #111;
  font-size: clamp(28px,4vw,44px);
  font-weight: 900;
  letter-spacing: -.03em;
  margin: 0;
  line-height: 1;
}
.pn-news-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 6px;
  font-weight: 900;
}

/* Filter bar */
.pn-news-filter-bar {
  background: #fff;
  border-bottom: 1px solid #e8e8e8;
  padding: 16px clamp(20px,5vw,64px);
  position: sticky;
  top: 0;
  z-index: 20;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.pn-news-filter-inner {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.pn-news-filter-label {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #555;
  white-space: nowrap;
}
.pn-news-select-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.pn-news-select {
  appearance: none;
  -webkit-appearance: none;
  background: #fff;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  padding: 9px 40px 9px 14px;
  font-size: 14px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
  transition: border-color .15s, box-shadow .15s;
  min-width: 180px;
  font-family: inherit;
}
.pn-news-select:focus {
  outline: none;
  border-color: var(--pn-red, #c8102e);
  box-shadow: 0 0 0 3px rgba(200,16,46,.12);
}
.pn-news-select:hover {
  border-color: #bbb;
}
.pn-news-select-chevron {
  position: absolute;
  right: 12px;
  font-size: 18px;
  color: #888;
  pointer-events: none;
  line-height: 1;
}
.pn-news-filter-count {
  font-size: 12px;
  color: #999;
  font-weight: 600;
  margin-left: auto;
}

/* News grid: 3 columns */
.pn-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 24px;
  padding: 32px clamp(20px,5vw,64px);
}

/* Card */
.pn-news-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #ebebeb;
  box-shadow: 0 2px 10px rgba(0,0,0,.07);
  transition: transform .2s ease, box-shadow .2s ease;
  color: inherit;
}
.pn-news-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,0,0,.12);
  border-color: #d8d8d8;
}
.pn-news-card-thumb {
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  transition: transform .35s ease;
}
.pn-news-card:hover .pn-news-card-thumb {
  transform: scale(1.04);
}
.pn-news-card-body {
  padding: 16px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.pn-news-tag {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 4px 9px;
  border-radius: 4px;
  align-self: flex-start;
}
.pn-news-card-title {
  color: #111;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  margin: 0;
  flex: 1;
}
.pn-news-card:hover .pn-news-card-title {
  color: var(--pn-red, #c8102e);
}
.pn-news-time {
  color: #999;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: auto;
}

/* Empty state */
.pn-news-empty {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  color: #888;
  font-size: 16px;
  font-weight: 600;
}

/* Responsive */
@media(max-width:1024px) {
  .pn-news-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media(max-width:600px) {
  .pn-news-grid { grid-template-columns: 1fr; gap: 16px; padding: 20px 16px; }
  .pn-news-filter-bar { padding: 12px 16px; }
  .pn-news-filter-count { display: none; }
}

/* ── QRL-style Players page ─────────────────────────────────────────────── */
.pn-players-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 64px;
}

/* Title bar */
.pn-players-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e8e8e8;
}
.pn-players-heading {
  font-size: clamp(24px,3vw,36px);
  font-weight: 900;
  color: #111;
  margin: 0;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.pn-players-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

/* Filter bar */
.pn-players-filter-bar {
  background: #fff;
  border-bottom: 2px solid #e8e8e8;
  padding: 0 clamp(20px,5vw,64px);
  position: sticky;
  top: 0;
  z-index: 50;
}
.pn-players-filter-inner {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  min-height: 68px;
}
.pn-players-filter-group {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.pn-players-filter-label {
  font-size: 10px;
  font-weight: 800;
  color: #999;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.pn-players-select-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.pn-players-chevron {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-55%);
  font-size: 14px;
  color: #555;
  pointer-events: none;
}
.pn-players-select {
  appearance: none;
  -webkit-appearance: none;
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 8px 34px 8px 14px;
  font-size: 14px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
  outline: none;
  min-width: 180px;
  transition: border-color .15s;
}
.pn-players-select:hover,
.pn-players-select:focus { border-color: var(--pn-red, #c8102e); }

.pn-players-count {
  margin-left: auto;
  font-size: 13px;
  font-weight: 700;
  color: #888;
}

/* Grid */
.pn-players-grid-wrap {
  padding: 32px clamp(20px,5vw,64px) 0;
}
.pn-players-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 20px;
}

/* Player card */
.pn-player-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 3px 14px rgba(0,0,0,.09);
  transition: transform .2s ease, box-shadow .2s ease;
}
.pn-player-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 32px rgba(0,0,0,.14);
}

/* Photo area — portrait aspect */
.pn-player-card-photo {
  position: relative;
  aspect-ratio: 3/4;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  overflow: hidden;
}

/* Dark gradient overlay at bottom */
.pn-player-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.65) 100%);
}

/* Initials avatar (no photo) */
.pn-player-card-initials {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 900;
  color: rgba(255,255,255,.55);
  letter-spacing: .03em;
  z-index: 1;
}

/* Jersey number */
.pn-player-card-number {
  position: absolute;
  top: 10px;
  left: 12px;
  font-size: 13px;
  font-weight: 900;
  color: #fff;
  background: rgba(0,0,0,.45);
  border-radius: 5px;
  padding: 2px 7px;
  z-index: 2;
  line-height: 1.4;
}

/* Team logo badge */
.pn-player-card-team-logo {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 34px;
  height: 34px;
  object-fit: contain;
  z-index: 2;
  filter: drop-shadow(0 1px 3px rgba(0,0,0,.4));
}

/* Info section below photo */
.pn-player-card-info {
  padding: 12px 14px 14px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  background: #fff;
}
.pn-player-card-name {
  font-size: 14px;
  font-weight: 800;
  color: #111;
  line-height: 1.25;
}
.pn-player-card:hover .pn-player-card-name {
  color: var(--pn-red, #c8102e);
}
.pn-player-card-pos {
  font-size: 11px;
  font-weight: 700;
  color: var(--pn-red, #c8102e);
  text-transform: uppercase;
  letter-spacing: .05em;
}
.pn-player-card-club {
  font-size: 11px;
  color: #888;
  font-weight: 600;
}

/* Empty state */
.pn-players-empty {
  text-align: center;
  padding: 60px 20px;
  color: #888;
  font-size: 16px;
  font-weight: 600;
}

/* Responsive */
@media(max-width:1200px) {
  .pn-players-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media(max-width:900px) {
  .pn-players-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .pn-players-select { min-width: 140px; }
}
@media(max-width:600px) {
  .pn-players-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  .pn-players-grid-wrap { padding-left: 16px; padding-right: 16px; }
  .pn-players-filter-bar { padding: 0 16px; }
  .pn-players-filter-inner { gap: 12px; min-height: auto; padding: 12px 0; }
  .pn-players-count { display: none; }
  .pn-players-select { min-width: 120px; font-size: 13px; }
}

/* ── QRL-style Pathways page ────────────────────────────────────────────── */
.pn-pathways-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 64px;
}

/* Title bar */
.pn-pathways-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e8e8e8;
}
.pn-pathways-heading {
  font-size: clamp(24px,3vw,36px);
  font-weight: 900;
  color: #111;
  margin: 0;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.pn-pathways-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

/* Short hero */
.pn-pathways-hero {
  width: 100%;
  height: clamp(180px, 28vw, 360px);
  background-size: cover;
  background-position: center 30%;
  background-repeat: no-repeat;
  position: relative;
}
.pn-pathways-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.42) 100%);
}

/* Intro text */
.pn-pathways-intro-wrap {
  padding: 36px clamp(20px,5vw,64px) 28px;
  max-width: 1200px;
}
.pn-pathways-intro {
  max-width: 720px;
}
.pn-pathways-intro p {
  font-size: 16px;
  line-height: 1.7;
  color: #444;
  margin: 0 0 14px;
}
.pn-pathways-intro p:last-child { margin-bottom: 0; }

/* Section title */
.pn-pathways-section-title-wrap {
  padding: 8px clamp(20px,5vw,64px) 0;
  border-top: 2px solid #ececec;
  margin-top: 12px;
}
.pn-pathways-section-inner {
  padding: 20px 0 0;
}
.pn-pathways-section-title {
  font-size: clamp(18px,2vw,24px);
  font-weight: 900;
  color: #111;
  letter-spacing: -.01em;
  text-transform: uppercase;
  margin: 0 0 24px;
}

/* Card grid */
.pn-pathways-grid-wrap {
  padding: 0 clamp(20px,5vw,64px) 40px;
}
.pn-pathways-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 24px;
}

/* Card */
.pn-pathway-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0,0,0,.10);
  transition: transform .22s ease, box-shadow .22s ease;
  color: inherit;
}
.pn-pathway-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 36px rgba(0,0,0,.15);
}

/* Card hero image */
.pn-pathway-card-hero {
  position: relative;
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}
.pn-pathway-card:hover .pn-pathway-card-hero {
  background-size: 107%;
}
.pn-pathway-card-img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.5) 100%);
}
.pn-pathway-card-icon {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

/* Card content */
.pn-pathway-card-content {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  background: #fff;
}
.pn-pathway-card-tag {
  display: inline-block;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 5px 12px;
  border-radius: 5px;
  align-self: flex-start;
  line-height: 1.3;
}
.pn-pathway-card-desc {
  font-size: 14px;
  line-height: 1.55;
  color: #555;
  margin: 0;
  flex: 1;
}
.pn-pathway-card-action {
  font-size: 13px;
  font-weight: 700;
  color: var(--pn-red, #c8102e);
  margin-top: 4px;
}
.pn-pathway-card:hover .pn-pathway-card-action { text-decoration: underline; }

/* Responsive */
@media(max-width:960px) {
  .pn-pathways-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media(max-width:600px) {
  .pn-pathways-grid { grid-template-columns: 1fr; gap: 16px; }
  .pn-pathways-grid-wrap, .pn-pathways-intro-wrap,
  .pn-pathways-section-title-wrap { padding-left: 16px; padding-right: 16px; }
}

/* ── QRL-style Ladder page ──────────────────────────────────────────────── */
.pn-ladder-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 60px;
}

/* Title bar */
.pn-ladder-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e8e8e8;
}
.pn-ladder-heading {
  font-size: clamp(24px,3vw,36px);
  font-weight: 900;
  color: #111;
  margin: 0;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.pn-ladder-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

/* Filter bar */
.pn-ladder-filter-bar {
  background: #fff;
  border-bottom: 2px solid #e8e8e8;
  padding: 0 clamp(20px,5vw,64px);
  position: sticky;
  top: 0;
  z-index: 50;
}
.pn-ladder-filter-inner {
  display: flex;
  align-items: center;
  gap: 0;
  flex-wrap: wrap;
  min-height: 64px;
}
.pn-ladder-filter-divider {
  width: 1px;
  height: 36px;
  background: #e0e0e0;
  margin: 0 4px;
}

/* Round selector */
.pn-ladder-round-selector {
  display: flex;
  align-items: center;
  gap: 0;
  padding: 0 16px 0 0;
}
.pn-ladder-arrow {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 26px;
  color: #111;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: background .15s;
  padding: 0;
  line-height: 1;
}
.pn-ladder-arrow:hover:not(:disabled) { background: #f0f0f0; }
.pn-ladder-arrow:disabled { color: #bbb; cursor: default; }

.pn-ladder-round-dropdown-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.pn-ladder-select-chevron {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-55%);
  font-size: 14px;
  color: #555;
  pointer-events: none;
}

/* Select elements */
.pn-ladder-select {
  appearance: none;
  -webkit-appearance: none;
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 9px 34px 9px 14px;
  font-size: 14px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
  outline: none;
  transition: border-color .15s;
}
.pn-ladder-select:hover, .pn-ladder-select:focus { border-color: var(--pn-red, #c8102e); }

.pn-ladder-select-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 0 0 20px;
}
.pn-ladder-filter-label {
  font-size: 11px;
  font-weight: 700;
  color: #888;
  text-transform: uppercase;
  letter-spacing: .06em;
  white-space: nowrap;
}
.pn-ladder-select-inner {
  position: relative;
  display: flex;
  align-items: center;
}

/* Competition banner */
.pn-ladder-comp-banner {
  background: var(--pn-red, #c8102e);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px clamp(20px,5vw,64px);
  gap: 12px;
}
.pn-ladder-comp-name {
  font-size: 13px;
  font-weight: 900;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.pn-ladder-comp-season {
  font-size: 12px;
  font-weight: 700;
  color: rgba(255,255,255,.8);
  letter-spacing: .04em;
}

/* Table */
.pn-ladder-table-wrap {
  padding: 0 clamp(20px,5vw,64px);
  overflow-x: auto;
}
.pn-ladder-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  min-width: 560px;
}
.pn-ladder-header-row th {
  padding: 12px 10px;
  text-align: center;
  font-size: 11px;
  font-weight: 900;
  color: #888;
  text-transform: uppercase;
  letter-spacing: .06em;
  border-bottom: 2px solid #eee;
}
.pn-lt-team, .pn-lt-team-name { text-align: left !important; }
.pn-lt-pos { width: 44px; text-align: center !important; }
.pn-lt-logo { width: 44px; text-align: center !important; padding: 0 6px !important; }
.pn-lt-pts { width: 54px; }

/* Rows */
.pn-ladder-row td {
  padding: 12px 10px;
  text-align: center;
  border-bottom: 1px solid #f0f0f0;
  vertical-align: middle;
}
.pn-ladder-row:hover td { background: #fafafa; }
.pn-ladder-row--finals td { background: #fff9f9; }
.pn-ladder-row--finals:hover td { background: #fff3f3; }
.pn-ladder-row--cutoff td {
  border-top: 3px solid var(--pn-red, #c8102e) !important;
}

/* Position number */
.pn-ladder-pos-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 800;
  background: #f0f0f0;
  color: #333;
}
.pn-ladder-row--finals .pn-ladder-pos-num {
  background: var(--pn-red, #c8102e);
  color: #fff;
}

/* Team logo */
.pn-ladder-team-logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}

/* Team name link */
.pn-ladder-team-link {
  font-weight: 700;
  color: #111;
  text-decoration: none;
  font-size: 14px;
  white-space: nowrap;
}
.pn-ladder-team-link:hover { color: var(--pn-red, #c8102e); text-decoration: none; }

/* Stats */
.pn-lt-pts strong {
  font-size: 15px;
  font-weight: 900;
  color: #111;
}
.pn-ladder-row--finals .pn-lt-pts strong { color: var(--pn-red, #c8102e); }

/* Legend */
.pn-ladder-legend {
  display: flex;
  gap: 20px;
  padding: 16px clamp(20px,5vw,64px);
  border-top: 1px solid #eee;
}
.pn-ladder-legend-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #666;
  font-weight: 600;
}
.pn-ladder-legend-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
}
.pn-ladder-legend-dot--finals { background: var(--pn-red, #c8102e); }

/* Responsive */
@media(max-width:768px) {
  .pn-ladder-filter-inner { gap: 0; }
  .pn-ladder-select-wrap { padding-left: 12px; }
  .pn-lt-hide-sm { display: none; }
  .pn-ladder-team-link { font-size: 13px; }
}
@media(max-width:500px) {
  .pn-ladder-filter-inner { flex-wrap: wrap; padding: 10px 0; gap: 8px; }
  .pn-ladder-filter-divider { display: none; }
  .pn-ladder-round-selector, .pn-ladder-select-wrap { padding: 0; }
  .pn-ladder-select-wrap { flex-direction: column; align-items: flex-start; gap: 4px; }
  .pn-ladder-table-wrap { padding: 0 12px; }
  .pn-ladder-comp-banner { flex-direction: column; align-items: flex-start; gap: 4px; }
}

/* ── QRL-style Homepage sections (below hero) ───────────────────────────── */

.pn-home-sections {
  background: #fff;
}

/* Section wrapper */
.pn-home-section {
  padding: 32px 25% 0;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 36px;
}

/* Section header */
.pn-home-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 20px;
}
.pn-home-section-title {
  font-size: clamp(18px,2.2vw,26px);
  font-weight: 900;
  color: #111;
  margin: 0;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.pn-home-slash {
  color: var(--pn-red, #c8102e);
}
.pn-home-view-all {
  font-size: 13px;
  font-weight: 700;
  color: var(--pn-red, #c8102e);
  text-decoration: none;
  white-space: nowrap;
}
.pn-home-view-all:hover { text-decoration: underline; }

/* ── l-two-big-four-small-grid — 2 feature + 4 compact ─── */
.pn-hc-two-big-four-small {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: 16px;
}
/* First 2 items are feature cards, span full column height */
.pn-hc-two-big-four-small .pn-hc-feature-card {
  grid-row: 1;
}
/* Next 4 compact cards sit below in a 4-col row */
.pn-hc-two-big-four-small .pn-hc-compact-card {
  grid-column: span 1;
}
/* Override grid for compact cards: they go in a 4-col subgrid */
.pn-hc-two-big-four-small {
  grid-template-columns: repeat(4, 1fr);
}
.pn-hc-two-big-four-small .pn-hc-feature-card {
  grid-column: span 2;
  grid-row: 1;
}
.pn-hc-two-big-four-small .pn-hc-compact-card {
  grid-row: 2;
  grid-column: span 1;
}

/* ── l-one-big-four-small-grid — 1 feature + 4 compact ─── */
.pn-hc-one-big-four-small {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  grid-template-rows: repeat(4, auto);
  gap: 16px;
}
.pn-hc-one-big-four-small .pn-hc-feature-card {
  grid-column: 1;
  grid-row: 1 / 5;
}
.pn-hc-one-big-four-small .pn-hc-compact-card {
  grid-column: 2;
}

/* ── Feature card ─────────────────────────────────────────── */
.pn-hc-feature-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 3px 14px rgba(0,0,0,.08);
  transition: transform .2s, box-shadow .2s;
  color: inherit;
}
.pn-hc-feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.13);
}
.pn-hc-feature-img {
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pn-hc-watermark {
  width: 80px;
  height: 80px;
  object-fit: contain;
  opacity: .4;
}
.pn-hc-feature-body {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.pn-hc-feature-title {
  font-size: 15px;
  font-weight: 800;
  color: #111;
  margin: 0;
  line-height: 1.35;
  flex: 1;
}
.pn-hc-feature-card:hover .pn-hc-feature-title { color: var(--pn-red, #c8102e); }

/* ── Compact card ─────────────────────────────────────────── */
.pn-hc-compact-card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  text-decoration: none !important;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,.07);
  border: 1px solid #ebebeb;
  transition: transform .2s, box-shadow .2s;
  color: inherit;
  gap: 0;
}
.pn-hc-compact-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(0,0,0,.11);
}
.pn-hc-compact-img {
  width: 100px;
  min-width: 100px;
  aspect-ratio: 4/3;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
}
.pn-hc-compact-body {
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}
.pn-hc-compact-title {
  font-size: 13px;
  font-weight: 700;
  color: #111;
  margin: 0;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.pn-hc-compact-card:hover .pn-hc-compact-title { color: var(--pn-red, #c8102e); }

/* Shared: lozenge tag + timestamp */
.pn-hc-lozenge {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 3px 8px;
  border-radius: 4px;
  align-self: flex-start;
  line-height: 1.4;
}
.pn-hc-timestamp {
  font-size: 11px;
  color: #999;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: auto;
  display: block;
}

/* View all row */
.pn-home-view-all-row {
  margin-top: 20px;
  text-align: center;
}
.pn-home-view-all-btn {
  display: inline-block;
  border: 2px solid var(--pn-red, #c8102e);
  color: var(--pn-red, #c8102e);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  padding: 10px 28px;
  border-radius: 6px;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.pn-home-view-all-btn:hover {
  background: var(--pn-red, #c8102e);
  color: #fff;
}

/* ── Promo Panel ──────────────────────────────────────────── */
.pn-home-promo-panel {
  position: relative;
  min-height: 340px;
  background-size: cover;
  background-position: center 30%;
  display: flex;
  align-items: center;
}
.pn-home-promo-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.55) 50%, rgba(0,0,0,.15) 100%);
}
.pn-home-promo-body {
  position: relative;
  z-index: 2;
  padding: 48px clamp(24px,5vw,64px);
  max-width: 560px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.pn-home-promo-tag {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--pn-gold, #ffc928);
}
.pn-home-promo-title {
  font-size: clamp(24px,3.5vw,42px);
  font-weight: 900;
  color: #fff;
  margin: 0;
  line-height: 1.08;
  letter-spacing: -.02em;
}
.pn-home-promo-text {
  font-size: 15px;
  color: rgba(255,255,255,.85);
  margin: 4px 0 8px;
  line-height: 1.55;
}
.pn-home-promo-ctas {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.pn-home-promo-btn {
  display: inline-block;
  padding: 11px 24px;
  border: 2px solid rgba(255,255,255,.7);
  border-radius: 6px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  text-decoration: none;
  transition: background .15s, border-color .15s;
}
.pn-home-promo-btn:hover {
  background: rgba(255,255,255,.15);
  border-color: #fff;
}
.pn-home-promo-btn--primary {
  background: var(--pn-red, #c8102e);
  border-color: var(--pn-red, #c8102e);
}
.pn-home-promo-btn--primary:hover {
  background: #a50e27;
  border-color: #a50e27;
}

/* ── Responsive ───────────────────────────────────────────── */
@media(max-width:960px) {
  .pn-hc-two-big-four-small {
    grid-template-columns: repeat(2, 1fr);
  }
  .pn-hc-two-big-four-small .pn-hc-feature-card { grid-column: span 1; }
  .pn-hc-two-big-four-small .pn-hc-compact-card { grid-row: auto; }
  .pn-hc-one-big-four-small {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }
  .pn-hc-one-big-four-small .pn-hc-feature-card { grid-column: span 2; grid-row: auto; }
  .pn-hc-one-big-four-small .pn-hc-compact-card { grid-column: span 1; }
}
@media(max-width:600px) {
  .pn-hc-two-big-four-small,
  .pn-hc-one-big-four-small {
    grid-template-columns: 1fr;
  }
  .pn-hc-two-big-four-small .pn-hc-feature-card,
  .pn-hc-one-big-four-small .pn-hc-feature-card { grid-column: 1; grid-row: auto; }
  .pn-hc-compact-img { width: 80px; min-width: 80px; }
  .pn-home-promo-panel { min-height: 260px; }
  .pn-home-section { padding-left: 16px; padding-right: 16px; }
}

/* ── QRL-style Search page ──────────────────────────────────────────────── */
.pn-search-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 64px;
}

/* Title bar */
.pn-search-title-bar {
  background: #f5f5f5;
  padding: 32px clamp(20px,5vw,64px) 28px;
  border-bottom: 1px solid #e8e8e8;
}
.pn-search-heading {
  font-size: clamp(24px,3vw,36px);
  font-weight: 900;
  color: #111;
  margin: 0;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.pn-search-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

/* Search input section */
.pn-search-input-section {
  padding: 40px clamp(20px,5vw,64px) 32px;
  background: #fff;
  border-bottom: 1px solid #ebebeb;
}
.pn-search-label {
  display: block;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #888;
  margin-bottom: 12px;
}
.pn-search-form {
  max-width: 760px;
}
.pn-search-input-wrap {
  display: flex;
  align-items: center;
  gap: 0;
  background: #f5f5f5;
  border: 2px solid #e0e0e0;
  border-radius: 10px;
  padding: 6px 6px 6px 16px;
  transition: border-color .15s;
}
.pn-search-input-wrap:focus-within {
  border-color: var(--pn-red, #c8102e);
  background: #fff;
}
.pn-search-input-icon {
  width: 22px;
  height: 22px;
  color: #888;
  flex-shrink: 0;
  margin-right: 10px;
}
.pn-search-input {
  flex: 1;
  border: none;
  background: transparent;
  font-size: 18px;
  font-weight: 600;
  color: #111;
  outline: none;
  padding: 8px 0;
  min-width: 0;
}
.pn-search-input::placeholder { color: #aaa; font-weight: 400; }
.pn-search-clear {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #888;
  font-size: 14px;
  text-decoration: none;
  border-radius: 50%;
  transition: background .15s, color .15s;
  flex-shrink: 0;
}
.pn-search-clear:hover { background: #e0e0e0; color: #111; }
.pn-search-submit {
  background: var(--pn-red, #c8102e);
  color: #fff;
  border: none;
  border-radius: 7px;
  padding: 10px 22px;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition: background .15s;
  flex-shrink: 0;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.pn-search-submit:hover { background: #a50e27; }

/* Trending section */
.pn-search-trending-wrap {
  padding: 36px clamp(20px,5vw,64px);
}
.pn-search-trending-inner {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  flex-wrap: wrap;
}
.pn-search-trending-label {
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #888;
  white-space: nowrap;
  padding-top: 8px;
}
.pn-search-trending-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.pn-search-trending-pills--centered {
  justify-content: center;
  margin-top: 20px;
}
.pn-search-pill {
  display: inline-block;
  padding: 8px 16px;
  background: #f0f0f0;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  color: #333;
  text-decoration: none;
  transition: background .15s, color .15s;
  border: 1px solid #e0e0e0;
}
.pn-search-pill:hover {
  background: var(--pn-red, #c8102e);
  color: #fff;
  border-color: var(--pn-red, #c8102e);
}

/* Filter + sort bar */
.pn-search-filter-bar {
  background: #fff;
  border-bottom: 2px solid #ebebeb;
  position: sticky;
  top: 0;
  z-index: 40;
}
.pn-search-filter-inner {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 0 clamp(20px,5vw,64px);
  flex-wrap: wrap;
}

/* Type tabs */
.pn-search-tabs {
  display: flex;
  gap: 0;
}
.pn-search-tab {
  display: inline-block;
  padding: 18px 20px;
  font-size: 14px;
  font-weight: 700;
  color: #666;
  text-decoration: none;
  border-bottom: 3px solid transparent;
  transition: color .15s, border-color .15s;
  white-space: nowrap;
}
.pn-search-tab:hover { color: #111; }
.pn-search-tab--active {
  color: #111;
  border-bottom-color: var(--pn-red, #c8102e);
  font-weight: 900;
}

/* Sort dropdown */
.pn-search-sort-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.pn-search-sort-label {
  font-size: 11px;
  font-weight: 800;
  color: #888;
  text-transform: uppercase;
  letter-spacing: .06em;
  white-space: nowrap;
}
.pn-search-select-wrap {
  position: relative;
}
.pn-search-select {
  appearance: none;
  -webkit-appearance: none;
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 8px 32px 8px 12px;
  font-size: 13px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
  outline: none;
}
.pn-search-select:focus { border-color: var(--pn-red, #c8102e); }
.pn-search-select-chevron {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-55%);
  font-size: 14px;
  color: #555;
  pointer-events: none;
}

/* Result count bar */
.pn-search-count-bar {
  padding: 10px clamp(20px,5vw,64px);
  background: #fafafa;
  border-bottom: 1px solid #ebebeb;
}
.pn-search-count {
  font-size: 13px;
  color: #666;
  font-weight: 600;
}

/* Results grid */
.pn-search-results-wrap {
  padding: 28px clamp(20px,5vw,64px) 0;
}
.pn-search-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 24px;
}

/* Search card */
.pn-search-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #ebebeb;
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  transition: transform .2s, box-shadow .2s;
  color: inherit;
}
.pn-search-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,0,0,.12);
}
.pn-search-card-thumb {
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Club/player cards: contain the SVG logo */
.pn-search-card--club .pn-search-card-thumb,
.pn-search-card--player .pn-search-card-thumb {
  background-size: 55%;
  background-repeat: no-repeat;
  background-position: center;
}
.pn-search-card-initials {
  font-size: 32px;
  font-weight: 900;
  color: rgba(255,255,255,.55);
  letter-spacing: .04em;
}
.pn-search-card-type-badge {
  position: absolute;
  top: 10px;
  left: 12px;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 4px 9px;
  border-radius: 4px;
}
.pn-search-card-body {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.pn-search-card-title {
  font-size: 14px;
  font-weight: 800;
  color: #111;
  margin: 0;
  line-height: 1.35;
}
.pn-search-card:hover .pn-search-card-title { color: var(--pn-red, #c8102e); }
.pn-search-card-excerpt {
  font-size: 13px;
  color: #666;
  margin: 0;
  line-height: 1.5;
}
.pn-search-card-meta {
  font-size: 12px;
  color: var(--pn-red, #c8102e);
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.pn-search-card-date {
  font-size: 11px;
  color: #999;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: auto;
}

/* No results */
.pn-search-no-results {
  text-align: center;
  padding: 64px 20px 48px;
}
.pn-search-no-results-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 20px;
  display: block;
}
.pn-search-no-results-title {
  font-size: 22px;
  font-weight: 900;
  color: #111;
  margin: 0 0 10px;
}
.pn-search-no-results-text {
  font-size: 15px;
  color: #777;
  margin: 0 0 24px;
}

/* Responsive */
@media(max-width:960px) {
  .pn-search-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media(max-width:600px) {
  .pn-search-grid { grid-template-columns: 1fr; gap: 16px; }
  .pn-search-results-wrap { padding-left: 16px; padding-right: 16px; }
  .pn-search-filter-inner { gap: 0; }
  .pn-search-tab { padding: 14px 12px; font-size: 13px; }
  .pn-search-sort-wrap { display: none; }
  .pn-search-input { font-size: 16px; }
}

/* ── QRL-style nav search + login rows ─────────────────────────────────── */

/*
 * Fix sidebar overflow clipping the bottom section.
 * The sidebar has overflow:hidden + height:100vh — if the menu is too tall
 * the bottom section gets clipped. We fix this by:
 * 1. Switching sidebar to overflow:visible (clipping was blocking flex layout)
 * 2. Giving side-menu flex:1 + min-height:0 so it shrinks and scrolls
 * 3. Making side-bottom flex-shrink:0 so it never gets squeezed away
 */
.pn-side-nav {
  overflow: visible !important;
  overflow-y: auto !important;
}

.side-menu {
  flex: 1 1 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* The bottom actions block */
.side-bottom.pn-nav-actions {
  flex-shrink: 0 !important;
  margin-top: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-top: 1px solid rgba(0,0,0,.14) !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Each row — mirrors QRL .navigation-search / .navigation-account-button */
.pn-nav-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 16px 20px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: #111 !important;
  background: rgba(0,0,0,.07) !important;
  border-left: 4px solid transparent !important;
  border-bottom: 1px solid rgba(0,0,0,.09) !important;
  transition: border-left-color .14s ease, background .14s ease !important;
  line-height: 1 !important;
}

.pn-nav-action-row:last-child {
  border-bottom: none !important;
}

.pn-nav-action-row:hover {
  border-left-color: var(--pn-red, #c8102e) !important;
  background: rgba(0,0,0,.13) !important;
  color: #111 !important;
  text-decoration: none !important;
}

/* SVG icon */
.pn-nav-action-icon {
  width: 20px !important;
  height: 20px !important;
  flex-shrink: 0 !important;
  display: block !important;
}

/* On mobile (top-bar mode) hide the rows entirely */
@media(max-width:900px) {
  .side-bottom.pn-nav-actions {
    display: none !important;
  }
}

/* ── Shop & Membership nav items — CTA buttons in yellow sidebar ────── */
.side-menu-list .pn-menu-shop,
.side-menu-list .pn-menu-membership {
  margin-top: 8px !important;
  padding: 0 !important;
  list-style: none !important;
}
/* Shop — dark/black button */
.side-menu-list .pn-menu-shop > a {
  display: block !important;
  background: #111 !important;
  color: #ffc928 !important;
  text-align: center !important;
  border-radius: 5px !important;
  padding: 12px 14px !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  line-height: 1.2 !important;
  transition: background .15s ease !important;
}
.side-menu-list .pn-menu-shop > a:hover {
  background: #333 !important;
  color: #ffc928 !important;
  opacity: 1 !important;
}
/* Membership — red button */
.side-menu-list .pn-menu-membership > a {
  display: block !important;
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
  text-align: center !important;
  border-radius: 5px !important;
  padding: 12px 14px !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  line-height: 1.2 !important;
  transition: background .15s ease !important;
}
.side-menu-list .pn-menu-membership > a:hover {
  background: #a50e26 !important;
  color: #fff !important;
  opacity: 1 !important;
}
@media (max-width: 900px) {
  .side-menu-list .pn-menu-shop,
  .side-menu-list .pn-menu-membership {
    margin-top: 0 !important;
    display: flex !important;
    align-items: center !important;
  }
  .side-menu-list .pn-menu-shop > a,
  .side-menu-list .pn-menu-membership > a {
    border-radius: 20px !important;
    padding: 8px 16px !important;
    white-space: nowrap !important;
  }
}

/* ── QRL-style About Us page ──────────────────────────────── */
.pn-about-page {
  background: #fff;
  min-height: 100vh;
}

.pn-about-title-bar {
  background: #fff;
  padding: 28px 40px 18px;
  border-bottom: 1px solid #eee;
}

.pn-about-heading {
  font-size: 2rem;
  font-weight: 800;
  color: #111;
  margin: 0;
  letter-spacing: -.5px;
}

.pn-about-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

.pn-about-hero {
  width: 100%;
  height: 320px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.pn-about-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 100%);
}

.pn-about-blurb {
  background: #1a1a2e;
  padding: 48px 40px;
}

.pn-about-blurb-inner {
  max-width: 860px;
}

.pn-about-blurb-title {
  font-size: 1.7rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 16px;
}

.pn-about-blurb-text {
  font-size: 1.05rem;
  color: rgba(255,255,255,.82);
  line-height: 1.65;
  margin: 0;
}

.pn-about-grid-wrap {
  padding: 48px 40px 64px;
  background: #f5f5f7;
}

.pn-about-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  max-width: 1200px;
}

.pn-about-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  transition: box-shadow .18s, transform .18s;
}

.pn-about-card:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,.14);
  transform: translateY(-3px);
  text-decoration: none;
  color: inherit;
}

.pn-about-card-hero {
  width: 100%;
  height: 180px;
  position: relative;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
}

.pn-about-card-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
}

.pn-about-card-content {
  padding: 20px 22px 24px;
  flex: 1;
}

.pn-about-card-topic {
  font-size: 1.05rem;
  font-weight: 800;
  color: #111;
  margin: 0 0 10px;
  line-height: 1.3;
}

.pn-about-card-text {
  font-size: .9rem;
  color: #555;
  line-height: 1.6;
  margin: 0;
}

@media (max-width: 900px) {
  .pn-about-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .pn-about-title-bar,
  .pn-about-blurb,
  .pn-about-grid-wrap {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 560px) {
  .pn-about-grid {
    grid-template-columns: 1fr;
  }
  .pn-about-hero { height: 200px; }
}

/* ── QRL-style Stats page ─────────────────────────────────── */
.pn-stats-page {
  background: #f5f5f7;
  min-height: 100vh;
}

.pn-stats-title-bar {
  background: #fff;
  padding: 28px 40px 18px;
  border-bottom: 1px solid #eee;
}

.pn-stats-heading {
  font-size: 2rem;
  font-weight: 800;
  color: #111;
  margin: 0;
  letter-spacing: -.5px;
}

.pn-stats-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

/* Filter bar */
.pn-stats-filter-bar {
  background: #fff;
  border-bottom: 1px solid #e8e8e8;
  padding: 0 40px;
}

.pn-stats-filter-inner {
  display: flex;
  gap: 12px;
  padding: 16px 0;
  flex-wrap: wrap;
  align-items: center;
}

.pn-stats-select-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.pn-stats-select {
  appearance: none;
  background: #fff;
  border: 1.5px solid #d0d0d0;
  border-radius: 4px;
  padding: 9px 36px 9px 14px;
  font-size: .88rem;
  font-weight: 600;
  color: #222;
  cursor: pointer;
  outline: none;
  transition: border-color .15s;
  min-width: 150px;
}

.pn-stats-select:focus {
  border-color: var(--pn-red, #c8102e);
}

.pn-stats-chevron {
  position: absolute;
  right: 12px;
  font-size: 1.1rem;
  color: #666;
  pointer-events: none;
}

/* Player/Team toggle + category tabs */
.pn-stats-toggle-bar {
  background: #fff;
  border-bottom: 2px solid #e8e8e8;
  padding: 0 40px;
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.pn-stats-toggle {
  display: flex;
  border: 1.5px solid #d0d0d0;
  border-radius: 4px;
  overflow: hidden;
  margin: 14px 0;
}

.pn-stats-toggle-btn {
  background: #fff;
  border: none;
  padding: 9px 22px;
  font-size: .88rem;
  font-weight: 700;
  color: #555;
  cursor: pointer;
  transition: background .15s, color .15s;
  letter-spacing: .02em;
}

.pn-stats-toggle-btn + .pn-stats-toggle-btn {
  border-left: 1.5px solid #d0d0d0;
}

.pn-stats-toggle-btn--active {
  background: var(--pn-red, #c8102e);
  color: #fff;
}

.pn-stats-cat-tabs {
  display: flex;
  gap: 0;
  margin: 14px 0;
}

.pn-stats-cat-tab {
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  padding: 8px 18px;
  font-size: .88rem;
  font-weight: 700;
  color: #555;
  cursor: pointer;
  transition: color .15s, border-color .15s;
  white-space: nowrap;
}

.pn-stats-cat-tab:hover {
  color: var(--pn-red, #c8102e);
}

.pn-stats-cat-tab--active {
  color: var(--pn-red, #c8102e);
  border-bottom-color: var(--pn-red, #c8102e);
}

/* Table */
.pn-stats-section {
  padding: 28px 40px 64px;
}

.pn-stats-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  font-size: .9rem;
}

.pn-stats-th {
  background: #1a1a2e;
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 12px 14px;
  text-align: left;
  white-space: nowrap;
}

.pn-stats-th--num {
  text-align: center;
  min-width: 52px;
}

.pn-stats-th--rank {
  width: 40px;
  text-align: center;
}

.pn-stats-th--highlight {
  background: var(--pn-red, #c8102e);
}

.pn-stats-col--active {
  background: rgba(200, 16, 46, .07) !important;
  font-weight: 700;
}

.pn-stats-th.pn-stats-col--active {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}

.pn-stats-row {
  border-bottom: 1px solid #f0f0f0;
  transition: background .12s;
}

.pn-stats-row:hover {
  background: #fafafa;
}

.pn-stats-td {
  padding: 11px 14px;
  color: #222;
  vertical-align: middle;
}

.pn-stats-td--rank {
  text-align: center;
  color: #888;
  font-weight: 700;
  font-size: .82rem;
}

.pn-stats-td--num {
  text-align: center;
  font-weight: 600;
}

.pn-stats-td--highlight {
  background: rgba(200,16,46,.06);
  font-weight: 800;
  color: var(--pn-red, #c8102e);
}

.pn-stats-player-link {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: #111;
  font-weight: 700;
}

.pn-stats-player-link:hover {
  color: var(--pn-red, #c8102e);
  text-decoration: none;
}

.pn-stats-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  background: #eee;
}

.pn-stats-avatar--initials {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-weight: 800;
  font-size: .9rem;
}

.pn-stats-team-badge {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
  vertical-align: middle;
  margin-right: 6px;
}

.pn-stats-team-badge--lg {
  width: 36px;
  height: 36px;
}

.pn-stats-td--club {
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  color: #555;
  font-size: .85rem;
}

.pn-stats-td--pos {
  color: #666;
  font-size: .82rem;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .pn-stats-title-bar,
  .pn-stats-filter-bar,
  .pn-stats-toggle-bar,
  .pn-stats-section {
    padding-left: 16px;
    padding-right: 16px;
  }
  .pn-stats-table { font-size: .8rem; }
  .pn-stats-td--club { display: table-cell; }
}

@media (max-width: 600px) {
  .pn-stats-th--pos,
  .pn-stats-td--pos { display: none; }
}

/* ── QRL-style Competitions hub page ─────────────────────── */
.pn-comp-page {
  background: #f5f5f7;
  min-height: 100vh;
}

.pn-comp-title-bar {
  background: #fff;
  padding: 28px 40px 22px;
  border-bottom: 1px solid #eee;
}

.pn-comp-heading {
  font-size: 2rem;
  font-weight: 800;
  color: #111;
  margin: 0 0 6px;
  letter-spacing: -.5px;
}

.pn-comp-slash {
  color: var(--pn-red, #c8102e);
  margin-right: 4px;
}

.pn-comp-subhead {
  margin: 0;
  color: #666;
  font-size: .95rem;
}

.pn-comp-grid-wrap {
  padding: 40px 40px 64px;
}

.pn-comp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 1200px;
}

/* Competition card */
.pn-comp-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
  display: flex;
  flex-direction: column;
  transition: box-shadow .18s, transform .18s;
}

.pn-comp-card:hover {
  box-shadow: 0 8px 28px rgba(0,0,0,.14);
  transform: translateY(-4px);
}

.pn-comp-card-hero {
  position: relative;
  height: 200px;
  background-size: cover;
  background-position: center;
}

.pn-comp-card-overlay {
  position: absolute;
  inset: 0;
}

.pn-comp-card-hero-content {
  position: absolute;
  inset: 0;
  padding: 20px 20px 16px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.pn-comp-card-label {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 3px;
  font-size: .72rem;
  font-weight: 800;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 8px;
  width: fit-content;
}

.pn-comp-card-name {
  font-size: 1.4rem;
  font-weight: 900;
  color: #fff;
  margin: 0 0 4px;
  line-height: 1.2;
  text-shadow: 0 1px 4px rgba(0,0,0,.4);
}

.pn-comp-card-season {
  font-size: .82rem;
  color: rgba(255,255,255,.8);
  margin: 0;
}

.pn-comp-card-body {
  padding: 20px 22px 22px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.pn-comp-card-desc {
  font-size: .88rem;
  color: #555;
  line-height: 1.6;
  margin: 0;
  flex: 1;
}

/* Quick-nav pills inside card */
.pn-comp-card-nav {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.pn-comp-nav-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 14px;
  border: 1.5px solid #d0d0d0;
  border-radius: 4px;
  font-size: .8rem;
  font-weight: 700;
  color: #333;
  text-decoration: none;
  transition: border-color .15s, background .15s, color .15s;
}

.pn-comp-nav-pill svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.pn-comp-nav-pill:hover {
  border-color: var(--pn-red, #c8102e);
  color: var(--pn-red, #c8102e);
  background: rgba(200,16,46,.04);
  text-decoration: none;
}

/* Competition context banner (shown on ladder/stats/players when ?competition= is set) */
.pn-comp-context-bar {
  background: #1a1a2e;
  color: #fff;
  padding: 10px 40px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: .88rem;
}

.pn-comp-context-bar a {
  color: var(--pn-gold, #ffc928);
  font-weight: 700;
  text-decoration: none;
  margin-left: auto;
  font-size: .82rem;
}

.pn-comp-context-bar a:hover { text-decoration: underline; }

.pn-comp-context-icon {
  font-size: 1rem;
}

.pn-comp-context-name {
  font-weight: 800;
}

@media (max-width: 1024px) {
  .pn-comp-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .pn-comp-grid { grid-template-columns: 1fr; }
  .pn-comp-grid-wrap,
  .pn-comp-title-bar { padding-left: 16px; padding-right: 16px; }
  .pn-comp-card-hero { height: 160px; }
}

/* ── Generic page hero (pages without their own hero section) ────────── */
.pn-page-hero {
  position: relative;
  height: 340px;
  background-size: cover;
  background-position: center top;
  display: flex;
  align-items: flex-end;
}
.pn-page-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(13,13,26,.2) 0%, rgba(13,13,26,.85) 100%);
}
.pn-page-hero-content {
  position: relative;
  z-index: 2;
  padding: 0 clamp(20px,5vw,64px) 40px;
}
.pn-page-hero-tag {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  padding: 4px 10px;
  border-radius: 3px;
  margin-bottom: 14px;
}
.pn-page-hero-title {
  color: #fff;
  font-size: clamp(28px,4vw,52px);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -.03em;
  line-height: 1;
  margin: 0;
}
.pn-page-hero-slash {
  color: var(--pn-red, #c8102e);
}
@media (max-width: 820px) {
  .pn-page-hero { height: 260px; }
  .pn-page-hero-content { padding-bottom: 28px; }
}
@media (max-width: 480px) {
  .pn-page-hero { height: 220px; }
  .pn-page-hero-content { padding-bottom: 24px; }
}

/* ── QRL-style Community page ────────────────────────────────────────── */
.pn-comm-page {
  background: #fff;
  min-height: 80vh;
  padding-bottom: 60px;
}

/* Hero */
.pn-comm-hero {
  position: relative;
  height: 480px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
}
.pn-comm-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(13,13,26,.25) 0%, rgba(13,13,26,.88) 100%);
}
.pn-comm-hero-content {
  position: relative;
  z-index: 2;
  padding: 0 clamp(20px,5vw,64px) 48px;
  max-width: 700px;
}
.pn-comm-hero-tag {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  padding: 4px 10px;
  border-radius: 3px;
  margin-bottom: 14px;
}
.pn-comm-hero-title {
  color: #fff;
  font-size: clamp(34px,5vw,64px);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -.03em;
  line-height: 1;
  margin: 0 0 16px;
}
.pn-comm-slash { color: var(--pn-red, #c8102e); }
.pn-comm-hero-desc {
  color: rgba(255,255,255,.82);
  font-size: 16px;
  line-height: 1.55;
  margin: 0;
  max-width: 560px;
}

/* Sections */
.pn-comm-section {
  padding: 0 clamp(20px,5vw,64px) 48px;
}
.pn-comm-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 36px 0 24px;
  border-top: 2px solid #e8e8e8;
}
.pn-comm-section-title {
  font-size: clamp(18px,2.5vw,26px);
  font-weight: 900;
  color: #111;
  text-transform: uppercase;
  letter-spacing: -.02em;
  margin: 0;
  line-height: 1;
}
.pn-comm-view-more {
  font-size: 13px;
  font-weight: 700;
  color: #111;
  text-decoration: none !important;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity .15s;
}
.pn-comm-view-more:hover { opacity: .65; }

/* Programs grid — 3 columns */
.pn-comm-programs-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 24px;
}
.pn-comm-prog-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 6px;
  overflow: hidden;
  text-decoration: none !important;
  color: #111;
  box-shadow: 0 2px 10px rgba(0,0,0,.07);
  transition: box-shadow .2s ease, transform .18s ease;
}
.pn-comm-prog-card:hover {
  box-shadow: 0 10px 32px rgba(0,0,0,.14);
  transform: translateY(-3px);
}
.pn-comm-prog-img {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  flex-shrink: 0;
}
.pn-comm-prog-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.08) 0%, rgba(0,0,0,.55) 100%);
}
.pn-comm-prog-img-foot {
  position: absolute;
  bottom: 12px;
  left: 12px;
}
.pn-comm-prog-tag {
  display: inline-block;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 4px 10px;
  border-radius: 3px;
}
.pn-comm-prog-body {
  padding: 18px 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}
.pn-comm-prog-title {
  font-size: 17px;
  font-weight: 800;
  line-height: 1.25;
  color: #111;
  margin: 0;
}
.pn-comm-prog-desc {
  font-size: 13px;
  line-height: 1.55;
  color: #555;
  margin: 0;
  flex: 1;
}
.pn-comm-prog-link {
  font-size: 13px;
  font-weight: 700;
  color: var(--pn-red, #c8102e);
  margin-top: 4px;
  transition: opacity .15s;
}
.pn-comm-prog-card:hover .pn-comm-prog-link { opacity: .75; }

/* Community News grid — 4 columns on light gray bg */
.pn-comm-news-section {
  background: #f5f5f5;
  margin-left: calc(-1 * clamp(20px,5vw,64px));
  margin-right: calc(-1 * clamp(20px,5vw,64px));
  padding-left: clamp(20px,5vw,64px);
  padding-right: clamp(20px,5vw,64px);
}
.pn-comm-news-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 20px;
}
.pn-comm-news-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none !important;
  color: #111;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  transition: box-shadow .2s ease, transform .18s ease;
}
.pn-comm-news-card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,.14);
  transform: translateY(-2px);
}
.pn-comm-news-thumb {
  position: relative;
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
  overflow: hidden;
}
.pn-comm-news-thumb-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 40%, rgba(0,0,0,.5) 100%);
}
.pn-comm-news-badge {
  position: absolute;
  bottom: 8px;
  left: 8px;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 3px 8px;
  border-radius: 2px;
}
.pn-comm-news-body {
  padding: 12px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.pn-comm-news-title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: #111;
  margin: 0;
}
.pn-comm-news-date {
  font-size: 11px;
  color: #888;
  margin-top: auto;
}

/* Community responsive */
@media (max-width: 1100px) {
  .pn-comm-news-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .pn-comm-hero { height: 360px; }
  .pn-comm-programs-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
  .pn-comm-news-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .pn-comm-section { padding-left: 16px; padding-right: 16px; }
  .pn-comm-news-section { margin-left: -16px; margin-right: -16px; padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 480px) {
  .pn-comm-hero { height: 300px; }
  .pn-comm-hero-content { padding-bottom: 32px; }
  .pn-comm-programs-grid { grid-template-columns: 1fr; }
  .pn-comm-news-grid { grid-template-columns: 1fr; }
}

/* ── Remove pngrfl-page-content padding for QRL-style full-bleed pages ── */
.pngrfl-page-content:has(.pn-about-page),
.pngrfl-page-content:has(.pn-ladder-page),
.pngrfl-page-content:has(.pn-stats-page),
.pngrfl-page-content:has(.pn-players-page),
.pngrfl-page-content:has(.pn-pathways-page),
.pngrfl-page-content:has(.pn-search-page),
.pngrfl-page-content:has(.pn-comp-page),
.pngrfl-page-content:has(.pn-comm-page),
.pngrfl-page-content:has(.pn-news-page) {
  padding: 0 !important;
  margin: 0 !important;
}

/* Also target the elementor-home template wrapper */
.pngrfl-elementor-home:has(.pn-about-page),
.pngrfl-elementor-home:has(.pn-ladder-page),
.pngrfl-elementor-home:has(.pn-stats-page),
.pngrfl-elementor-home:has(.pn-players-page),
.pngrfl-elementor-home:has(.pn-pathways-page),
.pngrfl-elementor-home:has(.pn-comp-page),
.pngrfl-elementor-home:has(.pn-news-page) {
  padding: 0 !important;
  margin: 0 !important;
}

/* ── Body-class fallback for browsers without :has() support ── */
/* Ladder=237, Stats=239, Pathways=241, Community=243, Players=245,
   Foundation=251, History=253, About Us=580, Competitions=585 */
body.page-id-237 .pngrfl-page-content,
body.page-id-239 .pngrfl-page-content,
body.page-id-241 .pngrfl-page-content,
body.page-id-243 .pngrfl-page-content,
body.page-id-245 .pngrfl-page-content,
body.page-id-251 .pngrfl-page-content,
body.page-id-253 .pngrfl-page-content,
body.page-id-580 .pngrfl-page-content,
body.page-id-585 .pngrfl-page-content {
  padding: 0 !important;
  margin: 0 !important;
}

/* ── Login / Register / Account pages — centered content ─────────────── */

/* Shared centred layout */
body.page-id-620 .pngrfl-page-content,
body.page-id-621 .pngrfl-page-content,
body.page-id-605 .pngrfl-page-content,
body.page-id-614 .pngrfl-page-content,
body.page-id-615 .pngrfl-page-content,
body.page-id-616 .pngrfl-page-content,
body.page-id-617 .pngrfl-page-content,
body.page-id-618 .pngrfl-page-content,
body.page-id-619 .pngrfl-page-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 48px clamp(18px,4vw,48px) 60px !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}

/* Login / logout — narrow card */
body.page-id-620 .pngrfl-page-content > * {
  width: 100%;
  max-width: 480px;
}

/* Profile edit & WooCommerce My Account — wider container */
body.page-id-621 .pngrfl-page-content > *,
body.page-id-605 .pngrfl-page-content > * {
  width: 100%;
  max-width: 820px;
}

/* Membership Levels — widest to fit tier cards side by side */
body.page-id-619 .pngrfl-page-content > * {
  width: 100%;
  max-width: 1000px;
}

/* Membership Checkout (registration form) — medium width */
body.page-id-616 .pngrfl-page-content > * {
  width: 100%;
  max-width: 640px;
}

/* Billing, Cancel, Confirmation, Orders — same as profile */
body.page-id-614 .pngrfl-page-content > *,
body.page-id-615 .pngrfl-page-content > *,
body.page-id-617 .pngrfl-page-content > *,
body.page-id-618 .pngrfl-page-content > * {
  width: 100%;
  max-width: 820px;
}

/* White card around all PMPro forms */
body.page-id-614 .pmpro_form,
body.page-id-615 .pmpro_form,
body.page-id-616 .pmpro_form,
body.page-id-617 .pmpro_form,
body.page-id-618 .pmpro_form,
body.page-id-620 .pmpro_form,
body.page-id-621 .pmpro_form {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  padding: 40px;
  box-shadow: 0 4px 24px rgba(0,0,0,.08);
  box-sizing: border-box;
}

/* WooCommerce My Account layout */
body.page-id-605 .woocommerce {
  width: 100%;
  max-width: 820px;
  box-sizing: border-box;
}
body.page-id-605 .woocommerce-MyAccount-navigation {
  float: left;
  width: 220px;
}
body.page-id-605 .woocommerce-MyAccount-content {
  float: right;
  width: calc(100% - 250px);
}
@media (max-width: 640px) {
  body.page-id-605 .woocommerce-MyAccount-navigation,
  body.page-id-605 .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
  }
}

/* ── Cart (603) & Checkout (604) — centered content ─────────────────── */
body.page-id-603 .pngrfl-page-content,
body.page-id-604 .pngrfl-page-content {
  padding: 40px clamp(18px,4vw,48px) 60px !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}
body.page-id-603 .pngrfl-page-content > *,
body.page-id-604 .pngrfl-page-content > * {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
/* WooCommerce inner tables and forms — prevent overflow */
body.page-id-603 .woocommerce,
body.page-id-604 .woocommerce {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
body.page-id-603 .woocommerce table,
body.page-id-604 .woocommerce table {
  width: 100% !important;
  table-layout: auto;
}
/* Checkout columns */
body.page-id-604 .woocommerce .col2-set {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
}
@media (max-width: 700px) {
  body.page-id-604 .woocommerce .col2-set {
    grid-template-columns: 1fr;
  }
}

/* ── QRL-style Latest Videos carousel ────────────────────── */
.pn-vc-section {
  background: var(--pn-gold, #ffc928);
  padding-bottom: 0;
}

/* Header row */
.pn-vc-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 40px 14px;
}

.pn-vc-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #111;
  margin: 0;
  letter-spacing: .01em;
}

.pn-vc-title-icon {
  width: 22px;
  height: 22px;
  color: #111;
  flex-shrink: 0;
}

.pn-vc-view-all {
  font-size: .8rem;
  font-weight: 700;
  color: rgba(0,0,0,.55);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .06em;
  transition: color .15s;
}

.pn-vc-view-all:hover {
  color: #111;
  text-decoration: none;
}

/* Carousel outer */
.pn-vc-wrap {
  position: relative;
  overflow: hidden;
}

/* Edge fade gradients */
.pn-vc-fade {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 80px;
  z-index: 3;
  pointer-events: none;
}

.pn-vc-fade--left {
  left: 0;
  background: linear-gradient(to right, #0d0d0d 0%, transparent 100%);
}

.pn-vc-fade--right {
  right: 0;
  background: linear-gradient(to left, #0d0d0d 0%, transparent 100%);
}

/* Arrow buttons */
.pn-vc-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 4;
  background: rgba(0,0,0,.55);
  border: 1.5px solid rgba(255,255,255,.25);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #fff;
  transition: background .15s, opacity .15s;
}

.pn-vc-arrow:hover {
  background: rgba(0,0,0,.8);
}

.pn-vc-arrow svg {
  width: 20px;
  height: 20px;
}

.pn-vc-arrow--left  { left: 12px; }
.pn-vc-arrow--right { right: 12px; }

/* Scrollable track */
.pn-vc-track {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0 40px 20px;
  list-style: none;
  margin: 0;
}

.pn-vc-track::-webkit-scrollbar { display: none; }

/* Individual card */
.pn-vc-item {
  flex: 0 0 340px;
  scroll-snap-align: start;
}

.pn-vc-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.pn-vc-link:hover { text-decoration: none; color: inherit; }

/* Image area */
.pn-vc-img {
  position: relative;
  padding-top: 56.25%;
  border-radius: 4px;
  overflow: hidden;
  background: #1a1a2e;
}

.pn-vc-img-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.04) 40%, rgba(0,0,0,.72) 100%);
  transition: background .18s;
}

.pn-vc-link:hover .pn-vc-img-gradient {
  background: linear-gradient(to bottom, rgba(0,0,0,.12) 20%, rgba(0,0,0,.82) 100%);
}

.pn-vc-fallback-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 56px;
  opacity: .2;
}

/* Lozenge — top left of image */
.pn-vc-lozenge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: rgba(0,0,0,.55);
  border: 1px solid rgba(255,255,255,.25);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 3px 8px;
  border-radius: 3px;
  z-index: 2;
  line-height: 1.4;
}

/* Play circle — bottom left of image */
.pn-vc-play-icon {
  position: absolute;
  bottom: 10px;
  left: 10px;
  z-index: 2;
  color: #fff;
  transition: transform .18s;
}

.pn-vc-play-icon svg {
  width: 28px;
  height: 28px;
  filter: drop-shadow(0 1px 3px rgba(0,0,0,.5));
}

.pn-vc-link:hover .pn-vc-play-icon {
  transform: scale(1.15);
}

/* Card text content */
.pn-vc-content {
  padding: 12px 4px 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.pn-vc-item-title {
  font-size: .9rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .15s;
}

.pn-vc-link:hover .pn-vc-item-title {
  color: rgba(255,255,255,.85);
}

.pn-vc-item-topic {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  color: rgba(255,255,255,.5);
  margin: 0;
  text-transform: uppercase;
}

.pn-vc-item-time {
  font-size: .72rem;
  color: rgba(255,255,255,.4);
  font-weight: 400;
}

@media (max-width: 900px) {
  .pn-vc-header { padding: 18px 16px 14px; }
  .pn-vc-track  { padding: 0 16px 4px; gap: 12px; }
  .pn-vc-item   { flex: 0 0 280px; }
  .pn-vc-fade   { width: 40px; }
  .pn-vc-arrow  { display: none; }
}

/* ══════════════════════════════════════════════════════════════
   QRL-EXACT SPOTLIGHT HERO  (matches screenshot)
   ══════════════════════════════════════════════════════════════ */
.pn-spotlight {
  display: grid;
  grid-template-columns: 1fr 400px;
  width: 100%;
  background: var(--pn-gold, #ffc928);
  min-height: 540px;
}

/* ── Main hero card (left) */
.pn-spotlight-main {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 540px;
  background-size: cover;
  background-position: center;
  text-decoration: none;
  overflow: hidden;
}

.pn-spotlight-main-gradient {
  position: absolute;
  inset: 0;
  /* matches QRL: dark tint left + bottom, clears top-right */
  background:
    linear-gradient(to right,  rgba(10,10,10,.82) 0%, rgba(10,10,10,.45) 55%, rgba(10,10,10,.12) 100%),
    linear-gradient(to top,    rgba(10,10,10,.9)  0%, rgba(10,10,10,.1)  60%, transparent 100%);
}

.pn-spotlight-main-copy {
  position: relative;
  z-index: 2;
  padding: 32px 36px 36px;
  max-width: 680px;
}

.pn-spotlight-title {
  font-size: clamp(1.5rem, 3vw, 2.4rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.12;
  margin: 10px 0 12px;
  letter-spacing: -.02em;
}

.pn-spotlight-excerpt {
  font-size: 1rem;
  color: rgba(255,255,255,.88);
  line-height: 1.5;
  margin: 0 0 14px;
}

.pn-spotlight-see-more {
  font-weight: 800;
  color: #fff;
  text-decoration: underline;
}

.pn-spotlight-time {
  display: block;
  font-size: .8rem;
  color: rgba(255,255,255,.6);
  font-weight: 500;
}

/* Lozenge — shared across hero & rail */
.pn-spotlight-lozenge {
  display: inline-block;
  background: var(--pn-red, #c8102e);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 4px 9px;
  border-radius: 3px;
  line-height: 1.4;
}

/* ── Right rail */
.pn-spotlight-rail {
  display: flex;
  flex-direction: column;
  background: var(--pn-gold, #ffc928);
  border-left: 1px solid rgba(0,0,0,.12);
  overflow: hidden;
}

/* Top rail card — image bg, content overlaid */
.pn-spotlight-rail-primary {
  flex: 0 0 52%;
  position: relative;
  display: flex;
  align-items: flex-end;
  background-size: cover;
  background-position: center;
  text-decoration: none;
  overflow: hidden;
  border-bottom: 1px solid rgba(0,0,0,.12);
}

.pn-spotlight-rail-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.1) 60%, transparent 100%);
}

.pn-spotlight-rail-primary-copy {
  position: relative;
  z-index: 2;
  padding: 14px 18px 16px;
}

.pn-spotlight-rail-title {
  font-size: 1.05rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.25;
  margin: 8px 0 6px;
  letter-spacing: -.01em;
}

/* Compact rail cards — text left, thumb right */
.pn-spotlight-rail-card {
  flex: 1;
  display: flex;
  align-items: stretch;
  gap: 0;
  text-decoration: none;
  border-top: 1px solid rgba(0,0,0,.12);
  padding: 14px 16px;
  transition: background .15s;
}

.pn-spotlight-rail-card:hover {
  background: rgba(0,0,0,.07);
  text-decoration: none;
}

.pn-spotlight-rail-card-text {
  flex: 1;
  padding-right: 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
}

.pn-spotlight-rail-card-title {
  font-size: .88rem;
  font-weight: 700;
  color: #111;
  line-height: 1.3;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.pn-spotlight-rail-card-thumb {
  width: 110px;
  flex-shrink: 0;
  border-radius: 4px;
  background-size: cover;
  background-position: center;
  align-self: stretch;
  min-height: 80px;
}

/* Rail compact cards — dark text on yellow bg */
.pn-spotlight-rail-card .pn-spotlight-time {
  color: rgba(0,0,0,.5);
}
.pn-spotlight-rail-card .pn-spotlight-lozenge {
  background: rgba(0,0,0,.15);
  color: #111;
}

/* Hover states on main */
.pn-spotlight-main:hover .pn-spotlight-main-gradient {
  background:
    linear-gradient(to right,  rgba(10,10,10,.88) 0%, rgba(10,10,10,.52) 55%, rgba(10,10,10,.18) 100%),
    linear-gradient(to top,    rgba(10,10,10,.94) 0%, rgba(10,10,10,.15) 60%, transparent 100%);
}

/* ── Video carousel — QRL overlay style */
.pn-vc-img {
  position: relative;
  padding-top: 62%;        /* slightly taller than 16:9 like QRL */
  border-radius: 4px;
  overflow: hidden;
  background: #1a1a2e;
}

.pn-vc-img-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.88) 0%, rgba(0,0,0,.35) 45%, rgba(0,0,0,.1) 100%);
  transition: background .18s;
}

.pn-vc-link:hover .pn-vc-img-gradient {
  background: linear-gradient(to top, rgba(0,0,0,.95) 0%, rgba(0,0,0,.45) 45%, rgba(0,0,0,.15) 100%);
}

/* Centered white play button (QRL style) */
.pn-vc-play-btn {
  position: absolute;
  top: 38%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 46px;
  height: 46px;
  background: rgba(255,255,255,.92);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111;
  z-index: 3;
  transition: transform .18s, background .18s;
}

.pn-vc-play-btn svg {
  width: 20px;
  height: 20px;
  margin-left: 3px;
}

.pn-vc-link:hover .pn-vc-play-btn {
  transform: translate(-50%, -50%) scale(1.1);
  background: #fff;
}

/* Content overlaid at bottom of image */
.pn-vc-overlay-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  padding: 12px 12px 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.pn-vc-item-title {
  font-size: .88rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.pn-vc-item-topic {
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .08em;
  color: rgba(255,255,255,.6);
  margin: 0;
  text-transform: uppercase;
}

.pn-vc-item-time {
  font-size: .68rem;
  color: rgba(255,255,255,.45);
  font-weight: 400;
}

/* Remove the old separate .pn-vc-content spacing */
.pn-vc-content { display: none; }

/* Responsive */
@media (max-width: 1100px) {
  .pn-spotlight { grid-template-columns: 1fr 340px; }
}

@media (max-width: 820px) {
  .pn-spotlight { grid-template-columns: 1fr; }
  .pn-spotlight-rail { display: none; }
  .pn-spotlight-main { min-height: 420px; }
}

/* ══════════════════════════════════════════════════════════════════
   QRL-EXACT HOMEPAGE v51 — final override block
   Matches screenshot: white rail, white video section, overlay cards,
   vertical compact cards, 4-col grid, quick links, centred promo.
   ══════════════════════════════════════════════════════════════════ */

/* 1. Spotlight hero right rail — white background like QRL */
.pn-spotlight {
  background: #fff;
}
.pn-spotlight-rail {
  background: #fff !important;
  border-left: 1px solid #e8e8e8 !important;
}
.pn-spotlight-rail-primary {
  border-bottom: 1px solid #e8e8e8 !important;
}
.pn-spotlight-rail-card {
  border-top: 1px solid #e8e8e8 !important;
  padding: 14px 18px !important;
}
.pn-spotlight-rail-card:hover {
  background: #f7f7f7 !important;
}
.pn-spotlight-rail-card .pn-spotlight-lozenge {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}
.pn-spotlight-rail-card .pn-spotlight-time {
  color: var(--pn-red, #c8102e) !important;
}
.pn-spotlight-rail-card-title {
  color: #111 !important;
}
.pn-spotlight-rail-card:hover .pn-spotlight-rail-card-title {
  color: var(--pn-red, #c8102e) !important;
}

/* 2. Latest Videos carousel — white background like QRL */
.pn-vc-section {
  background: #fff !important;
  border-top: 1px solid #e8e8e8;
  border-bottom: 1px solid #e8e8e8;
}
.pn-vc-title {
  color: #111 !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
}
.pn-vc-title-dot {
  display: inline-block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--pn-red, #c8102e);
  flex-shrink: 0;
}
.pn-vc-title-icon { display: none !important; }
.pn-vc-view-all {
  color: #555 !important;
  font-weight: 600 !important;
}
.pn-vc-view-all:hover { color: var(--pn-red, #c8102e) !important; }
.pn-vc-fade--left  { background: linear-gradient(to right, #fff 0%, transparent 100%) !important; }
.pn-vc-fade--right { background: linear-gradient(to left,  #fff 0%, transparent 100%) !important; }
.pn-vc-arrow {
  background: rgba(0,0,0,.42) !important;
  border: 1.5px solid rgba(255,255,255,.3) !important;
}

/* 3. Feature card — full-bleed image with text overlaid at bottom (QRL style) */
.pn-hc-feature-card {
  position: relative !important;
  display: block !important;
  min-height: 320px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 18px rgba(0,0,0,.10) !important;
  text-decoration: none !important;
  transition: transform .2s, box-shadow .2s !important;
  flex-direction: column;
}
.pn-hc-feature-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.16) !important;
}
/* Image fills the entire card */
.pn-hc-feature-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: unset !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 0 !important;
}
.pn-hc-watermark {
  width: 60px !important;
  height: 60px !important;
  opacity: .25 !important;
}
/* Text body overlaid at bottom via dark gradient */
.pn-hc-feature-body {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding: 60px 18px 18px !important;
  background: linear-gradient(to top, rgba(0,0,0,.88) 0%, rgba(0,0,0,.5) 45%, transparent 100%) !important;
  gap: 7px !important;
  flex: unset !important;
}
.pn-hc-feature-title {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  flex: unset !important;
}
.pn-hc-feature-card:hover .pn-hc-feature-title {
  color: #fff !important;
}
.pn-hc-timestamp {
  color: rgba(255,255,255,.62) !important;
  margin-top: 0 !important;
}
.pn-hc-lozenge {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}

/* 4. Compact card — vertical layout (image top, text below) */
.pn-hc-compact-card {
  flex-direction: column !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1px solid #e8e8e8 !important;
  background: #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.05) !important;
  gap: 0 !important;
  align-items: stretch !important;
}
.pn-hc-compact-img {
  width: 100% !important;
  min-width: 0 !important;
  aspect-ratio: 16/9 !important;
  border-radius: 0 !important;
}
.pn-hc-compact-body {
  padding: 12px 14px 14px !important;
  gap: 6px !important;
}
.pn-hc-compact-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111 !important;
  -webkit-line-clamp: 3 !important;
}
.pn-hc-compact-card:hover .pn-hc-compact-title {
  color: var(--pn-red, #c8102e) !important;
}
.pn-hc-compact-body .pn-hc-lozenge {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}
.pn-hc-compact-body .pn-hc-timestamp {
  color: #999 !important;
  margin-top: 2px !important;
}

/* 5. Grid: one big left + 2×2 compact right (QRL 4-column approach) */
.pn-hc-one-big-four-small {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 16px !important;
}
.pn-hc-one-big-four-small .pn-hc-feature-card {
  grid-column: 1 / 3 !important;
  grid-row: 1 / 3 !important;
  min-height: 400px !important;
}
.pn-hc-one-big-four-small .pn-hc-compact-card {
  grid-column: span 1 !important;
  grid-row: auto !important;
}

/* 6. Quick Links strip — dark CTA row like QRL */
.pn-home-quick-links {
  display: flex !important;
  gap: 0 !important;
  background: #111 !important;
  border-top: 0 !important;
}
.pn-home-ql-btn {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  padding: 20px 12px !important;
  background: #111 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  text-decoration: none !important;
  border-right: 1px solid rgba(255,255,255,.1) !important;
  transition: background .15s !important;
  line-height: 1.2 !important;
}
.pn-home-ql-btn:last-child { border-right: 0 !important; }
.pn-home-ql-btn:hover { background: var(--pn-red, #c8102e) !important; color: #fff !important; }
.pn-home-ql-btn svg { flex-shrink: 0; opacity: .9; }

/* 7. Promo panel — centered text + ghost button like QRL */
.pn-home-promo-panel {
  justify-content: center !important;
  text-align: center !important;
  min-height: 380px !important;
}
.pn-home-promo-overlay {
  background: linear-gradient(0deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.48) 100%) !important;
}
.pn-home-promo-body {
  align-items: center !important;
  max-width: 700px !important;
}
.pn-home-promo-ctas {
  justify-content: center !important;
}
.pn-home-promo-btn {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  border-radius: 4px !important;
  padding: 12px 28px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  transition: background .15s, border-color .15s, color .15s !important;
}
.pn-home-promo-btn:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #111 !important;
}
.pn-home-promo-btn--primary {
  background: var(--pn-red, #c8102e) !important;
  border-color: var(--pn-red, #c8102e) !important;
}
.pn-home-promo-btn--primary:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #111 !important;
}

/* Responsive adjustments for new QRL layout */
@media (max-width: 1100px) {
  .pn-hc-one-big-four-small {
    grid-template-columns: 1fr 1fr !important;
  }
  .pn-hc-one-big-four-small .pn-hc-feature-card {
    grid-column: 1 / 3 !important;
    grid-row: 1 !important;
    min-height: 300px !important;
  }
  .pn-hc-one-big-four-small .pn-hc-compact-card {
    grid-column: span 1 !important;
  }
}
@media (max-width: 700px) {
  .pn-home-quick-links { flex-wrap: wrap !important; }
  .pn-home-ql-btn {
    flex: 0 0 50% !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
  }
  .pn-hc-one-big-four-small {
    grid-template-columns: 1fr !important;
  }
  .pn-hc-one-big-four-small .pn-hc-feature-card {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-height: 260px !important;
  }
  .pn-hc-one-big-four-small .pn-hc-compact-card {
    grid-column: 1 !important;
  }
}

/* ══════════════════════════════════════════════════════════════
   PNGRFL v52 — QRL dark match: Draw Strip · Hero · Videos
   Overrides all earlier yellow/white rules for these 3 sections.
   ══════════════════════════════════════════════════════════════ */

/* ── 1. DRAW STRIP — dark background, white text ─────────────── */
body.home .score-strip,
body.front-page .score-strip {
  background: #111 !important;
  background-color: #111 !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: none !important;
}
body.home .score-scroll,
body.front-page .score-scroll {
  background: #111 !important;
  background-color: #111 !important;
}
body.home .draw-score-card,
body.front-page .draw-score-card,
body.home .score-card,
body.front-page .score-card,
body.home .ticker-fixture,
body.front-page .ticker-fixture {
  background: transparent !important;
  background-color: transparent !important;
  color: #fff !important;
  border-right: 1px solid rgba(255,255,255,.10) !important;
  border-left: 0 !important;
}
body.home .draw-score-card small,
body.front-page .draw-score-card small,
body.home .score-card small,
body.front-page .score-card small,
body.home .ticker-fixture small,
body.front-page .ticker-fixture small {
  color: rgba(255,255,255,.52) !important;
}
body.home .score-team,
body.front-page .score-team {
  color: #fff !important;
}
body.home .score-team b,
body.home .score-team span,
body.front-page .score-team b,
body.front-page .score-team span {
  color: #fff !important;
}
body.home .ticker-fixture span,
body.front-page .ticker-fixture span {
  color: #fff !important;
}
body.home .draw-score-card em,
body.front-page .draw-score-card em,
body.home .score-card em,
body.front-page .score-card em,
body.home .ticker-fixture em,
body.front-page .ticker-fixture em {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(255,255,255,.36) !important;
  color: rgba(255,255,255,.86) !important;
  box-shadow: none !important;
}
body.home .draw-score-card:hover em,
body.front-page .draw-score-card:hover em,
body.home .score-card:hover em,
body.front-page .score-card:hover em,
body.home .ticker-fixture:hover em,
body.front-page .ticker-fixture:hover em {
  background: var(--pn-red, #c8102e) !important;
  background-color: var(--pn-red, #c8102e) !important;
  border-color: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}
/* Arrow buttons inside the strip */
body.home .ticker-arrow,
body.front-page .ticker-arrow {
  background: #111 !important;
  color: rgba(255,255,255,.7) !important;
  border: 0 !important;
}
body.home .ticker-arrow:hover,
body.front-page .ticker-arrow:hover {
  color: #fff !important;
}

/* ── 2. HERO SPOTLIGHT — dark rail, white text ───────────────── */
.pn-spotlight {
  background: #111 !important;
}
.pn-spotlight-rail {
  background: #1a1a1a !important;
  border-left: 1px solid rgba(255,255,255,.08) !important;
}
.pn-spotlight-rail-primary {
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.pn-spotlight-rail-card {
  border-top: 1px solid rgba(255,255,255,.08) !important;
}
.pn-spotlight-rail-card:hover {
  background: rgba(255,255,255,.06) !important;
}
.pn-spotlight-rail-card-title {
  color: #fff !important;
}
.pn-spotlight-rail-card:hover .pn-spotlight-rail-card-title {
  color: rgba(255,255,255,.76) !important;
}
.pn-spotlight-rail-card .pn-spotlight-time {
  color: rgba(255,255,255,.40) !important;
}
.pn-spotlight-rail-card .pn-spotlight-lozenge {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}

/* ── 3. LATEST VIDEOS — dark background, white title ─────────── */
.pn-vc-section {
  background: #111 !important;
  background-color: #111 !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.pn-vc-title {
  color: #fff !important;
}
/* Title icon: circle with play triangle (matches QRL style) */
.pn-vc-title-dot {
  display: inline-block !important;
  width: 28px !important;
  height: 28px !important;
  background: rgba(255,255,255,.12) !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
  position: relative !important;
  vertical-align: middle !important;
}
.pn-vc-title-dot::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 54% !important;
  transform: translate(-50%, -50%) !important;
  width: 0 !important;
  height: 0 !important;
  border-style: solid !important;
  border-top: 5px solid transparent !important;
  border-bottom: 5px solid transparent !important;
  border-left: 9px solid rgba(255,255,255,.88) !important;
  border-right: 0 !important;
}
.pn-vc-view-all {
  color: rgba(255,255,255,.44) !important;
}
.pn-vc-view-all:hover {
  color: #fff !important;
}
.pn-vc-fade--left {
  background: linear-gradient(to right, #111 0%, transparent 100%) !important;
}
.pn-vc-fade--right {
  background: linear-gradient(to left, #111 0%, transparent 100%) !important;
}

/* ── Round label (left of draw strip, QRL-style) ─────────────── */
.pn-draw-round-label {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 24px 0 20px;
  flex-shrink: 0;
  border-right: 1px solid rgba(255,255,255,.12);
  min-width: 190px;
}
.pn-draw-round-logo {
  width: 44px;
  height: 44px;
  object-fit: contain;
  flex-shrink: 0;
}
.pn-draw-round-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.pn-draw-round-comp {
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: rgba(255,255,255,.48);
  line-height: 1.3;
}
.pn-draw-round-num {
  font-size: 14px;
  font-weight: 900;
  color: #fff;
  line-height: 1.2;
  letter-spacing: -.01em;
}

@media (max-width: 900px) {
  .pn-draw-round-label {
    min-width: 140px;
    padding: 0 16px 0 14px;
  }
  .pn-draw-round-logo { width: 34px; height: 34px; }
  .pn-draw-round-num { font-size: 12px; }
}

/* ══════════════════════════════════════════════════════════════
   PNGRFL v53 — Unified yellow (#ffc928) across draw strip,
   hero section and latest videos — matches sidebar brand colour.
   Overrides v52 dark rules.
   ══════════════════════════════════════════════════════════════ */

/* ── 1. DRAW STRIP ── yellow, dark text ──────────────────────── */
body.home .score-strip,
body.front-page .score-strip {
  background: #ffc928 !important;
  background-color: #ffc928 !important;
  border-bottom: 1px solid rgba(0,0,0,.12) !important;
  box-shadow: none !important;
}
body.home .score-scroll,
body.front-page .score-scroll {
  background: #ffc928 !important;
  background-color: #ffc928 !important;
}
body.home .draw-score-card,
body.front-page .draw-score-card,
body.home .score-card,
body.front-page .score-card,
body.home .ticker-fixture,
body.front-page .ticker-fixture {
  background: transparent !important;
  background-color: transparent !important;
  color: #111 !important;
  border-right: 1px solid rgba(0,0,0,.14) !important;
  border-left: 0 !important;
}
body.home .draw-score-card small,
body.front-page .draw-score-card small,
body.home .score-card small,
body.front-page .score-card small,
body.home .ticker-fixture small,
body.front-page .ticker-fixture small {
  color: rgba(0,0,0,.52) !important;
}
body.home .score-team,
body.front-page .score-team { color: #111 !important; }
body.home .score-team b,
body.home .score-team span,
body.front-page .score-team b,
body.front-page .score-team span { color: #111 !important; }
body.home .ticker-fixture span,
body.front-page .ticker-fixture span { color: #111 !important; }
body.home .draw-score-card em,
body.front-page .draw-score-card em,
body.home .score-card em,
body.front-page .score-card em,
body.home .ticker-fixture em,
body.front-page .ticker-fixture em {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(0,0,0,.28) !important;
  color: #111 !important;
  box-shadow: none !important;
}
body.home .draw-score-card:hover em,
body.front-page .draw-score-card:hover em,
body.home .score-card:hover em,
body.front-page .score-card:hover em,
body.home .ticker-fixture:hover em,
body.front-page .ticker-fixture:hover em {
  background: var(--pn-red, #c8102e) !important;
  background-color: var(--pn-red, #c8102e) !important;
  border-color: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}
body.home .ticker-arrow,
body.front-page .ticker-arrow {
  background: #ffc928 !important;
  color: rgba(0,0,0,.55) !important;
  border: 0 !important;
}
body.home .ticker-arrow:hover,
body.front-page .ticker-arrow:hover { color: #111 !important; }
/* Round label on yellow */
.pn-draw-round-comp { color: rgba(0,0,0,.48) !important; }
.pn-draw-round-num  { color: #111 !important; }
.pn-draw-round-label { border-right-color: rgba(0,0,0,.14) !important; }

/* ── 2. HERO SECTION ── yellow background + yellow gradient ───── */
.pn-spotlight {
  background: #ffc928 !important;
}
/* Gradient over the hero image: yellow from left + bottom → transparent, 50% opacity */
.pn-spotlight-main-gradient {
  background:
    linear-gradient(to right, rgba(255,201,40,.97) 0%, rgba(255,201,40,.80) 30%, rgba(255,201,40,.32) 56%, rgba(255,201,40,0) 74%),
    linear-gradient(to top,   rgba(255,201,40,.95) 0%, rgba(255,201,40,.52) 38%, rgba(255,201,40,0)   62%) !important;
  opacity: 0.5 !important;
}
.pn-spotlight-main:hover .pn-spotlight-main-gradient {
  background:
    linear-gradient(to right, rgba(255,201,40,.97) 0%, rgba(255,201,40,.84) 30%, rgba(255,201,40,.38) 56%, rgba(255,201,40,.04) 74%),
    linear-gradient(to top,   rgba(255,201,40,.96) 0%, rgba(255,201,40,.56) 38%, rgba(255,201,40,0)   62%) !important;
  opacity: 0.5 !important;
}
/* Hero main copy: dark text on yellow overlay */
.pn-spotlight-title {
  color: #111 !important;
  text-shadow: none !important;
}
.pn-spotlight-excerpt { color: rgba(0,0,0,.78) !important; }
.pn-spotlight-see-more { color: var(--pn-red, #c8102e) !important; }
.pn-spotlight-main .pn-spotlight-time { color: rgba(0,0,0,.52) !important; }
/* Right news rail: yellow */
.pn-spotlight-rail {
  background: #ffc928 !important;
  border-left: 1px solid rgba(0,0,0,.12) !important;
}
.pn-spotlight-rail-primary {
  border-bottom: 1px solid rgba(0,0,0,.10) !important;
}
.pn-spotlight-rail-card {
  border-top: 1px solid rgba(0,0,0,.10) !important;
}
.pn-spotlight-rail-card:hover {
  background: rgba(0,0,0,.06) !important;
}
.pn-spotlight-rail-card-title { color: #111 !important; }
.pn-spotlight-rail-card:hover .pn-spotlight-rail-card-title {
  color: var(--pn-red, #c8102e) !important;
}
.pn-spotlight-rail-card .pn-spotlight-time { color: rgba(0,0,0,.48) !important; }
.pn-spotlight-rail-card .pn-spotlight-lozenge {
  background: var(--pn-red, #c8102e) !important;
  color: #fff !important;
}
/* Rail primary card image gradient stays dark since it overlays a photo */
.pn-spotlight-rail-gradient {
  background: linear-gradient(to top, rgba(0,0,0,.82) 0%, rgba(0,0,0,.1) 60%, transparent 100%) !important;
}

/* ── 3. LATEST VIDEOS ── yellow background, dark title ───────── */
.pn-vc-section {
  background: #ffc928 !important;
  background-color: #ffc928 !important;
  border-top: 1px solid rgba(0,0,0,.10) !important;
  border-bottom: 1px solid rgba(0,0,0,.10) !important;
}
.pn-vc-title { color: #111 !important; }
.pn-vc-title-dot {
  background: rgba(0,0,0,.18) !important;
}
.pn-vc-title-dot::after {
  border-left-color: #111 !important;
}
.pn-vc-view-all { color: rgba(0,0,0,.44) !important; }
.pn-vc-view-all:hover { color: #111 !important; }
.pn-vc-fade--left  {
  background: linear-gradient(to right, #ffc928 0%, transparent 100%) !important;
}
.pn-vc-fade--right {
  background: linear-gradient(to left,  #ffc928 0%, transparent 100%) !important;
}

/* ══════════════════════════════════════════════════════════════
   PNGRFL v54 — Hero layout: QRL-matched proportions, padding,
   sizing and gaps. Colour overrides remain in v52/v53 above.
   ══════════════════════════════════════════════════════════════ */

/* ── Grid shell: slightly narrower rail gives hero more room */
.pn-spotlight {
  grid-template-columns: 1fr 360px !important;
  min-height: 560px !important;
  gap: 0 !important;
}

/* ── Main hero panel */
.pn-spotlight-main {
  min-height: 560px !important;
}

/* Copy sits bottom-left with QRL-matched insets */
.pn-spotlight-main-copy {
  padding: 0 44px 48px 44px !important;
  max-width: 600px !important;
}

/* Category lozenge: tighter, compact QRL size */
.pn-spotlight-lozenge {
  font-size: .64rem !important;
  padding: 4px 8px !important;
  letter-spacing: .08em !important;
  border-radius: 3px !important;
}

/* Title: larger, heavier, tighter tracking */
.pn-spotlight-title {
  font-size: clamp(1.8rem, 2.8vw, 2.8rem) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
  margin: 12px 0 14px !important;
}

/* Excerpt: slightly compact */
.pn-spotlight-excerpt {
  font-size: .94rem !important;
  line-height: 1.52 !important;
  margin: 0 0 12px !important;
}

/* Timestamp */
.pn-spotlight-time {
  font-size: .76rem !important;
  font-weight: 600 !important;
}

/* ── Rail: right column */
.pn-spotlight-rail {
  /* inherits background/border from v53; only layout here */
  overflow: hidden !important;
}

/* Top card — image-bg: 48% of the rail height */
.pn-spotlight-rail-primary {
  flex: 0 0 48% !important;
}

.pn-spotlight-rail-primary-copy {
  padding: 12px 16px 16px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Rail primary headline */
.pn-spotlight-rail-title {
  font-size: .98rem !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
  margin: 7px 0 7px !important;
  letter-spacing: -.01em !important;
}

/* Compact cards: padding + gap instead of text padding-right */
.pn-spotlight-rail-card {
  padding: 14px 16px !important;
  gap: 12px !important;
  align-items: center !important;
}

.pn-spotlight-rail-card-text {
  padding-right: 0 !important;
  gap: 5px !important;
  justify-content: center !important;
}

.pn-spotlight-rail-card-title {
  font-size: .84rem !important;
  font-weight: 700 !important;
  line-height: 1.28 !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
}

/* Thumbnail: fixed width, fills card height */
.pn-spotlight-rail-card-thumb {
  width: 108px !important;
  flex-shrink: 0 !important;
  border-radius: 3px !important;
  min-height: 76px !important;
  align-self: stretch !important;
}

/* ── Responsive: collapse rail below 900px */
@media (max-width: 900px) {
  .pn-spotlight {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
  .pn-spotlight-rail { display: none !important; }
  .pn-spotlight-main,
  .pn-spotlight-main-copy { min-height: 320px !important; }
  .pn-spotlight-main-copy {
    padding: 0 24px 32px 24px !important;
  }
  .pn-spotlight-title {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
  }
}

/* =========================================================
   PNGRFL Site Footer — QRL-style, matches hero #111 bg
   ========================================================= */
.pngrfl-site-footer {
  background: #111 !important;
  background-color: #111 !important;
  color: #fff !important;
  border-top: 4px solid var(--pn-gold, #ffc928) !important;
  margin-top: 0 !important;
  width: 100% !important;
}

.pngrfl-footer-inner {
  max-width: min(1180px, 92%);
  margin: 0 auto;
  padding: 52px 0 0;
}

/* Top section: brand + nav columns */
.pngrfl-footer-top {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 48px;
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

/* Brand column */
.pngrfl-footer-brand {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.pngrfl-footer-logo {
  width: 90px;
  height: auto;
  object-fit: contain;
  display: block;
}

.pngrfl-footer-tagline {
  font-size: 13px;
  line-height: 1.55;
  color: rgba(255,255,255,.62);
  margin: 0;
  max-width: 200px;
}

/* Social icons row */
.pngrfl-footer-socials {
  display: flex;
  gap: 10px;
  margin-top: 4px;
  flex-wrap: wrap;
}

.pngrfl-footer-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.80);
  border: 1px solid rgba(255,255,255,.14);
  transition: background .18s ease, color .18s ease, border-color .18s ease;
  text-decoration: none;
  flex-shrink: 0;
}

.pngrfl-footer-socials a:hover {
  background: var(--pn-gold, #ffc928);
  color: #111;
  border-color: var(--pn-gold, #ffc928);
}

.pngrfl-footer-socials svg {
  display: block;
}

/* Navigation columns */
.pngrfl-footer-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.pngrfl-footer-col {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.pngrfl-footer-heading {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--pn-gold, #ffc928);
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.pngrfl-footer-col a {
  display: block;
  color: rgba(255,255,255,.72);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  padding: 6px 0;
  transition: color .15s ease;
}

.pngrfl-footer-col a:hover {
  color: var(--pn-gold, #ffc928);
}

/* Bottom copyright bar */
.pngrfl-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 18px 0 22px;
  font-size: 12px;
  color: rgba(255,255,255,.38);
}

.pngrfl-footer-legal {
  display: flex;
  gap: 20px;
}

.pngrfl-footer-legal a {
  color: rgba(255,255,255,.38);
  text-decoration: none;
  font-size: 12px;
  transition: color .15s ease;
}

.pngrfl-footer-legal a:hover {
  color: rgba(255,255,255,.75);
}

/* Responsive */
@media (max-width: 900px) {
  .pngrfl-footer-top {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .pngrfl-footer-brand {
    flex-direction: row;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
  }
  .pngrfl-footer-logo {
    width: 68px;
  }
}

@media (max-width: 600px) {
  .pngrfl-footer-nav {
    grid-template-columns: repeat(2, 1fr);
  }
  .pngrfl-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

@media (max-width: 380px) {
  .pngrfl-footer-nav {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   PNGRFL QRL-style mobile layout
   Breakpoint: ≤ 820px
   ========================================================= */

/* ── Mobile top bar (hidden on desktop) ───────────────────── */
.pn-mobile-topbar {
  display: none;
}

@media (max-width: 820px) {

  /* Show the mobile top bar */
  .pn-mobile-topbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 2100 !important;
    width: 100% !important;
    height: 62px !important;
    background: var(--pn-gold, #ffc928) !important;
    border-bottom: 4px solid var(--pn-red, #c8102e) !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.14) !important;
  }

  .pn-mobile-logo-link {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-decoration: none !important;
    color: #111 !important;
  }

  .pn-mobile-logo {
    width: 40px !important;
    height: 40px !important;
    object-fit: contain !important;
    display: block !important;
    flex-shrink: 0 !important;
  }

  .pn-mobile-site-name {
    font-size: 16px !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    color: #111 !important;
    text-transform: uppercase !important;
  }

  .pn-mobile-topbar-actions {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
  }

  .pn-mobile-search-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    color: #111 !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transition: background .15s !important;
  }

  .pn-mobile-search-btn:hover {
    background: rgba(0,0,0,.10) !important;
  }

  /* ── Hamburger button ─────────────────────────────────────── */
  .pn-hamburger {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 5px !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    border-radius: 6px !important;
    transition: background .15s !important;
  }

  .pn-hamburger:hover {
    background: rgba(0,0,0,.10) !important;
  }

  .pn-hamburger-bar {
    display: block !important;
    width: 22px !important;
    height: 2.5px !important;
    background: #111 !important;
    border-radius: 2px !important;
    transition: transform .22s ease, opacity .22s ease !important;
    transform-origin: center !important;
  }

  /* Hamburger → X when open */
  body.pn-nav-open .pn-hamburger-bar:nth-child(1) {
    transform: translateY(7.5px) rotate(45deg) !important;
  }
  body.pn-nav-open .pn-hamburger-bar:nth-child(2) {
    opacity: 0 !important;
    transform: scaleX(0) !important;
  }
  body.pn-nav-open .pn-hamburger-bar:nth-child(3) {
    transform: translateY(-7.5px) rotate(-45deg) !important;
  }

  /* ── Sidebar becomes off-screen drawer ────────────────────── */
  .pn-side-nav {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: min(300px, 85vw) !important;
    height: 100dvh !important;
    height: 100vh !important;
    z-index: 2200 !important;
    transform: translateX(-100%) !important;
    transition: transform .28s cubic-bezier(.4,0,.2,1) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border-right: 6px solid var(--pn-red, #c8102e) !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    /* keep yellow background from existing rules */
  }

  body.pn-nav-open .pn-side-nav {
    transform: translateX(0) !important;
    box-shadow: 8px 0 32px rgba(0,0,0,.28) !important;
  }

  /* Sidebar no longer pushes content on mobile */
  .site-shell {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.home .site-shell,
  body.front-page .site-shell {
    margin-left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
  }

  /* ── Backdrop overlay ─────────────────────────────────────── */
  .pn-nav-backdrop {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2100 !important;
    background: rgba(0,0,0,.54) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .28s ease !important;
  }

  body.pn-nav-open .pn-nav-backdrop {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Prevent body scroll when drawer is open */
  body.pn-nav-open {
    overflow: hidden !important;
  }

  /* ── Drawer close button ─────────────────────────────────── */
  .pn-drawer-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(0,0,0,.10) !important;
    border: none !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    color: #111 !important;
    z-index: 10 !important;
    padding: 0 !important;
    transition: background .15s !important;
  }

  .pn-drawer-close:hover {
    background: rgba(0,0,0,.22) !important;
  }

  /* ── Drawer interior layout ──────────────────────────────── */
  .side-logo {
    padding-top: 56px !important; /* clear the close button */
    min-height: 140px !important;
  }

  /* Side menu stays vertical inside drawer */
  .side-menu,
  .side-menu ul,
  .side-menu ol,
  .side-menu-list {
    display: flex !important;
    flex-direction: column !important;
    overflow-x: unset !important;
    white-space: normal !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
  }

  .pn-side-nav .menu-item a,
  .side-menu a,
  .side-menu li a {
    white-space: normal !important;
    padding: 13px 22px !important;
    font-size: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .side-more {
    display: flex !important;
    flex-direction: column !important;
    padding: 12px 22px 16px !important;
    border-top: 1px solid rgba(0,0,0,.10) !important;
  }

  .side-more a {
    padding: 9px 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #111 !important;
  }

  .side-bottom {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px 22px 20px !important;
    border-top: 1px solid rgba(0,0,0,.12) !important;
    margin-top: auto !important;
  }

  /* ── Score strip on mobile ───────────────────────────────── */
  .score-strip,
  .pngrfl-nrl-ticker {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    min-height: 92px !important;
  }

  .score-scroll,
  .ticker-track {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 10px 14px !important;
    gap: 0 !important;
  }

  .score-scroll::-webkit-scrollbar,
  .ticker-track::-webkit-scrollbar {
    display: none !important;
  }

  /* Draw round label stays compact */
  .pn-draw-round-label {
    min-width: 120px !important;
  }

  .draw-score-card,
  .ticker-fixture {
    min-width: 155px !important;
    padding: 10px 14px !important;
  }

  /* ── Hero: full width, taller image on small screens ──────── */
  .pn-spotlight {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }

  .pn-spotlight-main {
    min-height: 340px !important;
  }

  .pn-spotlight-rail {
    display: none !important;
  }

  .pn-spotlight-main-copy {
    padding: 0 20px 28px !important;
  }

  .pn-spotlight-title {
    font-size: clamp(1.4rem, 6vw, 1.9rem) !important;
  }

  /* ── Content grid sections ──────────────────────────────── */
  .pn-vc-section {
    padding: 20px 14px !important;
  }

  .pn-vc-header {
    padding: 0 4px 14px !important;
  }

  .pn-vc-track {
    gap: 10px !important;
    padding-bottom: 6px !important;
  }

  .pn-vc-item {
    min-width: 200px !important;
    max-width: 200px !important;
  }

  /* News grid: single column */
  .pn-hc-one-big-four-small {
    grid-template-columns: 1fr !important;
  }

  .pn-hc-one-big-four-small .pn-hc-feature-card {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-height: 260px !important;
  }

  /* Quick links: 2×2 grid on mobile */
  .pn-home-quick-links {
    flex-wrap: wrap !important;
  }

  .pn-home-ql-btn {
    flex: 0 0 50% !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
  }

  /* Watch page — mobile handled by built-in responsive rules above */

  /* Draw cards */
  .pngrfl-draw-cards {
    grid-template-columns: 1fr !important;
  }

  .pngrfl-draw-cards-wrap {
    padding: 20px 16px !important;
    margin: 0 !important;
  }

  /* Ladder */
  .pngrfl-ladder {
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: auto !important;
  }

  .pngrfl-ladder table {
    min-width: 500px !important;
  }

  /* Partners strip */
  .pngrfl-partners-strip {
    grid-template-columns: 1fr !important;
    padding: 24px 16px !important;
  }

  .pngrfl-partners-strip > div {
    gap: 20px !important;
  }

  /* Page hero */
  .page-hero {
    padding: 36px 16px !important;
  }

  .page-hero h1 {
    font-size: clamp(26px, 7vw, 38px) !important;
  }

  /* Generic content pages */
  .pngrfl-page-content,
  .content-wrap {
    padding: 24px 16px !important;
  }

  /* Inner page grids (clubs, players, sponsors) */
  .club-grid,
  .player-grid,
  .sponsor-grid,
  .news-card-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    padding: 16px !important;
    gap: 12px !important;
  }

  /* Single post article */
  .article {
    padding: 0 16px !important;
  }
}

/* Extra small devices */
@media (max-width: 480px) {
  .pn-mobile-site-name {
    display: none !important;
  }

  .club-grid,
  .player-grid,
  .sponsor-grid,
  .news-card-grid {
    grid-template-columns: 1fr !important;
  }

  .pn-home-ql-btn {
    font-size: 11px !important;
    padding: 16px 8px !important;
  }

  .pngrfl-footer-top {
    gap: 24px !important;
  }

  .pngrfl-footer-nav {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }

  .draw-score-card,
  .ticker-fixture {
    min-width: 136px !important;
    padding: 8px 10px !important;
  }
}

/* Hide hamburger and mobile bar on desktop */
@media (min-width: 821px) {
  .pn-mobile-topbar {
    display: none !important;
  }
  .pn-nav-backdrop {
    display: none !important;
  }
  .pn-hamburger {
    display: none !important;
  }
  .pn-drawer-close {
    display: none !important;
  }
}

/* ---- Draw page filters (competition / round / year / search) ---- */
.pn-draw-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 14px 18px;
  padding: 20px clamp(20px,5vw,64px);
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
}
.pn-draw-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 170px;
}
.pn-draw-field--search { flex: 1 1 240px; }
.pn-draw-field > span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #6a6a6a;
}
.pn-draw-field select,
.pn-draw-field input[type="search"] {
  font: inherit;
  font-size: 14px;
  color: #111;
  background: #fff;
  padding: 9px 12px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  width: 100%;
}
.pn-draw-field select:focus,
.pn-draw-field input[type="search"]:focus {
  outline: 2px solid var(--pn-red, #c8102e);
  outline-offset: 1px;
  border-color: var(--pn-red, #c8102e);
}
.pn-draw-filter-actions { display: flex; gap: 10px; }
.pn-draw-btn {
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  padding: 11px 20px;
  border: 1px solid var(--pn-red, #c8102e);
  border-radius: 4px;
  background: var(--pn-red, #c8102e);
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}
.pn-draw-btn:hover { filter: brightness(.92); }
.pn-draw-btn--ghost { background: #fff; color: var(--pn-red, #c8102e); }
.pn-draw-resultcount {
  padding: 14px clamp(20px,5vw,64px) 0;
  font-size: 13px;
  font-weight: 600;
  color: #6a6a6a;
}
.pn-draw-empty {
  padding: 28px clamp(20px,5vw,64px) 48px;
  color: #6a6a6a;
}
@media (max-width: 640px) {
  .pn-draw-field, .pn-draw-field--search { min-width: 100%; flex-basis: 100%; }
  .pn-draw-filter-actions { width: 100%; }
  .pn-draw-btn { flex: 1; justify-content: center; }
}

/* Competition badge on the full-size draw card. */
.draw-card-comp-logo {
  height: 18px;
  width: auto;
  max-width: 28px;
  object-fit: contain;
  vertical-align: middle;
  margin-right: 7px;
}

/* Competition badge on a compact draw card in the score strip. */
.score-card-comp-logo {
  position: absolute;
  top: 8px;
  right: 8px;
  height: 16px;
  width: auto;
  max-width: 26px;
  object-fit: contain;
  opacity: .9;
}
.score-card.draw-score-card { position: relative; }

/* ---- Score strip: competitions side by side in one row ----
   Each competition is a column in a single band, so the Digicel Cup and the
   Santos Cup sit next to each other. A third competition joins the same row
   rather than starting a new one; below 900px they stack so the cards stay
   readable. */
.score-strip {
  height: auto !important;
  display: block !important;
}
.score-strip-row {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  align-items: stretch;
}
.score-strip .score-column {
  height: 122px;
  display: flex;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
  min-width: 0;
  scrollbar-width: thin;
}
.score-strip .score-column + .score-column {
  border-left: 2px solid var(--pn-red, #c8102e);
}
/* Keep the competition label in view while its own column scrolls.
   The background must match the strip, not be white: the strip renders yellow,
   so a white panel here reads as a white box behind the competition logo. It is
   inherited rather than hard-coded so it tracks whatever the strip actually is. */
.score-strip .pn-draw-round-label {
  position: sticky;
  left: 0;
  z-index: 2;
  background-color: inherit;
  padding-right: 16px;
  flex: 0 0 auto;
}
.score-strip .draw-score-card { flex: 0 0 auto; }

@media (max-width: 900px) {
  .score-strip-row { grid-auto-flow: row; grid-auto-columns: auto; }
  .score-strip .score-column { height: 110px; }
  .score-strip .score-column + .score-column {
    border-left: 0;
    border-top: 1px solid var(--pn-line, #e8e8e8);
  }
}

/* ---- Competition logos: drop the baked-in white ----
   The Santos Cup logo is a JPEG, so its white background is part of the file
   and no amount of sizing hides it. Multiplying against the white surface these
   sit on cancels those pixels while leaving the artwork untouched — white is
   the identity value for multiply, so nothing else shifts. The PNGRFL crest is
   already transparent and is unaffected. */
.pn-draw-round-logo,
.draw-card-comp-logo,
.score-card-comp-logo {
  mix-blend-mode: multiply;
  background: transparent;
}

/* ---- Default page template: keep content inside the shell, and centred ----
   `.pngrfl-page-content` is width:100% with horizontal padding, but the theme
   leaves box-sizing at content-box, so that padding was added *outside* the
   100% — the section rendered 115px wider than the shell and pushed everything
   off the right edge. The blank-canvas template escaped this only because it
   sets padding to 0.

   Border-box brings the padding inside the width; the max-width then holds the
   content in a centred column on wide screens, matching Elementor's own boxed
   container so both templates read the same. */
.pngrfl-page-content {
  box-sizing: border-box;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}
.pngrfl-page-content *,
.pngrfl-page-content *::before,
.pngrfl-page-content *::after {
  box-sizing: border-box;
}
