/* WNB — BBC Style */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
    --f:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    --bg:#fff;
    --surface:#f5f5f5;
    --border:#e5e5e5;
    --text:#333;
    --dim:#777;
    --white:#fff;
    --black:#111;
    --red:#c00;
    --max:82rem;
    --pad:clamp(1rem,3vw,2.5rem);
}
html{scroll-behavior:smooth}
body{font-family:var(--f);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}
input,textarea,select,button{border-radius:0;-webkit-appearance:none;appearance:none}
input[type="text"],input[type="email"],input[type="url"],input[type="search"],input[type="password"],input[type="number"],input[type="datetime-local"],textarea,select{font-family:var(--f);font-size:.82rem;padding:.6rem .75rem;border:1px solid var(--border);background:var(--white);color:var(--black);width:100%;transition:border-color .15s}
input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="password"]:focus,textarea:focus,select:focus{border-color:var(--black);outline:none}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
::selection{background:var(--black);color:var(--white)}

/* ── TOPBAR — White, big, logo left, nav right with coloured underline */
.topbar{background:#fff;position:sticky;top:0;z-index:400}
body.is-article .topbar{position:static}
.topbar-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;padding:0 var(--pad);height:76px}
.topbar-logo{display:flex;align-items:stretch;gap:.5rem}
.topbar-logo-bar{width:5px;background:#c00;flex-shrink:0}
.topbar-logo-text{display:flex;flex-direction:column;justify-content:center;line-height:.88}
.topbar-logo-top{font-size:1.25rem;font-weight:900;color:var(--black);letter-spacing:.01em;display:block}
.topbar-logo-bot{font-size:1.25rem;font-weight:900;color:var(--black);letter-spacing:.01em;display:block}
.topbar-nav{display:flex;align-items:center;gap:0;margin-left:auto}
.topbar-item{display:flex;align-items:center;gap:.4rem;padding:0 1.1rem;height:76px;font-size:.92rem;font-weight:700;color:var(--black);white-space:nowrap;position:relative;transition:color .12s}
.topbar-item::after{content:'';position:absolute;bottom:12px;left:1rem;right:1rem;height:3px;background:var(--cat-color,var(--red));transform:scaleX(0);transition:transform .15s}
.topbar-item:hover::after,.topbar-item.active::after{transform:scaleX(1)}
.nav-icon{width:14px;height:14px;fill:none;stroke:var(--cat-color,var(--black));stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.topbar-divider{width:1px;height:24px;background:var(--border);margin:0 1rem 0 .25rem}
.topbar-search{background:none;border:none;color:#555;cursor:pointer;padding:0;font-size:1.15rem;transition:color .12s;display:flex;align-items:center}
.topbar-search:hover{color:var(--black)}
@media(max-width:900px){.topbar-inner{height:56px}.topbar-item{padding:0 .65rem;font-size:.78rem;height:56px}}
@media(max-width:600px){.topbar-item{padding:0 .45rem;font-size:.72rem}}
.topbar-logo-text{display:flex;flex-direction:column;justify-content:center;line-height:.9}
.topbar-logo-top{font-size:1.1rem;font-weight:900;color:var(--black);letter-spacing:.01em;display:block}
.topbar-logo-bot{font-size:1.1rem;font-weight:900;color:var(--black);letter-spacing:.01em;display:block}
.topbar-nav{display:flex;align-items:center;gap:0;margin-left:auto}
.topbar-item{display:flex;align-items:center;gap:.4rem;padding:0 1.1rem;height:76px;font-size:.92rem;font-weight:700;color:var(--black);white-space:nowrap;position:relative;transition:color .12s}
.nav-icon{width:14px;height:14px;fill:none;stroke:var(--cat-color,var(--black));stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.topbar-item::after{content:'';position:absolute;bottom:12px;left:1rem;right:1rem;height:3px;background:var(--cat-color,var(--red));transform:scaleX(0);transition:transform .15s}
.topbar-item:hover::after,.topbar-item.active::after{transform:scaleX(1)}
.topbar-divider{width:1px;height:24px;background:#ddd;margin:0 1rem 0 .25rem}
.topbar-search{background:none;border:none;color:#555;cursor:pointer;padding:0;font-size:1.15rem;transition:color .12s;display:flex;align-items:center}
.topbar-search:hover{color:var(--black)}
@media(max-width:600px){.topbar-item{padding:.4rem .45rem;font-size:.7rem}.topbar-nav{overflow-x:auto;justify-content:flex-start}}
@media(max-width:600px){.topbar-item{padding:0 .45rem;font-size:.72rem}}

/* ── MOBILE NAV ───────────────────────────────────────────── */
.topbar-mobile{display:none;align-items:center;gap:.75rem;margin-left:auto}
.topbar-hamburger{background:none;border:none;color:#555;cursor:pointer;font-size:1.15rem;transition:color .12s;display:flex;align-items:center}
.topbar-hamburger:hover{color:var(--black)}
.mobile-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:600;transform:translateX(100%);transition:transform .3s ease;overflow-y:auto;padding:0 var(--pad) 2rem}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--border);margin-bottom:.5rem}
.mobile-menu-close{background:none;border:none;color:var(--black);cursor:pointer;font-size:1.4rem;display:flex;align-items:center;padding:.25rem;transition:opacity .12s}
.mobile-menu-close:hover{opacity:.6}
.mobile-menu-inner{display:flex;flex-direction:column;gap:0}
.mobile-menu-item{display:flex;align-items:center;gap:.75rem;padding:1rem 0;font-size:1rem;font-weight:700;color:var(--black)}
.mobile-menu-bar{width:4px;height:18px;background:var(--cat-color,var(--red));border-radius:1px;flex-shrink:0}
.mobile-menu-foot{display:flex;gap:1.25rem;padding-top:1.5rem;margin-top:1rem}
.mobile-menu-foot a{font-size:.78rem;color:var(--dim)}
.mobile-menu-foot a:hover{color:var(--black)}
@media(max-width:768px){
    .topbar-nav{display:none}
    .topbar-mobile{display:flex}
}

/* ── WELCOME BAR ───────────────────────────────────────────── */
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.welcome-bar{border-bottom:none}
.welcome-inner{max-width:var(--max);margin:0 auto;padding:.75rem var(--pad);display:flex;align-items:center;justify-content:space-between}
.welcome-text{font-size:2rem;font-weight:800;color:var(--black)}
.welcome-close{background:var(--black);border:none;color:#fff;cursor:pointer;font-size:.75rem;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}
.welcome-close:hover{background:#333}

/* ── SEARCH ───────────────────────────────────────────────── */
.search-bar{max-height:0;overflow:hidden;transition:max-height .3s;background:#fff}
.search-bar.open{max-height:70px}
.search-bar-inner{max-width:var(--max);margin:0 auto;padding:.75rem var(--pad)}
.search-bar-form{display:flex}
.search-bar-form input{flex:1;padding:.5rem 0;border:none;border-bottom:1px solid #ddd;font-size:1rem;font-family:var(--f);background:transparent;color:var(--black);outline:none}
.search-bar-form input:focus{border-color:var(--black)}
.search-bar-form input::placeholder{color:#999}
.voice-search-btn{
    background:none;border:none;color:var(--dim);
    cursor:pointer;padding:.4rem;margin-left:.5rem;
    display:flex;align-items:center;transition:color .15s;
}
.voice-search-btn:hover{color:var(--black)}
.voice-search-btn.listening{color:#c00;animation:pulse 1s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* ── MAIN ─────────────────────────────────────────────────── */
.mn,.main{max-width:var(--max);margin:0 auto;padding:0 var(--pad) 4rem}
.main{padding-top:2rem}
.time{font-size:.8rem;color:var(--dim);font-weight:500}
.cat{font-size:.68rem;font-weight:600;color:var(--dim)}

/* ── HERO — Full-bleed black strip ─────────────────────────── */
.hero-grid{background:#000;margin-bottom:2.5rem;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.hero-carousel{max-width:var(--max);margin:0 auto;position:relative}
.hero-carousel .lead{display:none}
.hero-carousel .lead.lead-active{display:block}
.hero-nav{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;pointer-events:none;z-index:5}
.hero-nav-btn{background:rgba(255,255,255,.12);border:none;color:#fff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;font-weight:700;transition:background .15s;pointer-events:auto}
.hero-nav-btn:hover{background:rgba(255,255,255,.25)}

/* Desktop: compact image with text overlay at bottom */
.lead{display:block;position:relative;overflow:hidden;aspect-ratio:21/9}
.lead-img{position:absolute;inset:0}
.lead-img img{width:100%;height:100%;object-fit:cover}
.lead-body{position:absolute;bottom:0;left:0;right:0;padding:2.5rem 2rem 1.5rem;background:linear-gradient(transparent,rgba(0,0,0,.85));z-index:2;display:flex;flex-direction:column;gap:.3rem;align-items:flex-start}
.lead-body h1{font-size:1.6rem;font-weight:900;line-height:1.12;letter-spacing:-.03em;color:#fff;max-width:550px}
.lead-body p{font-size:.8rem;color:rgba(255,255,255,.7);line-height:1.5;max-width:440px}
.lead-btn{display:inline-block;margin-top:.5rem;padding:.45rem 1.2rem;background:#fff;color:#000;font-size:.75rem;font-weight:700;font-family:var(--f);transition:opacity .15s}
.lead-btn:hover{opacity:.85}
.lead:hover h1{text-decoration:underline;text-underline-offset:3px}
.img-breaking{position:absolute;top:.75rem;left:.75rem;background:var(--red);color:#fff;font-size:.55rem;font-weight:700;text-transform:uppercase;padding:.2rem .5rem;z-index:3}
.breaking-tag{display:inline-flex;align-items:center;gap:.3rem;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#fff;background:var(--red);padding:.15rem .5rem;margin-bottom:.15rem}
.breaking-tag::before{content:'';width:5px;height:5px;background:#fff;border-radius:50%;animation:blink 1s ease-in-out infinite}
.hero-side{display:none}

/* Mobile: hide hero */
@media(max-width:768px){
    .hero-grid{display:none}
}


@media(max-width:600px){.latest-grid{grid-template-columns:1fr 1fr}}
@media(max-width:400px){.latest-grid{grid-template-columns:1fr}}

/* ── SECTIONS — BBC-style grid layout ──────────────────────── */
.section{margin-bottom:3rem}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1rem}
.section-title{font-size:1.25rem;font-weight:800;color:var(--black);padding-bottom:.4rem;border-bottom:3px solid var(--section-color,var(--black));display:inline-block}
.section-more{font-size:.78rem;font-weight:600;color:var(--black)}
.section-more:hover{text-decoration:underline}

/* BBC Grid: large card left, 3-col grid right */
.bbc-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:1.25rem;align-items:start}
.bbc-lead{display:flex;flex-direction:column;transition:opacity .15s}
.bbc-lead:hover{opacity:.8}
.bbc-lead-img{aspect-ratio:3/2;overflow:hidden;background:var(--surface);position:relative;margin-bottom:.75rem}
.bbc-lead-img img{width:100%;height:100%;object-fit:cover}
.bbc-lead-body h3{font-size:1.3rem;font-weight:900;line-height:1.2;color:var(--black);margin-bottom:.4rem}
.bbc-lead-body p{font-size:.82rem;color:var(--dim);line-height:1.5;margin-bottom:.4rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bbc-side{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.bbc-card{display:flex;flex-direction:column;transition:opacity .15s}
.bbc-card:hover{opacity:.8}
.bbc-card-img{aspect-ratio:3/2;overflow:hidden;background:var(--surface);margin-bottom:.4rem}
.bbc-card-img img{width:100%;height:100%;object-fit:cover}
.bbc-card h4{font-size:.82rem;font-weight:700;line-height:1.3;color:var(--black);margin-bottom:.2rem}
.bbc-card .card-cat{font-size:.6rem}
@media(max-width:900px){.bbc-grid{grid-template-columns:1fr}.bbc-side{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.bbc-side{grid-template-columns:1fr 1fr}}
.cat-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem}
.cat-lead{display:flex;flex-direction:column;gap:.65rem;transition:opacity .15s}
.cat-lead:hover{opacity:.75}
.cat-lead-img{aspect-ratio:16/10;overflow:hidden;background:var(--surface);position:relative}
.cat-lead-img img{width:100%;height:100%;object-fit:cover}
.cat-lead-body h3{font-size:1.3rem;font-weight:900;line-height:1.2;color:var(--black)}
.cat-lead-body p{font-size:.85rem;color:var(--dim);line-height:1.6;margin-top:.3rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cat-lead-body .time{margin-top:.35rem;font-size:.75rem}
.cat-side{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cat-side-item{display:flex;flex-direction:column;gap:.5rem;transition:opacity .15s}
.cat-side-item:hover{opacity:.65}
.cat-side-img{aspect-ratio:16/10;overflow:hidden;background:var(--surface)}
.cat-side-img img{width:100%;height:100%;object-fit:cover}
.cat-side-text h4{font-size:1rem;font-weight:800;line-height:1.3;color:var(--black)}
.cat-side-text .time{margin-top:.2rem;font-size:.75rem}
@media(max-width:900px){.cat-grid{grid-template-columns:1fr}}
@media(max-width:600px){.cat-side{grid-template-columns:1fr}}

/* ── LATEST NEWS CAROUSEL ─────────────────────────────────── */
.latest-carousel-wrap{background:var(--surface);margin-bottom:3rem;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);width:100vw;padding:2rem 0}
.latest-carousel-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.latest-carousel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}
.latest-carousel-label{font-size:.85rem;font-weight:800;color:var(--black);padding-bottom:.5rem;border-bottom:3px solid var(--black);display:inline-block}
.latest-carousel-arrows{display:flex;align-items:center;gap:.5rem}
.lc-arrow{background:var(--black);border:none;color:#fff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;transition:background .15s;flex-shrink:0;font-weight:300}
.lc-arrow:hover{background:#333}
.lc-counter{font-size:.78rem;font-weight:700;color:var(--black);min-width:2.5rem;text-align:center}
.latest-carousel-track{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;transition:opacity .3s,transform .3s}
.lc-card{display:flex;flex-direction:column;background:transparent;transition:opacity .15s}
.lc-card:hover{opacity:.75}
.lc-img{aspect-ratio:16/10;overflow:hidden;background:var(--surface);position:relative}
.lc-img img{width:100%;height:100%;object-fit:cover}
.lc-body{padding:.75rem 0;display:flex;flex-direction:column;gap:.3rem;flex:1}
.lc-cat{font-size:.55rem;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.4px}
.lc-body h3{font-size:.8rem;font-weight:700;line-height:1.35;color:var(--black)}
.lc-time{font-size:.68rem;color:var(--dim);margin-top:auto;padding-top:.4rem}
@media(max-width:900px){.latest-carousel-track{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.latest-carousel-track{grid-template-columns:1fr 1fr;gap:.75rem}}

/* ── MOST READ — Full viewport red strip ───────────────────── */
.most-read-strip{background:linear-gradient(135deg,#b91c1c,#dc2626,#e11d48);padding:2.5rem 0 0;margin:2rem 0 0}
.most-read-strip-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad) 2.5rem}
.most-read-strip-title{font-size:1.1rem;font-weight:800;color:#fff;margin-bottom:1.25rem}
.most-read-strip-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.most-read-strip-card{display:flex;flex-direction:column;background:rgba(0,0,0,.25);overflow:hidden;transition:opacity .15s}
.most-read-strip-card:hover{opacity:.85}
.most-read-strip-img{aspect-ratio:16/9;overflow:hidden}
.most-read-strip-img img{width:100%;height:100%;object-fit:cover}
.most-read-strip-body{padding:.85rem;display:flex;flex-direction:column;gap:.3rem;flex:1}
.most-read-strip-card h4{font-size:.82rem;font-weight:700;color:#fff;line-height:1.3}
.most-read-strip-cat{font-size:.6rem;font-weight:600;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.4px}
.most-read-strip-btn{display:inline-block;margin-top:auto;padding:.45rem 1rem;font-size:.7rem;font-weight:700;color:#000;background:#fff;transition:background .15s;align-self:flex-start}
.most-read-strip-btn:hover{background:#ddd}
@media(max-width:900px){.most-read-strip-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.most-read-strip-grid{grid-template-columns:repeat(2,1fr)}}
.img-placeholder{width:100%;height:100%;background:var(--surface);display:flex;align-items:center;justify-content:center}
.img-placeholder span{font-size:1.5rem;font-weight:900;color:var(--border)}

/* ── UPDATED TAG ──────────────────────────────────────────── */
.updated-tag{display:inline-block;font-size:.6rem;font-weight:600;color:var(--red);margin-left:.4rem}

/* ── CARD SHARE BUTTON ────────────────────────────────────── */
.card-share{position:absolute;top:.5rem;right:.5rem;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);border:none;color:#fff;cursor:pointer;border-radius:50%;font-size:.6rem;opacity:0;transition:opacity .2s;z-index:3}
.cat-lead-img,.cat-side-img,.lc-img{position:relative}
.cat-lead:hover .card-share,.cat-side-item:hover .card-share,.lc-card:hover .card-share{opacity:1}
.card-share:hover{background:rgba(0,0,0,.85)}

/* ── ARTICLE ──────────────────────────────────────────────── */
.article-page{display:grid;grid-template-columns:1fr 320px;gap:2.5rem;max-width:var(--max);margin:0 auto;padding:2rem var(--pad) 4rem;align-items:start}
.article-sidebar{position:sticky;top:5rem;display:flex;flex-direction:column;gap:1.5rem}
.sidebar-title{font-size:.85rem;font-weight:800;color:var(--black);margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:3px solid var(--black);display:inline-block}
.sidebar-card{display:flex;gap:.75rem;padding:.6rem 0;transition:opacity .12s}
.sidebar-card:hover{opacity:.6}
.sidebar-card-img{width:80px;min-width:80px;aspect-ratio:4/3;overflow:hidden;background:var(--surface)}
.sidebar-card-img img{width:100%;height:100%;object-fit:cover}
.sidebar-card-body{flex:1;display:flex;flex-direction:column;gap:.2rem}
.sidebar-headline{font-size:.95rem;font-weight:700;color:var(--black);line-height:1.3}
.sidebar-time{font-size:.65rem;color:var(--dim);display:block}
@media(max-width:900px){.article-page{grid-template-columns:1fr}.article-sidebar{position:static}}
.article-header{margin-bottom:1.25rem}
.article-category{display:none}
.article-header h1{font-size:2.5rem;font-weight:900;line-height:1.1;letter-spacing:-.04em;color:var(--black);margin-bottom:.75rem}
.article-meta-row{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem}
.article-meta{display:flex;gap:.4rem;font-size:.8rem;color:var(--dim);flex-wrap:wrap;align-items:center}
.article-meta .sep{opacity:.4}
.article-author{font-weight:700;color:var(--black)}
.article-meta-row .share-buttons{display:flex;gap:.3rem}
.article-meta-row .share-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;color:#fff;cursor:pointer;border-radius:50%;transition:opacity .15s}
.article-meta-row .share-btn:hover{opacity:.8}
.article-meta-row .share-btn[title="Share on X"]{background:#000}
.article-meta-row .share-btn[title="Share on Facebook"]{background:#1877f2}
.article-meta-row .share-btn[title="Copy link"]{background:#555}
.author-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;margin-right:.2rem}
.article-image{margin:1.25rem 0;overflow:hidden;position:relative;max-height:400px}
.article-image img{width:100%;height:100%;object-fit:cover}
.image-source{position:absolute;bottom:0;right:0;font-size:.55rem;color:#fff;padding:.3rem .55rem;background:rgba(0,0,0,.6)}
.article-image-inline{margin:1.25rem 0;overflow:hidden}
.article-image-inline img{width:100%;height:auto}
.article-body{font-size:1.1rem;line-height:1.8;color:var(--text)}
.article-body p{margin-bottom:1.25rem}
.article-body h2,.article-body h3{font-weight:700;color:var(--black);margin:1.5rem 0 .6rem;font-size:1.1rem}
.article-body blockquote{padding:.85rem 1.1rem;margin:1.25rem 0;border-left:3px solid var(--border);color:var(--dim);font-style:italic}
.article-body a{color:var(--black);text-decoration:underline;text-underline-offset:2px}
.article-body a:hover{opacity:.6}
.article-body.ts-small{font-size:.88rem;line-height:1.7}
.article-body.ts-large{font-size:1.12rem;line-height:1.85}
.article-video{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin:1.5rem 0}
.article-video iframe{position:absolute;top:0;left:0;width:100%;height:100%}
.article-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:2rem;align-items:center}
.article-tags-label{font-size:.7rem;font-weight:700;color:var(--dim);text-transform:uppercase;letter-spacing:.3px;margin-right:.25rem}
.article-tags a{font-size:.82rem;font-weight:600;padding:.5rem 1rem;background:var(--surface);color:var(--black);transition:all .12s}
.article-tags a:hover{background:var(--black);color:#fff}
.pwa-install-strip{margin:2rem 0;position:relative;background:var(--red);color:#fff;overflow:hidden}
.pwa-install-strip::before{content:'';position:absolute;bottom:-20px;left:-20px;width:150px;height:150px;background:rgba(255,255,255,.05);transform:rotate(20deg)}
.pwa-install-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.5rem;gap:1rem}
.pwa-install-text{display:flex;flex-direction:column;gap:.15rem}
.pwa-install-text strong{font-size:.85rem;font-weight:800}
.pwa-install-text span{font-size:.7rem;color:rgba(255,255,255,.65)}
.pwa-install-btn{background:#fff;color:var(--red);border:none;padding:.5rem 1.25rem;font-size:.75rem;font-weight:700;font-family:var(--f);cursor:pointer;white-space:nowrap;transition:opacity .15s}
.pwa-install-btn:hover{opacity:.9}
.pwa-installed-msg{padding:.5rem 1.5rem .75rem;font-size:.68rem;color:rgba(255,255,255,.5);position:relative;z-index:1}
.pwa-install-btn:disabled{opacity:.4;cursor:default}
@media(max-width:480px){.pwa-install-inner{flex-direction:column;text-align:center;gap:.75rem}}
.listen-bar{display:flex;align-items:center;gap:.6rem;padding:.6rem 0;margin-bottom:1rem}
.listen-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--black);border:none;color:#fff;cursor:pointer;border-radius:0;font-size:.6rem;transition:background .15s}
.listen-btn:hover{background:#333}
.listen-btn.playing{background:var(--red)}
.listen-text{font-size:.72rem;font-weight:600;color:var(--black)}
.listen-time{font-size:.6rem;color:var(--dim)}
.text-size-toggle{margin-left:auto;display:flex;gap:.2rem}
.ts-btn{background:none;border:none;font-family:var(--f);font-weight:700;color:var(--dim);cursor:pointer;padding:.2rem .35rem;font-size:.65rem}
.ts-btn:hover{color:var(--black)}.ts-btn.ts-active{color:var(--black);background:var(--surface)}.ts-btn.ts-large{font-size:.78rem}
.share-bottom{display:none}

/* ── LIVE FEED ────────────────────────────────────────────── */
.live-feed{margin-bottom:2rem}
.live-feed-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.6rem;border-bottom:3px solid var(--red);margin-bottom:0}
.live-feed-header-left{display:flex;align-items:center;gap:.5rem}
.live-dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:blink 1s ease-in-out infinite}
.live-feed-title{font-size:.9rem;font-weight:900;color:var(--black)}
.live-feed-header-right{display:flex;align-items:center;gap:.5rem}
.live-feed-viewers{font-size:.65rem;font-weight:500;color:var(--dim)}
.live-feed-sep{color:var(--dim);font-size:.6rem}
.live-feed-updated{font-size:.6rem;color:var(--dim)}
.live-feed-list{display:flex;flex-direction:column;gap:3px}
.live-feed-block{padding:1.25rem;background:var(--surface)}
.live-feed-block-meta{display:flex;align-items:center;margin-bottom:.75rem}
.live-feed-block-time-badge{background:var(--red);color:#fff;font-size:.65rem;font-weight:700;padding:.2rem .55rem;font-variant-numeric:tabular-nums}
.live-feed-block-byline{display:flex;align-items:center;gap:.4rem;margin-left:auto}
.live-feed-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;order:2}
.live-feed-avatar-placeholder{width:24px;height:24px;border-radius:50%;background:#555;color:var(--black);display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700;order:2}
.live-feed-block-author{font-size:.68rem;font-weight:600;color:var(--dim);order:1}
.live-feed-block-title{font-size:1.2rem;font-weight:900;color:var(--black);line-height:1.25;margin-bottom:.5rem}
.live-feed-block-body{font-size:.92rem;color:var(--text);line-height:1.75}
.live-feed-block-image{margin-top:1rem;overflow:hidden}
.live-feed-block-image img{width:100%;height:auto}
.live-feed-block-share{margin-top:.75rem}
.live-share-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;background:var(--black);border:none;color:#fff;cursor:pointer;font-size:.68rem;font-weight:600;font-family:var(--f);transition:opacity .15s}
.live-share-btn:hover{opacity:.7}
.live-share-btn svg{flex-shrink:0}
.share-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9999;align-items:flex-end;justify-content:center}
.share-modal-overlay.open{display:flex}
.share-modal{background:#fff;width:100%;max-width:400px;padding:1.5rem;margin-bottom:0}
.share-modal-title{font-size:.85rem;font-weight:800;margin-bottom:1rem;color:var(--black)}
.share-modal-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}
.share-modal-opt{display:flex;flex-direction:column;align-items:center;gap:.35rem;cursor:pointer;padding:.6rem;transition:background .12s}
.share-modal-opt:hover{background:var(--surface)}
.share-modal-opt svg{width:24px;height:24px}
.share-modal-opt span{font-size:.6rem;font-weight:600;color:var(--dim)}
.share-modal-close{width:100%;padding:.65rem;background:var(--surface);border:none;font-size:.78rem;font-weight:700;font-family:var(--f);cursor:pointer;color:var(--black)}
.share-modal-close:hover{background:#e5e5e5}
@media(min-width:601px){.share-modal-overlay{align-items:center}.share-modal{margin-bottom:0}}
.article-live-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--red);margin-bottom:.5rem}
.live-feed-ended .live-feed-header{border-bottom-color:var(--black)}
.live-feed-ended .live-feed-block-time-badge{background:var(--black);color:#fff}

/* ── COMMENTS ─────────────────────────────────────────────── */
.comments-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}
.comments-title{font-size:1rem;font-weight:800;color:var(--black);margin-bottom:.75rem}
.comments-count{font-size:.62rem;color:var(--dim);margin-bottom:1rem}
.comments-list{margin-bottom:1.5rem}
.comment-item{display:flex;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border)}
.comment-item:last-child{border-bottom:none}
.comment-avatar{width:30px;height:30px;min-width:30px;background:var(--surface);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.6rem;color:var(--dim);border-radius:50%}
.comment-content{flex:1}
.comment-meta{display:flex;gap:.4rem;align-items:center;margin-bottom:.2rem}
.comment-author{font-size:.82rem;font-weight:700;color:var(--black)}
.comment-date{font-size:.58rem;color:var(--dim)}
.comment-body{font-size:.88rem;color:var(--text);line-height:1.65}
.comments-empty{padding:1.5rem 0}
.comments-empty-title{font-size:.85rem;font-weight:700;color:var(--black);margin-bottom:.2rem}
.comments-empty-desc{font-size:.75rem;color:var(--dim)}
.comment-form-wrapper{padding-top:1.5rem}
.comment-form-wrapper h3{font-size:.85rem;font-weight:700;color:var(--black);margin-bottom:1rem}
.comment-form .form-group{margin-bottom:1.25rem}
.comment-form .form-group label{display:block;font-size:.62rem;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.4rem}
.comment-form .form-group label small{font-weight:400;text-transform:none;letter-spacing:0}
.comment-form .form-group input,.comment-form .form-group textarea{width:100%;padding:.65rem .9rem;border:1px solid var(--border);border-radius:0;font-size:.82rem;font-family:var(--f);background:var(--white);color:var(--black);transition:border-color .15s,box-shadow .15s}
.comment-form .form-group input:hover,.comment-form .form-group textarea:hover{border-color:#ccc}
.comment-form .form-group input:focus,.comment-form .form-group textarea:focus{outline:none;border-color:#ddd;box-shadow:0 0 0 3px rgba(0,0,0,.04)}
.comment-form .form-group input::placeholder,.comment-form .form-group textarea::placeholder{color:var(--dim)}
.comment-form .form-group textarea{resize:vertical;min-height:100px;line-height:1.7}
.comment-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.btn-comment-submit{background:var(--black);color:#fff;border:none;padding:.75rem 2rem;font-size:.78rem;font-weight:700;font-family:var(--f);cursor:pointer;border-radius:0;transition:background .15s;letter-spacing:.01em}
.btn-comment-submit:hover{background:#333}
.btn-comment-submit:active{transform:scale(.97)}
.comment-guidelines{font-size:.68rem;color:var(--dim);margin-top:.75rem}
.comment-guidelines a{color:var(--black);text-decoration:underline}
.comments-section .alert{padding:.6rem .85rem;font-size:.72rem;margin-bottom:1rem}
.comments-section .alert-error{background:#fef2f2;color:#b91c1c}
.comments-section .alert-success{background:#f0fdf4;color:#15803d}

/* ── FOOTER ───────────────────────────────────────────────── */
.footer{margin-top:0;background:#050505;color:#fff}
.footer-inner{max-width:var(--max);margin:0 auto;padding:2.5rem var(--pad) 1.5rem}
.footer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.75rem}
.footer-brand{display:flex;flex-direction:column;gap:.25rem}
.footer-logo{font-size:1rem;font-weight:900;color:#fff;display:flex;align-items:stretch;gap:.6rem}
.footer-logo-bar{width:5px;background:var(--red);flex-shrink:0}
.footer-logo-text{display:flex;flex-direction:column;justify-content:center;line-height:.9}
.footer-logo-text span{display:block;font-size:1.2rem;font-weight:900;letter-spacing:.01em}
.footer-tagline{font-size:.72rem;color:rgba(255,255,255,.4)}
.footer-social{display:flex;gap:1rem}
.footer-social a{color:rgba(255,255,255,.4);transition:color .12s;display:flex;align-items:center}
.footer-social a:hover{color:#fff}
.footer-links{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1.25rem}
.footer-links a{font-size:.78rem;color:rgba(255,255,255,.55);transition:color .12s}
.footer-links a:hover{color:#fff}
.footer-sep{color:rgba(255,255,255,.15)}
.footer-bottom{font-size:.62rem;color:rgba(255,255,255,.3)}
@media(max-width:600px){.footer-top{flex-direction:column;align-items:flex-start;gap:1rem}}

/* ── CATEGORY & SEARCH PAGES ─────────────────────────────── */
.cat-page-header,.search-page-header{padding:1.5rem 0 1.25rem;margin-bottom:1.75rem;margin-top:2rem}
.cat-page-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;display:block;margin-bottom:.35rem}
.cat-page-title{font-size:1.75rem;font-weight:900;color:var(--black);letter-spacing:-.03em;line-height:1.1}
.search-page-header{border-top:4px solid var(--black);padding-top:1.5rem}
.search-count{font-size:.72rem;color:var(--dim);margin-bottom:1.5rem}

.cat-page-lead{display:grid;grid-template-columns:1.6fr 1fr;gap:1.5rem;align-items:start;margin-bottom:2.5rem;transition:opacity .12s}
.cat-page-lead:hover{opacity:.85}
.cat-page-lead-img{aspect-ratio:16/9;overflow:hidden;background:var(--surface);position:relative}
.cat-page-lead-img img{width:100%;height:100%;object-fit:cover}
.cat-page-lead-body{display:flex;flex-direction:column;gap:.35rem;padding-top:.25rem}
.cat-page-lead-body h2{font-size:1.4rem;font-weight:900;color:var(--black);line-height:1.15;letter-spacing:-.02em}
.cat-page-lead-body p{font-size:.85rem;color:var(--dim);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cat-page-lead-img img{width:100%;height:100%;object-fit:cover}
.cat-page-lead-body{display:flex;flex-direction:column;gap:.6rem}
.cat-page-lead-body h2{font-size:1.5rem;font-weight:900;line-height:1.15;letter-spacing:-.03em;color:var(--black)}
.cat-page-lead-body p{font-size:.85rem;color:var(--dim);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.cat-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.cat-page-card{display:flex;flex-direction:column;transition:opacity .12s}
.cat-page-card:hover{opacity:.75}
.cat-page-card-img{aspect-ratio:16/9;overflow:hidden;background:var(--surface);position:relative}
.cat-page-card-img img{width:100%;height:100%;object-fit:cover}
.cat-page-card-body{display:flex;flex-direction:column;gap:.25rem;padding:.65rem 0}
.cat-page-card-cat{font-size:.62rem;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.4px}
.cat-page-card-body h3{font-size:.9rem;font-weight:800;line-height:1.3;color:var(--black)}
.cat-page-card-body p{font-size:.78rem;color:var(--dim);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cat-page-card-time{font-size:.75rem;color:var(--dim);font-weight:500}

.search-page-form{display:flex;align-items:center;gap:0;margin-bottom:1.75rem;border-bottom:1px solid var(--border);padding-bottom:0}
.search-page-form input{flex:1;padding:.75rem 0;border:none;font-size:1rem;font-family:var(--f);background:transparent;color:var(--black);outline:none}
.search-page-form input:focus{border-color:var(--black)}
.search-page-form input::placeholder{color:#999}
.search-page-form .voice-search-btn{margin-left:.5rem}
.search-page-submit{background:var(--black);color:#fff;border:none;padding:.55rem 1.25rem;font-size:.75rem;font-weight:700;font-family:var(--f);cursor:pointer;margin-left:.75rem;transition:background .15s}
.search-page-submit:hover{background:#333}

@media(max-width:900px){
    .cat-page-lead{grid-template-columns:1fr}
    .cat-page-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
    .cat-page-title{font-size:1.3rem}
    .cat-page-lead-body h2{font-size:1.15rem}
    .cat-page-grid{grid-template-columns:1fr 1fr;gap:1rem}
}
@media(max-width:400px){.cat-page-grid{grid-template-columns:1fr}}

/* ── PAGES ────────────────────────────────────────────────── */
.page-title{font-size:1.4rem;font-weight:900;color:var(--black);margin-bottom:1.5rem}
.empty-state{padding:4rem 0}
.empty-state h2,.empty-state-label{font-size:1rem;font-weight:800;color:var(--black);margin-bottom:.3rem}
.empty-state p,.empty-state-desc{font-size:.82rem;color:var(--dim)}
.empty-state-link{display:inline-block;margin-top:1rem;font-size:.72rem;font-weight:600;color:var(--dim)}
.empty-state-link:hover{color:var(--black)}
.error-page{padding:6rem 0}
.error-page .error-code{font-size:5rem;font-weight:900;color:var(--border);line-height:1}
.error-page h1{font-size:1.3rem;font-weight:900;color:var(--black);margin-top:.5rem}
.error-page p{font-size:.82rem;color:var(--dim);margin-top:.4rem}
.error-page .error-link{display:inline-block;margin-top:1.5rem;font-size:.72rem;font-weight:600;color:#fff;background:var(--black);padding:.6rem 2rem}
.error-page .error-link:hover{opacity:.8}
.error-suggestions{margin-top:3rem}
.error-suggestions-title{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--dim);margin-bottom:1.25rem}
.search-page-form{display:flex;gap:0;max-width:500px;margin-bottom:2rem}
.search-page-form input{flex:1;padding:.65rem .9rem;border:1px solid var(--border);border-right:none;border-radius:6px 0 0 6px;font-size:.82rem;font-family:var(--f);background:var(--white);color:var(--black);transition:border-color .15s}
.search-page-form input:focus{outline:none;border-color:#ddd;box-shadow:0 0 0 3px rgba(0,0,0,.04)}
.search-page-form input::placeholder{color:var(--dim)}
.search-page-form button{background:var(--black);color:#fff;border:none;padding:.65rem 1.5rem;font-size:.78rem;font-weight:700;font-family:var(--f);cursor:pointer;border-radius:0;transition:background .15s}
.search-page-form button:hover{background:#333}
.feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:3px}
.item{background:var(--surface);display:flex;flex-direction:column}
.item:hover{opacity:.85}
.item-img{aspect-ratio:16/9;overflow:hidden}
.item-img img{width:100%;height:100%;object-fit:cover}
.item-text{padding:.75rem}
.item-text h2{font-size:.78rem;font-weight:700;color:var(--black);line-height:1.35}
.news-card{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}
.news-card:last-child{border-bottom:none}
.news-card:hover{opacity:.7}
.news-card .card-image{width:120px;min-width:120px;aspect-ratio:4/3;overflow:hidden;background:var(--surface);order:2}
.news-card .card-image img{width:100%;height:100%;object-fit:cover}
.news-card .card-body{flex:1;order:1}
.news-card h3{font-size:.9rem;font-weight:700;color:var(--black);line-height:1.35}
.news-card .card-meta{font-size:.6rem;color:var(--dim);margin-top:.25rem}

/* ── ABOUT / LEGAL ────────────────────────────────────────── */
.about-page,.legal-page{max-width:720px}
.about-hero{margin-bottom:3rem}
.about-hero h1{font-size:2rem;font-weight:900;color:var(--black);margin-bottom:.75rem}
.about-lead{font-size:1rem;color:var(--dim);line-height:1.7}
.about-section{margin-bottom:2.5rem}
.about-section h2{font-size:1rem;font-weight:800;color:var(--black);margin-bottom:.6rem}
.about-section p{font-size:.88rem;color:var(--text);line-height:1.75;margin-bottom:.75rem}
.about-section a{color:var(--black);text-decoration:underline}
.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem}
.value-item h3{font-size:.82rem;font-weight:800;color:var(--black);margin-bottom:.3rem}
.value-item p{font-size:.78rem;color:var(--dim);line-height:1.6;margin-bottom:0}
.brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.25rem 0 2rem}
.brand-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:.75rem}
.brand-dark{background:#fff}.brand-light{background:var(--surface);border:1px solid var(--border)}
.brand-logo{font-size:1rem;font-weight:900}.brand-dark .brand-logo{color:var(--black)}.brand-light .brand-logo{color:var(--black)}
.brand-short{font-size:1.2rem}.brand-icon-mark{font-size:1.5rem}
.brand-label{font-size:.55rem;color:var(--dim);text-transform:uppercase;letter-spacing:.5px}.brand-dark .brand-label{color:rgba(0,0,0,.5)}
.brand-colours{margin-bottom:1.5rem}.brand-colours h3,.brand-type h3{font-size:.82rem;font-weight:700;color:var(--black);margin-bottom:.75rem}
.colour-swatches{display:flex;gap:1rem;flex-wrap:wrap}
.swatch{display:flex;flex-direction:column;align-items:center;gap:.4rem}
.swatch-block{width:48px;height:48px}.swatch span{font-size:.58rem;color:var(--dim);text-align:center;line-height:1.4}
.brand-type p{font-size:.82rem;color:var(--text);line-height:1.6;margin-bottom:.3rem}
.legal-page h1{font-size:1.8rem;font-weight:900;color:var(--black);margin-bottom:.35rem}
.legal-updated{font-size:.72rem;color:var(--dim);margin-bottom:2.5rem}
.legal-page h2{font-size:.88rem;font-weight:800;color:var(--black);margin-top:2rem;margin-bottom:.5rem}
.legal-page p{font-size:.85rem;color:var(--text);line-height:1.75;margin-bottom:.75rem}
.legal-page ul{margin:0 0 1rem 1.25rem}.legal-page ul li{font-size:.85rem;color:var(--text);line-height:1.75;margin-bottom:.35rem}
.legal-page a{color:var(--black);text-decoration:underline}.legal-page strong{font-weight:700;color:var(--black)}
@media(max-width:600px){.about-values{grid-template-columns:1fr}.brand-grid{grid-template-columns:repeat(2,1fr)}.comment-form-row{grid-template-columns:1fr}}

/* ── CATEGORY PAGE ─────────────────────────────────────────── */
.cat-page-header{padding-top:1rem;margin-bottom:2rem}
.cat-page-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:.25rem;color:var(--red)}
.cat-page-title{font-size:1.75rem;font-weight:900;color:var(--black);letter-spacing:-.03em}

/* ── COOKIE ───────────────────────────────────────────────── */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#fff;border-top:1px solid var(--border);box-shadow:0 -4px 24px rgba(0,0,0,.08);transform:translateY(100%);transition:transform .4s}
.cookie-banner.show{transform:translateY(0)}
.cookie-inner{max-width:var(--max);margin:0 auto;padding:2.5rem var(--pad);display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.25rem}
.cookie-icon{font-size:1.6rem;color:var(--black)}
.cookie-body{max-width:520px}
.cookie-body h3{font-size:1.1rem;font-weight:800;color:var(--black);margin-bottom:.4rem}
.cookie-body p{font-size:.8rem;color:var(--dim);line-height:1.6;margin-bottom:.2rem}
.cookie-body a{color:var(--black);font-weight:600;text-decoration:underline}
.cookie-actions{display:flex;gap:.75rem}
.cookie-btn{padding:.75rem 2rem;font-size:.82rem;font-weight:700;font-family:var(--f);border:none;cursor:pointer;transition:background .15s}
.cookie-accept{background:var(--black);color:#fff}
.cookie-accept:hover{background:#333}
.cookie-reject{background:var(--surface);color:var(--black)}
.cookie-reject:hover{background:#e5e5e5}
@media(max-width:600px){.cookie-actions{flex-direction:column;width:100%}.cookie-btn{width:100%;text-align:center}}

/* ── SCROLL HEADER — shows article title on scroll ─────────── */
.scroll-header{position:fixed;top:0;left:0;right:0;z-index:500;background:#fff;border-bottom:1px solid var(--border);transform:translateY(-100%);transition:transform .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.scroll-header.visible{transform:translateY(0)}
.scroll-header-inner{max-width:var(--max);margin:0 auto;padding:.85rem var(--pad);display:flex;align-items:center;gap:1rem}
.scroll-header-img{width:60px;height:42px;object-fit:cover;flex-shrink:0}
.scroll-header-content{flex:1;min-width:0}
.scroll-header-cat{font-size:.58rem;font-weight:600;color:var(--red);text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:.1rem}
.scroll-header-title{font-size:1.1rem;font-weight:800;color:var(--black);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scroll-header-share-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:none;color:var(--dim);cursor:pointer;border-radius:50%;transition:all .12s;flex-shrink:0}
.scroll-header-share-btn:hover{background:var(--black);color:#fff}
.scroll-header-share .share-btn[title="Copy link"]{background:#555}

/* ── WEATHER WIDGET ────────────────────────────────────────── */
.weather-widget{display:flex;flex-direction:column}
.weather-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border)}
.weather-item:last-child{border-bottom:none}
.weather-left{display:flex;align-items:center;gap:.5rem}
.weather-icon{font-size:.85rem;color:var(--dim);width:1.2rem;text-align:center}
.weather-city{font-size:.75rem;font-weight:600;color:var(--black)}
.weather-right{display:flex;align-items:center;gap:.5rem}
.weather-temp{font-size:.82rem;font-weight:700;color:var(--black)}
.weather-desc{font-size:.6rem;color:var(--dim)}
.weather-loading{font-size:.72rem;color:var(--dim)}

/* ── UTILS ────────────────────────────────────────────────── */
.progress-bar{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--black);z-index:9999}
.back-to-top{position:fixed;bottom:1.5rem;right:1.5rem;z-index:280;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--black);color:#fff;border:none;border-radius:0;font-size:.75rem;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s,background .15s}
.back-to-top:hover{background:#333}
.back-to-top.show{opacity:1;pointer-events:auto}
@media print{.topbar,.search-bar,.cookie-banner,.back-to-top,.progress-bar,.footer,.listen-bar,.text-size-toggle,.comments-section,.share-bottom,.article-sidebar,.welcome-bar,.scroll-header{display:none!important}body{background:#fff;color:var(--black)}.article-header h1,.article-body{color:var(--black)}}
.cat-strip,.drawer,.drawer-overlay,.subnav,.admin-topbar-main,.admin-nav-bar,.admin-sidebar,.admin-topbar,.overlay-menu,.pwa-banner,.match-hero,.home-above-fold,.home-front,.home-lead,.home-side,.home-mid,.home-grid,.hp-hero,.hp-secondary,.hp-row,.hp-latest,.home-external,.hp2-above,.hp2-section,.hp2-body,.nx-hero,.nx-sub,.nx-row{display:none}

/* ── GLOBAL RESPONSIVE ────────────────────────────────────── */
@media(max-width:768px){
    .hero-grid{margin-bottom:2rem}
    .welcome-text{font-size:1rem}
    .cat-lead-body h3{font-size:.9rem}
    .article-header h1{font-size:1.5rem}
    .article-page{padding:1.5rem var(--pad) 3rem}
    .scroll-header-img{width:45px;height:32px}
    .scroll-header-title{font-size:.82rem}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
}
@media(max-width:600px){
    .lead{grid-template-columns:1fr}
    .lead-img{height:200px}
    .lead-body{padding:0}
    .topbar-inner{height:52px}
    .topbar-logo-top,.topbar-logo-bot{font-size:.85rem}
    .cat-grid{grid-template-columns:1fr}
    .cat-side{grid-template-columns:1fr}
    .comment-form-row{grid-template-columns:1fr}
    .about-values{grid-template-columns:1fr}
    .brand-grid{grid-template-columns:repeat(2,1fr)}
    .footer-grid{grid-template-columns:1fr}
    .footer-bottom{flex-direction:column;gap:.3rem;align-items:flex-start}
    .cookie-inner{flex-direction:column;text-align:center}
    .cookie-actions{justify-content:center}
    .welcome-inner{flex-direction:row}
    .welcome-text{font-size:.88rem}
    .most-read-rank{font-size:1.3rem}
    .feed{grid-template-columns:1fr 1fr}
}
@media(max-width:400px){
    .feed{grid-template-columns:1fr}
    .topbar-item{padding:0 .35rem;font-size:.68rem}
}

/* ── FOLLOW LIGHTBOX ──────────────────────────────────────── */
.follow-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9999;align-items:center;justify-content:center}
.follow-overlay.open{display:flex}
.follow-modal{background:var(--red);width:100%;max-width:380px;position:relative;margin:1rem;overflow:hidden}
.follow-modal::before{content:'';position:absolute;top:-30px;right:-30px;width:160px;height:160px;background:rgba(255,255,255,.05);transform:rotate(15deg)}
.follow-close{position:absolute;top:.75rem;right:.85rem;background:none;border:none;font-size:1.4rem;cursor:pointer;color:rgba(255,255,255,.5);transition:color .12s;z-index:2}
.follow-close:hover{color:#fff}
.follow-modal-inner{position:relative;z-index:1;padding:2.5rem 2rem 2rem;text-align:center}
.follow-modal-inner h2{font-size:1.2rem;font-weight:900;color:#fff;margin-bottom:.5rem;letter-spacing:-.03em}
.follow-modal-inner p{font-size:.78rem;color:rgba(255,255,255,.7);line-height:1.6;margin-bottom:1.75rem}
.follow-links{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}
.follow-link{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.75rem 1rem;font-size:.8rem;font-weight:700;color:#fff;transition:opacity .12s;border:1px solid rgba(255,255,255,.2)}
.follow-link:hover{opacity:.85;border-color:rgba(255,255,255,.5)}
.follow-x{background:rgba(255,255,255,.1)}
.follow-bsky{background:rgba(255,255,255,.1)}
.follow-dismiss{background:none;border:none;font-size:.72rem;color:rgba(255,255,255,.5);cursor:pointer;font-family:var(--f);transition:color .12s}
.follow-dismiss:hover{color:#fff}

/* ── AD SLOTS ─────────────────────────────────────────────── */
.ad-slot{margin:1.75rem 0;text-align:center;position:relative}
.ad-link{display:block}
.ad-img{width:100%;height:auto;display:block}
.ad-label-overlay{
    position:absolute;top:.5rem;right:.5rem;
    background:rgba(0,0,0,.8);color:#fff;
    border:none;padding:.3rem .5rem;
    font-size:.6rem;font-weight:800;font-family:var(--f);
    cursor:pointer;transition:background .15s;
    letter-spacing:.5px;
}
.ad-label-overlay:hover{background:rgba(0,0,0,1)}
.ad-tag{font-size:.58rem;font-weight:900;letter-spacing:.5px}
.ad-slot-sidebar{margin:0}
.ad-slot-sidebar .ad-img{width:100%}

/* Ad placeholder — red banner style */
.ad-placeholder{border:none;background:var(--red)}
.ad-placeholder-inner{padding:1.5rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.3rem}
.ad-placeholder-badge{font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:rgba(255,255,255,.6);margin-bottom:.1rem}
.ad-placeholder-inner strong{display:block;font-size:.92rem;font-weight:800;color:#fff}
.ad-placeholder-inner p{font-size:.72rem;color:rgba(255,255,255,.75);margin-bottom:.4rem}
.ad-placeholder-link{font-size:.75rem;font-weight:700;color:#fff;background:rgba(255,255,255,.15);padding:.45rem 1.25rem;transition:background .15s;display:inline-block}
.ad-placeholder-link:hover{background:rgba(255,255,255,.25)}
.ad-slot-sidebar .ad-placeholder-inner{padding:1.25rem 1rem}

/* ── ARTICLE SHARE BUTTON ─────────────────────────────────── */
.share-trigger{
    display:inline-flex;align-items:center;gap:.4rem;
    background:var(--black);color:#fff;border:none;
    padding:.45rem .9rem;font-size:.72rem;font-weight:600;
    font-family:var(--f);cursor:pointer;transition:opacity .15s;
}
.share-trigger:hover{opacity:.7}

/* ── FLOATING SHARE ───────────────────────────────────────── */
.floating-share{
    position:fixed;bottom:1.5rem;right:1.5rem;z-index:800;
    width:48px;height:48px;
    background:var(--black);color:#fff;border:none;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;
    box-shadow:0 4px 16px rgba(0,0,0,.2);
    opacity:0;pointer-events:none;
    transform:translateY(10px);
    transition:opacity .25s,transform .25s;
}
.floating-share.visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.floating-share:hover{background:#333}
@media(max-width:600px){.floating-share{bottom:1rem;right:1rem;width:42px;height:42px}}

/* ── BREAKING NEWS BANNER ─────────────────────────────────── */
.breaking-banner{
    display:flex;align-items:center;gap:.6rem;
    background:#c00;color:#fff;
    padding:.6rem 1rem;margin-bottom:1.25rem;
    font-size:.75rem;font-weight:600;
    transition:opacity .12s;
}
.breaking-banner:hover{opacity:.9}
.breaking-banner-dot{
    width:8px;height:8px;background:#fff;border-radius:50%;
    animation:blink 1.2s ease-in-out infinite;flex-shrink:0;
}
.breaking-banner-label{
    font-size:.6rem;font-weight:800;letter-spacing:.5px;
    flex-shrink:0;
}
.breaking-banner-text{
    flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.breaking-banner-link{
    font-size:.65rem;opacity:.8;flex-shrink:0;white-space:nowrap;
}
@media(max-width:600px){
    .breaking-banner-link{display:none}
}

/* ── AUTHOR PROFILE ───────────────────────────────────────── */
.author-profile{margin-bottom:2.5rem;padding-top:1.5rem}
.author-profile-header{display:flex;gap:1.5rem;align-items:flex-start}
.author-profile-avatar{width:80px;height:80px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:900;flex-shrink:0;overflow:hidden}
.author-profile-avatar img{width:100%;height:100%;object-fit:cover}
.author-profile-info{flex:1}
.author-profile-info h1{font-size:1.5rem;font-weight:900;color:var(--black);letter-spacing:-.03em;margin-bottom:.15rem}
.author-profile-role{font-size:.75rem;color:var(--dim);display:block;margin-bottom:.6rem}
.author-profile-bio{font-size:.82rem;color:var(--text);line-height:1.7;margin-bottom:.75rem;max-width:500px}
.author-profile-stats{display:flex;gap:1.25rem;font-size:.72rem;color:var(--dim);margin-bottom:.6rem}
.author-profile-stats strong{color:var(--black);font-weight:800}
.author-profile-social{font-size:.72rem;font-weight:700;color:var(--black)}
.author-profile-social:hover{opacity:.6}
@media(max-width:500px){.author-profile-header{flex-direction:column;align-items:center;text-align:center}.author-profile-stats{justify-content:center}}

/* ── PAGINATION ───────────────────────────────────────────── */
.pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:2.5rem;padding:1.5rem 0}
.pagination-btn{font-size:.78rem;font-weight:700;color:var(--black);padding:.55rem 1.25rem;border:1px solid var(--border);transition:all .12s}
.pagination-btn:hover{background:var(--black);color:#fff;border-color:var(--black)}
.pagination-info{font-size:.72rem;color:var(--dim)}

/* ── AD INFO LIGHTBOX ─────────────────────────────────────── */
.ad-info-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9999;align-items:center;justify-content:center}
.ad-info-overlay.open{display:flex}
.ad-info-modal{background:#fff;width:100%;max-width:360px;padding:2rem;position:relative;margin:1rem}
.ad-info-close{position:absolute;top:.75rem;right:.85rem;background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--dim)}
.ad-info-close:hover{color:var(--black)}
.ad-info-modal h3{font-size:.92rem;font-weight:800;color:var(--black);margin-bottom:.5rem}
.ad-info-desc{font-size:.75rem;color:var(--dim);line-height:1.6;margin-bottom:1.25rem}
.ad-info-details{border:1px solid var(--border);margin-bottom:1rem}
.ad-info-row{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem;font-size:.75rem}
.ad-info-row+.ad-info-row{border-top:1px solid var(--border)}
.ad-info-label{font-weight:700;color:var(--black)}
.ad-info-row a{color:var(--dim);font-weight:500}
.ad-info-row a:hover{color:var(--black)}
.ad-info-policy{font-size:.65rem;color:var(--dim);line-height:1.6;margin-bottom:1rem}
.ad-info-policy a{color:var(--black);font-weight:600}
.ad-info-dismiss{width:100%;padding:.6rem;background:var(--surface);border:none;font-size:.75rem;font-weight:700;font-family:var(--f);cursor:pointer;transition:background .12s}
.ad-info-dismiss:hover{background:#e5e5e5}

/* ── SUBMIT STORY STRIP ───────────────────────────────────── */
.submit-strip{position:relative;margin-top:3rem;background:var(--red);overflow:hidden}
.submit-strip-bg{position:absolute;top:-30px;right:-30px;width:200px;height:200px;background:rgba(255,255,255,.06);transform:rotate(15deg)}
.submit-strip-bg::after{content:'';position:absolute;top:60px;right:60px;width:120px;height:120px;background:rgba(255,255,255,.04);transform:rotate(-10deg)}
.submit-strip-inner{position:relative;z-index:1;padding:2.5rem var(--pad);max-width:var(--max);margin:0 auto}
.submit-strip-content{max-width:500px}
.submit-strip-content h2{font-size:1.75rem;font-weight:900;color:#fff;letter-spacing:-.03em;margin-bottom:.5rem}
.submit-strip-content p{font-size:.85rem;color:rgba(255,255,255,.7);line-height:1.6;margin-bottom:1.25rem}
.submit-strip-btn{display:inline-block;background:#fff;color:var(--red);padding:.7rem 1.75rem;font-size:.82rem;font-weight:700;font-family:var(--f);transition:opacity .15s}
.submit-strip-btn:hover{opacity:.9}
@media(max-width:600px){.submit-strip-content h2{font-size:1.3rem}.submit-strip-inner{padding:2rem var(--pad)}}

/* ── SUBMIT A STORY PAGE ──────────────────────────────────── */
.submit-hero{position:relative;background:var(--red);overflow:hidden;margin-bottom:2.5rem}
.submit-hero-bg{position:absolute;top:-30px;right:-30px;width:200px;height:200px;background:rgba(255,255,255,.06);transform:rotate(15deg)}
.submit-hero-bg::after{content:'';position:absolute;top:60px;right:60px;width:120px;height:120px;background:rgba(255,255,255,.04);transform:rotate(-10deg)}
.submit-hero-inner{position:relative;z-index:1;max-width:var(--max);margin:0 auto;padding:3rem var(--pad)}
.submit-hero-inner h1{font-size:2.2rem;font-weight:900;color:#fff;letter-spacing:-.04em;margin-bottom:.5rem}
.submit-hero-inner p{font-size:.9rem;color:rgba(255,255,255,.8);line-height:1.7;max-width:550px}
.submit-hero-btn{display:inline-block;background:#fff;color:var(--red);padding:.7rem 1.75rem;font-size:.82rem;font-weight:700;font-family:var(--f);margin-top:1.25rem;transition:opacity .15s;border:none;cursor:pointer}
.submit-hero-btn:hover{opacity:.9}
.submit-page{flex:1;padding-bottom:4rem}
.submit-layout{display:grid;grid-template-columns:1fr 260px;gap:3rem;align-items:start}
.submit-error{background:var(--black);color:#fff;padding:.7rem 1rem;font-size:.78rem;font-weight:600;margin-bottom:2rem}
.submit-form{display:flex;flex-direction:column;gap:0}
.submit-section{margin-bottom:2.5rem}
.submit-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--dim);margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}
.submit-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}
.submit-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.25rem}
.submit-form-row .submit-field{margin-bottom:0}
.submit-field label{font-size:.68rem;font-weight:700;color:var(--black);text-transform:uppercase;letter-spacing:.4px}
.submit-optional{font-weight:400;text-transform:none;letter-spacing:0;color:var(--dim);font-size:.6rem}
.submit-field input,.submit-field textarea{padding:.75rem 1rem;border:1px solid var(--border);font-size:.85rem;font-family:var(--f);color:var(--black);background:var(--white);transition:border-color .15s;width:100%}
.submit-field input:focus,.submit-field textarea:focus{border-color:var(--black);outline:none}
.submit-field input::placeholder,.submit-field textarea::placeholder{color:#bbb}
.submit-field textarea{min-height:220px;resize:vertical;line-height:1.8}
.submit-footer-note{border-top:1px solid var(--border);padding-top:1.5rem}
.submit-footer-note p{font-size:.72rem;color:var(--dim);line-height:1.6;margin-bottom:1.25rem}
@media(max-width:600px){.submit-form-row{grid-template-columns:1fr}.submit-hero-inner h1{font-size:1.5rem}.submit-hero-inner{padding:2rem var(--pad)}.submit-layout{grid-template-columns:1fr}.submit-sidebar{order:-1}}

/* ── SUBMIT SIDEBAR ───────────────────────────────────────── */
.submit-sidebar{position:sticky;top:5rem}
.submit-sidebar-card{background:var(--surface);padding:1.25rem;margin-bottom:1rem}
.submit-sidebar-card h4{font-size:.78rem;font-weight:800;color:var(--black);margin-bottom:.6rem}
.submit-sidebar-card p{font-size:.72rem;color:var(--dim);line-height:1.6;margin-bottom:.4rem}
.submit-sidebar-card ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:.4rem}
.submit-sidebar-card li{font-size:.72rem;color:var(--text);padding-left:.85rem;position:relative;line-height:1.5}
.submit-sidebar-card li::before{content:'';position:absolute;left:0;top:.45rem;width:5px;height:5px;background:var(--red)}

/* ── SUBMIT CHECKBOXES ────────────────────────────────────── */
.submit-check{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer;font-size:.75rem;color:var(--text);line-height:1.5}
.submit-check input[type="checkbox"]{width:18px;height:18px;border:2px solid var(--border);background:var(--white);cursor:pointer;flex-shrink:0;margin-top:.1rem;position:relative;-webkit-appearance:none;appearance:none;transition:all .12s}
.submit-check input[type="checkbox"]:checked{background:var(--black);border-color:var(--black)}
.submit-check input[type="checkbox"]:checked::after{content:'';position:absolute;top:2px;left:5px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* ── MEGA MENU DROPDOWN ───────────────────────────────────── */
.topbar-item-wrap{position:relative;display:flex;align-items:center}
.topbar-item-wrap.has-subs .topbar-item::after{content:'';position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:0;height:0;border:0;transition:none}
.topbar-item-wrap.has-subs .topbar-item span::after{content:' ';display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:.4rem;margin-bottom:2px;opacity:.5}
.mega-dropdown{position:absolute;top:100%;left:0;min-width:240px;background:var(--black);opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .2s;z-index:500;overflow:hidden;pointer-events:none}
.mega-dropdown::before{content:'';position:absolute;top:0;right:0;width:120px;height:100%;background:linear-gradient(135deg,transparent 30%,rgba(204,0,0,.1))}
.topbar-item-wrap.mega-open .mega-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.mega-dropdown-inner{padding:1.25rem 0;display:flex;flex-direction:column}
.mega-dropdown-item{display:block;padding:.55rem 1.5rem;font-size:.8rem;font-weight:600;color:rgba(255,255,255,.7);transition:all .12s;border-left:2px solid transparent}
.mega-dropdown-item:hover{color:#fff;border-left-color:var(--red);background:rgba(255,255,255,.05);padding-left:1.75rem}

/* ── MOBILE MENU SUBCATEGORIES ────────────────────────────── */
.mobile-menu-group{}
.mobile-menu-subs{padding-left:1.75rem;display:flex;flex-direction:column;gap:0}
.mobile-menu-sub{padding:.5rem 0;font-size:.82rem;color:var(--dim);transition:color .12s}
.mobile-menu-sub:hover{color:var(--black)}

/* ── BROKEN IMAGE FALLBACK ────────────────────────────────── */
img.img-broken{display:none}
.img-fallback{width:100%;height:100%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--dim);font-size:1.2rem;font-weight:900;letter-spacing:-.02em}

/* ── LIVE NEW UPDATE BANNER ───────────────────────────────── */
.live-new-banner{position:fixed;bottom:0;left:0;right:0;z-index:9998;display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--red);color:#fff;padding:.85rem 1rem;font-size:.82rem;font-weight:700;cursor:pointer;animation:slideUp .3s ease}
.live-new-banner:hover{opacity:.9}
.live-new-dot{width:8px;height:8px;background:#fff;border-radius:50%;animation:blink 1.2s ease-in-out infinite;flex-shrink:0}
@keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}

/* ── LIVE TAG ─────────────────────────────────────────────── */
.tag-live{display:inline-flex;align-items:center;gap:.25rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--red);background:none;padding:0;margin-left:.5rem;vertical-align:middle}
.tag-live::before{content:'';width:6px;height:6px;background:var(--red);border-radius:50%;animation:blink 1.2s ease-in-out infinite}

/* ── ARTICLE LAST UPDATED ─────────────────────────────────── */
.article-last-updated{font-size:.82rem;font-weight:600;color:var(--dim);padding:.75rem 0;margin-bottom:.5rem;border-bottom:1px solid var(--border)}

/* ── CARD CATEGORY TAG ────────────────────────────────────── */
.card-cat{display:block;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--section-color,var(--red));margin-bottom:.3rem}

