/*
Theme Name: News Piauí Premium
Theme URI: https://newspiaui.com
Author: CBC TECH
Author URI: https://newspiaui.com
Description: newspiaui by CBC TECH
Version: 4.2.9
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: newspiaui-premium
*/
:root{
  --np-primary:#424290;
  --np-primary-dark:#32326e;
  --np-primary-soft:#eff1fa;
  --np-text:#181a20;
  --np-muted:#6d7486;
  --np-line:#e6e9f2;
  --np-line-strong:#d9deee;
  --np-bg:#ffffff;
  --np-soft:#f7f8fc;
  --np-soft-2:#f1f3fa;
  --np-max:1280px;
  --np-reading:760px;
  --np-shadow:0 14px 38px rgba(18,24,51,.06);
  --np-radius:18px;
}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--np-soft);color:var(--np-text);line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
.screen-reader-text{position:absolute;left:-9999px}
.container{width:min(var(--np-max),calc(100% - 40px));margin:0 auto}
.topbar{background:var(--np-primary);color:#fff}
.topbar-inner{display:flex;justify-content:flex-start;align-items:center;min-height:36px;gap:16px;font-size:12px}
.topbar-left{font-weight:600;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.site-header{border-bottom:1px solid var(--np-line);background:rgba(255,255,255,.95);backdrop-filter:saturate(180%) blur(10px);position:sticky;top:0;z-index:40}
.branding-row{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:18px;padding:16px 0 14px}
.site-logo img,.custom-logo{width:210px;max-width:100%;height:auto}
.header-media-wrap{display:flex;justify-content:flex-end;align-items:center}
.header-media-slot{width:728px;max-width:100%}
.header-media-slot,.below-media-slot,.sidebar-media-slot{display:block;width:100%;max-width:100%}
.header-media-slot img,.below-media-slot img,.sidebar-media-slot img{width:100%;height:auto;display:block;border-radius:12px}
.nav-shell{border-top:1px solid var(--np-line);background:#fff;position:relative;z-index:61}
.nav-shell-inner{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:16px;padding:14px 0}
.desktop-menu{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.desktop-menu a{font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--np-primary);padding:12px 14px;border-radius:999px;transition:background .2s ease,color .2s ease}
.desktop-menu a:hover,.desktop-menu a:focus-visible{background:var(--np-primary);color:#fff}
.header-search{display:flex;align-items:center;gap:0;justify-self:stretch}
.header-search input,.mobile-search input{border:1px solid var(--np-line-strong);padding:11px 12px;font-size:14px;background:#fff}
.header-search input{width:100%;border-right:0;padding:12px 14px;border-radius:999px 0 0 999px}
.header-search button,.mobile-search button{border:0;background:var(--np-primary);color:#fff;font-weight:800;padding:12px 18px;cursor:pointer;border-radius:0 999px 999px 0}
.header-search button:hover,.mobile-search button:hover{background:var(--np-primary-dark)}
.menu-toggle{display:none;align-items:center;gap:10px;border:1px solid var(--np-line-strong);background:#fff;color:var(--np-primary);font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:10px 14px;border-radius:999px;cursor:pointer}
.menu-toggle span{display:block;width:18px;height:2px;background:currentColor;border-radius:99px}
.menu-toggle em{font-style:normal}
.mobile-panel{display:none;position:absolute;left:0;right:0;top:100%;border-top:1px solid var(--np-line);background:#fff;box-shadow:0 16px 30px rgba(18,24,51,.12);z-index:60}
.mobile-panel.is-open{display:block}
.mobile-panel-inner{padding:14px 0 18px}
.mobile-menu{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:14px}
.mobile-menu a{display:block;border:1px solid var(--np-line);padding:14px 14px;border-radius:14px;background:#fff;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--np-primary)}
.mobile-search{display:flex}
.mobile-search input{flex:1;border-right:0}
.mobile-backdrop{display:none;position:fixed;inset:0;background:rgba(16,19,30,.45);z-index:50}
.mobile-backdrop.is-open{display:block}
body.np-menu-open{overflow:hidden}
.site-main{padding:24px 0 48px}
.layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 312px;gap:28px;align-items:start}
.content-rail{min-width:0}
.hero-section{margin-bottom:28px}
.hero-top{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.95fr);gap:16px;margin-bottom:16px}
.hero-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.hero-card{position:relative;overflow:hidden;background:#111;border-radius:var(--np-radius);box-shadow:var(--np-shadow)}
.hero-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 10%, rgba(0,0,0,.78) 100%)}
.hero-copy{position:absolute;left:0;right:0;bottom:0;padding:22px;color:#fff}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;opacity:.95}
.hero-kicker:before{content:"";display:block;width:22px;height:2px;background:#fff;border-radius:99px}
.hero-card h2{margin:0;font-family:Merriweather,Georgia,serif;font-weight:700;line-height:1.16;text-shadow:0 2px 8px rgba(0,0,0,.22)}
.hero-card.featured{min-height:480px}
.hero-card.featured h2{font-size:42px;max-width:12ch}
.hero-stack{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.hero-card.secondary{min-height:232px}
.hero-card.secondary h2{font-size:22px;max-width:16ch}
.hero-card.tertiary{min-height:164px}
.hero-card.tertiary h2{font-size:18px;line-height:1.22;max-width:18ch}
.below-media-wrap{margin:10px 0 30px;text-align:center}
.below-media-slot{display:block;width:728px;max-width:100%;margin:0 auto}
.below-media-slot img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;border-radius:12px}
.news-section{margin-bottom:38px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--np-line);position:relative}
.section-heading:after{content:"";position:absolute;left:0;bottom:-1px;width:72px;height:2px;background:var(--np-primary)}
.section-kicker{margin:0;font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--np-primary)}
.section-kicker a{color:inherit}
.news-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.9fr);gap:20px;align-items:start}
.main-story{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:20px;align-items:start;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.main-story-thumb img{width:100%;aspect-ratio:16/11;object-fit:cover;border-radius:12px}
.main-story-copy h3{margin:0 0 10px;font-family:Merriweather,Georgia,serif;font-size:30px;line-height:1.14;color:#171922}
.main-story-copy p{margin:0 0 14px;font-size:15px;color:var(--np-muted);max-width:46ch}
.story-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--np-primary)}
.story-link:after{content:"→";font-size:14px}
.news-side-list,.sidebar-story-list{display:grid;grid-template-columns:1fr;gap:14px}
.small-post{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:start;padding:0 0 14px;border-bottom:1px solid var(--np-line)}
.small-post:last-child{border-bottom:0;padding-bottom:0}
.small-post-thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.small-post-copy h4{margin:0;font-size:14px;line-height:1.35;font-weight:700;color:#20242d}
.sidebar-rail{display:flex;flex-direction:column;gap:18px;position:sticky;top:126px}
.sidebar-panel{border:1px solid var(--np-line);background:#fff;padding:16px;border-radius:14px;box-shadow:none}
.sidebar-kicker{margin:0 0 14px;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--np-primary)}
.sidebar-media-slot{display:block}
.sidebar-media-slot img{width:100%;height:auto;display:block;border-radius:12px}
.video-frame{aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}
.video-frame iframe{width:100%;height:100%}
.mobile-rail{display:none}
.sidebar-panel .small-post{grid-template-columns:82px minmax(0,1fr)}
.sidebar-panel .small-post-copy h4{font-size:13px;line-height:1.32}
.site-footer{margin-top:12px;background:var(--np-primary);color:#fff;padding:28px 0}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.footer-brand{font-size:18px;font-weight:800}
.footer-copy{font-size:13px;opacity:.92;font-weight:600}
.archive-shell,.single-layout{width:min(var(--np-max),calc(100% - 40px));margin:0 auto}
.archive-head{margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--np-line)}
.archive-title{margin:0;font-family:Merriweather,Georgia,serif;font-size:36px;color:#161922}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.archive-card{background:#fff;border:1px solid var(--np-line);border-radius:var(--np-radius);padding:16px;box-shadow:var(--np-shadow)}
.archive-card a img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}
.archive-card h2{font-family:Merriweather,Georgia,serif;font-size:22px;line-height:1.28;margin:12px 0 8px}
.archive-card p{margin:0;color:var(--np-muted)}
.single-main{padding-top:30px}
.single-layout{max-width:1180px}
.single-article{max-width:100%}











.entry-content{font-size:18px;line-height:1.95;color:#1c212b}
.entry-content p{margin:0 0 1.35em}
.entry-content h2,.entry-content h3{font-family:Merriweather,Georgia,serif;line-height:1.25;color:#151923;margin:1.8em 0 .7em}
.entry-content h2{font-size:34px}
.entry-content h3{font-size:28px}
.entry-content a{color:var(--np-primary);text-decoration:underline}
.entry-content ul,.entry-content ol{margin:0 0 1.5em 1.2em;padding:0}
.entry-content blockquote{margin:1.8em 0;padding:18px 22px;border-left:4px solid var(--np-primary);background:var(--np-primary-soft);border-radius:12px;font-size:1.02em;color:#20242d}
.entry-content img{margin:1.2rem 0;height:auto;border-radius:16px}
.single-inline-media{margin:0 auto 28px}
.single-tags{margin-top:28px;padding-top:22px;border-top:1px solid var(--np-line)}
.single-tags-label{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--np-primary);margin-bottom:12px}
.single-tags-list{display:flex;flex-wrap:wrap;gap:10px}
.single-tags-list a{display:inline-flex;align-items:center;padding:9px 14px;border-radius:999px;background:var(--np-soft-2);font-size:13px;font-weight:700;color:#293040}




.share-btn:hover{background:var(--np-primary);border-color:var(--np-primary);color:#fff}

.related-posts{margin-top:46px;padding-top:28px;border-top:1px solid var(--np-line)}

.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.related-card{background:#fff;border:1px solid var(--np-line);border-radius:16px;overflow:hidden;box-shadow:var(--np-shadow)}
.related-thumb img,.related-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.related-body{padding:16px}
.related-card h3{margin:0 0 10px;font-family:Merriweather,Georgia,serif;font-size:22px;line-height:1.24}
.related-card p{margin:0 0 14px;font-size:14px;line-height:1.55;color:var(--np-muted)}
.related-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--np-primary)}
.related-link:after{content:"→";font-size:14px}
.comment-list{list-style:none;padding:0;margin:0 0 28px}
.comment-list li{padding:18px 0;border-bottom:1px solid var(--np-line)}
.comment-author{font-weight:800;margin-bottom:6px}
.comment-meta{font-size:13px;color:var(--np-muted);margin-bottom:8px}
.comment-form p{margin-bottom:14px}
.comment-form input,.comment-form textarea{width:100%;padding:12px 14px;border:1px solid var(--np-line-strong);border-radius:12px;font:inherit}
.comment-form .submit{width:auto;border:0;border-radius:999px;background:var(--np-primary);color:#fff;font-weight:800;padding:12px 18px;cursor:pointer}

@media (max-width:1100px){
  .branding-row{grid-template-columns:200px minmax(0,1fr)}
  .nav-shell-inner{grid-template-columns:minmax(0,1fr)}
  .header-search{order:2}
  .layout-grid,.single-content-wrap{grid-template-columns:minmax(0,1fr)}
  .sidebar-rail{position:static}
  .hero-top{grid-template-columns:1fr}
  .hero-stack{grid-template-columns:1fr 1fr;grid-template-rows:none}
  .news-grid{grid-template-columns:1fr}
  .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .related-grid{grid-template-columns:1fr 1fr}
  .single-header{max-width:none}
  .single-title{font-size:44px;max-width:12ch}
  .single-content{padding:24px}
}

@media (max-width:760px){
  .container,.archive-shell,.single-layout{width:min(100%,calc(100% - 24px))}
  .branding-row{grid-template-columns:1fr auto;gap:12px;padding:12px 0}
  .header-media-wrap,.desktop-menu,.header-search{display:none}
  .nav-shell-inner{grid-template-columns:auto;justify-content:flex-end;padding:10px 0}
  .menu-toggle{display:inline-flex;justify-self:end}
  .mobile-menu{grid-template-columns:1fr}
  .site-main{padding:16px 0 34px}
  .hero-top,.hero-bottom{grid-template-columns:1fr;gap:12px;margin-bottom:12px}
  .hero-stack{grid-template-columns:1fr;gap:12px}
  .hero-card.featured{min-height:380px}
  .hero-card.secondary{min-height:168px}
  .hero-card.tertiary{min-height:148px}
  .hero-copy{padding:16px}
  .hero-card.featured h2{font-size:30px;max-width:none}
  .hero-card.secondary h2{font-size:22px;max-width:none}
  .hero-card.tertiary h2{font-size:19px;max-width:none}
  .below-media-wrap{margin:12px 0 22px}
  .news-section{margin-bottom:28px}
  .section-heading{margin-bottom:12px;padding-bottom:10px}
  .section-kicker{font-size:12px;letter-spacing:.16em}
  .main-story{grid-template-columns:1fr;gap:12px;padding:0}
  .main-story-copy h3{font-size:26px}
  .main-story-copy p{font-size:14px;max-width:none}
  .small-post{grid-template-columns:86px minmax(0,1fr)}
  .sidebar-rail{display:none}
  .mobile-rail{display:flex;flex-direction:column;gap:16px;margin-top:14px}
  .sidebar-panel{padding:14px}
  .footer-grid{grid-template-columns:1fr;text-align:center}
  .archive-head{margin-bottom:16px}
  .archive-title{font-size:28px}
  .archive-grid,.related-grid{grid-template-columns:1fr;gap:18px}
  .single-main{padding-top:18px}
  .single-header{margin-bottom:18px}
  .single-title{font-size:34px;max-width:none}
  .single-standfirst{font-size:16px;line-height:1.62}
  .single-hero{padding:10px;border-radius:18px}
  .single-content-wrap{grid-template-columns:1fr;gap:20px;max-width:none}
  .single-content{padding:18px;border-radius:18px}
  .entry-content{font-size:17px;line-height:1.85}
  .entry-content h2{font-size:28px}
  .entry-content h3{font-size:24px}
  .single-aside{display:none}
  .single-comments{margin-top:30px}
}

.ad-slot{width:100%}
.ad-slot > *{max-width:100%}

@media (max-width:760px){
  .topbar-inner{min-height:32px;font-size:11px}
  .menu-toggle{padding:10px 12px}
  .menu-toggle em{display:none}
  .mobile-panel{left:12px;right:12px;top:calc(100% + 8px);border:1px solid var(--np-line);border-radius:16px}
  .mobile-panel-inner{padding:12px}
  .mobile-search input{min-width:0}
  .single-meta-row{gap:8px}
  .single-meta-row .meta-pill{padding:6px 10px;font-size:11px}
  .single-hero{padding:8px;border-radius:14px}
  .single-content{padding:0}
}

@media (max-width:760px){.share-buttons{gap:8px}.share-btn{padding:9px 12px;font-size:12px}.footer-copy{margin-top:6px}}


.single-main{padding-top:34px}
.single-layout{max-width:1220px}
.single-header{max-width:1080px;margin:0 auto 16px}
.single-kicker{display:inline-flex;align-items:center;margin:0 0 10px;color:var(--np-primary);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.single-title{margin:0 0 18px;font-family:Merriweather,Georgia,serif;font-size:clamp(40px,4.3vw,58px);line-height:1.02;color:#151923;max-width:760px;letter-spacing:-.03em;text-wrap:balance}
.single-standfirst{margin:0 0 18px;color:#4f5668;font-size:18px;line-height:1.7;max-width:760px}
.single-hero{margin:0;max-width:1080px;background:transparent;border:0;border-radius:0;padding:0}
.single-hero img{width:100%;display:block;border-radius:16px}
.single-hero figcaption{margin-top:8px;font-size:11px;color:var(--np-muted)}
.single-content-wrap{display:grid;grid-template-columns:minmax(0,760px) 320px;gap:44px;align-items:start;max-width:1080px;margin:0 auto}
.single-content-column{min-width:0}
.single-below-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:14px 0 18px;padding-bottom:0;border-bottom:0}
.single-meta-row{display:flex;flex-wrap:wrap;gap:8px}
.single-meta-row .meta-pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--np-line);font-size:12px;font-weight:600;color:#556074}
.single-share-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0}
.single-share-label{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--np-primary)}
.share-buttons{display:flex;flex-wrap:wrap;gap:8px}
.share-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--np-line);border-radius:999px;background:#fff;color:var(--np-primary);font-size:12px;font-weight:700;letter-spacing:0}
.single-content{background:transparent;border:0;padding:0}
.entry-content{font-size:18px;line-height:1.9;color:#242835}
.entry-content p{margin:0 0 18px}
.entry-content > *:first-child{margin-top:0}
.single-aside{padding-top:0}
.sidebar-rail-single{display:block}
.single-latest-panel{position:sticky;top:118px}
.single-latest-title{margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid var(--np-line);color:var(--np-primary);font-size:20px;font-weight:800;letter-spacing:.02em}
.single-latest-list{display:grid;gap:14px}
.single-latest-list .small-post{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:0}
.single-latest-list .small-post-thumb img{width:100%;height:72px;object-fit:cover;border-radius:10px}
.single-latest-list .small-post-copy h4{margin:0;font-size:14px;line-height:1.35;font-weight:800}
.related-posts{margin-top:54px;padding-top:26px;border-top:1px solid var(--np-line)}
.related-head{margin-bottom:18px}
.related-head .section-kicker{margin:0;color:var(--np-primary);font-size:26px;font-weight:800;letter-spacing:0;text-transform:none}
@media (max-width:1180px){
  .single-header,.single-content-wrap{max-width:1000px}
  .single-content-wrap{grid-template-columns:minmax(0,1fr) 290px;gap:34px}
  .single-title{max-width:700px;font-size:clamp(38px,4vw,52px)}
}
@media (max-width:960px){
  .single-header,.single-content-wrap{max-width:none}
  .single-title{max-width:none;font-size:42px}
  .single-content-wrap{grid-template-columns:1fr;gap:26px}
  .single-below-hero{flex-direction:column;align-items:flex-start}
  .single-aside{order:2}
  .single-latest-panel{position:static}
}
@media (max-width:640px){
  .single-title{font-size:34px;line-height:1.05}
  .entry-content{font-size:17px;line-height:1.8}
  .single-below-hero{margin:12px 0 16px}
}


/* v3.1.6 single refinement */
.single-layout{max-width:1280px}
.single-header{max-width:1160px;margin:0 auto 10px}
.single-kicker{margin-bottom:8px}
.single-title{max-width:none;width:100%;font-size:clamp(34px,3.65vw,56px);line-height:1.03;letter-spacing:-.032em;margin:0 0 14px}
.single-standfirst{max-width:900px;font-size:17px;line-height:1.62;margin:0 0 18px}
.single-hero{max-width:1160px}
.single-hero img{border-radius:14px}
.single-content-wrap{max-width:1160px;grid-template-columns:minmax(0,820px) 300px;gap:40px;align-items:start}
.single-below-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:12px 0 18px}
.single-meta-row,.single-share-row{justify-content:flex-start}
.single-meta-row .meta-pill,.share-btn{background:#fff}
.single-content{max-width:none}
.single-content.entry-content p{max-width:820px}
.single-aside{padding-top:0;align-self:start}
.single-latest-panel{position:sticky;top:110px;margin-top:0}
.single-latest-title{color:var(--np-primary);font-size:24px;line-height:1.1;font-weight:800;letter-spacing:-.02em;border-bottom:2px solid rgba(75,70,167,.18);padding-bottom:12px;margin-bottom:16px;text-transform:none}
.single-latest-list{gap:12px}
.single-latest-list .small-post{grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start}
.single-latest-list .small-post-thumb img{height:68px;border-radius:8px}
.single-latest-list .small-post-copy h4{font-size:14px;line-height:1.28;font-weight:800}
.related-posts{margin-top:56px;padding-top:22px;border-top:1px solid var(--np-line)}
.related-head{margin-bottom:18px}
.related-head .section-kicker{color:var(--np-primary);font-size:26px;letter-spacing:-.02em;text-transform:none;font-weight:800}
@media (max-width: 1160px){
  .single-header,.single-hero,.single-content-wrap{max-width:100%}
  .single-content-wrap{grid-template-columns:minmax(0,1fr) 280px;gap:28px}
  .single-title{font-size:clamp(34px,4vw,48px)}
}
@media (max-width: 980px){
  .single-title{font-size:clamp(32px,5vw,42px)}
  .single-content-wrap{grid-template-columns:1fr;gap:26px}
  .single-latest-panel{position:static}
  .single-aside{width:100%}
}
@media (max-width: 640px){
  .single-title{font-size:34px;line-height:1.05}
  .single-meta-row{gap:6px}
  .single-below-hero{gap:10px}
  .single-latest-title,.related-head .section-kicker{font-size:22px}
}


.single-layout{max-width:1260px}
.single-header{max-width:1080px;margin:0 auto 12px}
.single-title{max-width:980px;font-size:clamp(34px,3.6vw,54px);line-height:1.04;margin:0 0 12px}
.single-hero{max-width:980px}
.single-hero img{width:100%;max-height:560px;object-fit:cover;object-position:center center;border-radius:12px}
.single-content-wrap{max-width:1080px;grid-template-columns:minmax(0,1fr) 320px;gap:36px}
.single-below-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin:14px 0 18px;padding:0;border:0}
.single-meta-row,.single-share-row,.share-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.single-meta-row{flex:1 1 520px}
.single-share-row{flex:0 1 auto;justify-content:flex-end}
.single-meta-row .meta-pill,.share-btn{height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(66,66,144,.22);background:rgba(66,66,144,.06);color:var(--np-primary);font-size:12px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:none}
.single-share-label{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--np-primary);margin-right:2px}
.share-btn:hover,.share-btn:focus-visible,.single-meta-row .meta-pill:hover{background:var(--np-primary);border-color:var(--np-primary);color:#fff}
.single-latest-title,.related-head .section-kicker{color:var(--np-primary)}
@media (max-width: 1100px){
  .single-header,.single-content-wrap{max-width:100%}
  .single-hero{max-width:100%}
  .single-content-wrap{grid-template-columns:minmax(0,1fr) 290px;gap:28px}
  .single-title{font-size:clamp(30px,4vw,44px)}
}
@media (max-width: 900px){
  .single-below-hero{align-items:flex-start}
  .single-share-row{justify-content:flex-start}
  .single-meta-row{flex:1 1 100%}
}
@media (max-width: 767px){
  .single-title{font-size:34px;line-height:1.06}
  .single-hero img{max-height:none}
  .single-below-hero{gap:12px}
  .single-meta-row,.single-share-row,.share-buttons{gap:8px}
  .single-meta-row .meta-pill,.share-btn{height:34px;padding:0 12px;font-size:11px}
}

.single-layout{max-width:1280px}
.single-header{max-width:1180px;margin:0 auto 12px}
.single-title{max-width:860px;font-size:clamp(34px,3.35vw,52px);line-height:1.04;margin:0 0 14px}
.single-standfirst{max-width:860px}
.single-hero{max-width:860px}
.single-hero img{max-height:500px;object-fit:cover;border-radius:12px}
.single-content-wrap{max-width:1180px;grid-template-columns:minmax(0,860px) 280px;gap:40px;align-items:start}
.single-below-hero{display:block;margin:14px 0 22px}
.single-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px}
.single-meta-row .meta-pill{height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(66,66,144,.22);background:rgba(66,66,144,.06);color:var(--np-primary);font-size:12px;font-weight:700}
.single-share-label{display:inline-flex;align-items:center;height:34px;margin-left:8px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--np-primary)}
.share-buttons{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}
.share-btn{width:34px;height:34px;padding:0;border-radius:999px;border:1px solid rgba(66,66,144,.22);background:rgba(66,66,144,.06);color:var(--np-primary);display:inline-flex;align-items:center;justify-content:center}
.share-btn svg{width:16px;height:16px;display:block;fill:currentColor}
.share-btn:hover,.share-btn:focus-visible{background:var(--np-primary);border-color:var(--np-primary);color:#fff}
.single-share-row{display:none}
.single-aside{padding-top:4px}
.single-latest-panel{margin-top:0;position:sticky;top:112px}
.single-latest-title{font-size:23px;line-height:1.1;margin-bottom:16px;color:var(--np-primary);padding-bottom:10px;border-bottom:2px solid rgba(66,66,144,.18)}
@media (max-width:1100px){.single-header,.single-content-wrap{max-width:100%}.single-title,.single-hero,.single-standfirst{max-width:none}.single-content-wrap{grid-template-columns:minmax(0,1fr) 270px;gap:28px}}
@media (max-width:900px){.single-content-wrap{grid-template-columns:1fr;gap:24px}.single-aside{width:100%}.single-latest-panel{position:static}.single-meta-row{gap:8px}.single-share-label{margin-left:0}.single-title{font-size:clamp(32px,5vw,42px)}.single-hero img{max-height:none}}


/* v3.2.1 single refinement */
.single-layout{max-width:var(--np-max)}
.single-article{width:100%}
.single-grid{display:grid;grid-template-columns:minmax(0,920px) 260px;gap:40px;align-items:start;width:100%}
.single-primary{min-width:0}
.single-header{max-width:none;margin:0 0 16px}
.single-kicker{display:inline-block;margin:0 0 10px;color:var(--np-primary);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.single-title{max-width:none;width:100%;margin:0 0 12px;font-family:Merriweather,Georgia,serif;font-size:clamp(32px,3.15vw,48px);line-height:1.02;letter-spacing:-.03em;text-wrap:pretty}
.single-standfirst{max-width:none;margin:0 0 18px;color:#4f5668;font-size:19px;line-height:1.58}
.single-hero{max-width:none;margin:0}
.single-hero img{display:block;width:100%;max-height:480px;object-fit:cover;object-position:center center;border-radius:12px}
.single-hero figcaption{margin-top:8px;font-size:11px;color:var(--np-muted)}
.single-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 20px;padding:0;border:0}
.single-meta-row .meta-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:var(--np-primary-soft);border:1px solid rgba(66,66,144,.12);font-size:12px;font-weight:700;color:var(--np-primary)}
.single-share-label{margin-left:6px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--np-primary)}
.share-buttons{display:inline-flex;flex-wrap:wrap;gap:8px}
.share-btn{width:32px;height:32px;padding:0;border-radius:999px;border:1px solid rgba(66,66,144,.18);background:var(--np-primary-soft);color:var(--np-primary)}
.share-btn svg{width:14px;height:14px}
.share-btn:hover{background:var(--np-primary);border-color:var(--np-primary);color:#fff}
.single-content{background:transparent;border:0;padding:0;max-width:none}
.single-content.entry-content p,.single-content.entry-content ul,.single-content.entry-content ol,.single-content.entry-content blockquote{max-width:760px}
.single-content.entry-content p{font-size:18px;line-height:1.82;color:#2a3040}
.single-content.entry-content h2,.single-content.entry-content h3{max-width:760px}
.single-aside{padding-top:42px;min-width:0}
.single-latest-panel{position:sticky;top:110px;margin:0}
.single-latest-title{margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid rgba(66,66,144,.18);color:var(--np-primary);font-size:24px;font-weight:800;letter-spacing:-.02em;text-transform:none;line-height:1.05}
.single-latest-list{display:grid;gap:14px}
.single-latest-list .small-post{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:start;padding:0}
.single-latest-list .small-post-thumb img{width:100%;height:68px;object-fit:cover;border-radius:8px}
.single-latest-list .small-post-copy h4{margin:0;font-size:14px;line-height:1.28;font-weight:800}
.related-posts{margin-top:52px;padding-top:24px;border-top:1px solid var(--np-line)}
.related-head{margin:0 0 18px}
.related-head .section-kicker{margin:0;color:var(--np-primary);font-size:28px;font-weight:800;letter-spacing:-.02em;text-transform:none}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.related-card{background:#fff;border:1px solid var(--np-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(18,24,51,.05)}
.related-card h3{font-size:20px;line-height:1.2}
.related-card p{font-size:14px;line-height:1.55}
@media (max-width:1160px){
  .single-grid{grid-template-columns:minmax(0,1fr) 270px;gap:30px}
  .single-title{font-size:clamp(32px,4.2vw,46px)}
  .single-content.entry-content p,.single-content.entry-content ul,.single-content.entry-content ol,.single-content.entry-content blockquote{max-width:none}
}
@media (max-width:980px){
  .single-grid{grid-template-columns:1fr;gap:26px}
  .single-aside{padding-top:0;width:100%}
  .single-latest-panel{position:static}
  .single-title{font-size:clamp(30px,5vw,40px)}
}
@media (max-width:760px){
  .single-title{font-size:34px;line-height:1.08}
  .single-hero img{max-height:none}
  .single-meta-row{gap:8px}
  .single-share-label{margin-left:0}
  .related-head .section-kicker,.single-latest-title{font-size:24px}
}


/* v3.2.2 single polish */
.single-grid{grid-template-columns:minmax(0,1fr) 232px;gap:36px}
.single-title{
  font-size:clamp(30px,2.8vw,46px);
  line-height:1.05;
  letter-spacing:-.028em;
  max-width:none;
}
.single-hero img{
  max-height:430px;
  aspect-ratio:16 / 9;
}
.single-meta-row{
  gap:8px 10px;
  margin:0 0 18px;
}
.single-meta-row .meta-pill{
  height:30px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(66,66,144,.05);
  border:1px solid rgba(66,66,144,.16);
  color:var(--np-primary);
  font-size:11px;
  font-weight:700;
}
.single-share-label{
  margin-left:2px;
  font-size:10px;
  letter-spacing:.14em;
  color:var(--np-primary);
  opacity:.9;
}
.share-buttons{gap:6px}
.share-btn{
  width:28px;
  height:28px;
  border-color:rgba(66,66,144,.18);
  background:rgba(66,66,144,.05);
}
.share-btn svg{width:13px;height:13px}
.single-content.entry-content p{
  max-width:740px;
  font-size:17px;
  line-height:1.8;
}
.single-content.entry-content h2,
.single-content.entry-content h3,
.single-content.entry-content ul,
.single-content.entry-content ol,
.single-content.entry-content blockquote{
  max-width:740px;
}
.single-aside{padding-top:28px}
.single-latest-title{
  font-size:21px;
  margin:0 0 14px;
  padding-bottom:8px;
}
.single-latest-list{gap:12px}
.single-latest-list .small-post{
  grid-template-columns:84px minmax(0,1fr);
  gap:10px;
}
.single-latest-list .small-post-thumb img{
  height:62px;
  border-radius:7px;
}
.single-latest-list .small-post-copy h4{
  font-size:13px;
  line-height:1.24;
}
.related-posts{margin-top:48px}
.related-head .section-kicker{
  font-size:24px;
  letter-spacing:-.015em;
}
.related-grid{gap:20px}
.related-card h3{
  font-size:18px;
  line-height:1.18;
}
.related-card p{
  font-size:13px;
  line-height:1.5;
}
@media (max-width:1160px){
  .single-grid{grid-template-columns:minmax(0,1fr) 224px;gap:28px}
  .single-title{font-size:clamp(29px,3.3vw,42px)}
  .single-hero img{max-height:400px}
}
@media (max-width:980px){
  .single-grid{grid-template-columns:1fr;gap:24px}
  .single-title{font-size:clamp(28px,5vw,38px)}
  .single-hero img{max-height:none;aspect-ratio:auto}
}
@media (max-width:760px){
  .single-title{font-size:32px;line-height:1.08}
  .single-meta-row{gap:8px}
}


/* v3.2.3 featured image refinement */
.single-hero{
  margin-bottom: 8px;
}
.single-hero img{
  width: 100%;
  max-height: 390px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
}
.single-hero-caption{
  margin-top: 6px;
  font-size: 10px;
  line-height: 1.35;
  opacity: .72;
}
.single-meta-row{
  margin-top: 10px;
}
@media (max-width: 1160px){
  .single-hero img{
    max-height: 360px;
  }
}
@media (max-width: 980px){
  .single-hero img{
    max-height: none;
    aspect-ratio: auto;
  }
}


/* v3.2.4 image + footer refinement */
.single-hero{
  max-width: 720px;
}
.single-hero img{
  max-height: 320px;
  aspect-ratio: 16 / 8.3;
  object-fit: cover;
  object-position: center center;
}
@media (max-width: 1160px){
  .single-hero{
    max-width: 680px;
  }
  .single-hero img{
    max-height: 300px;
  }
}
@media (max-width: 980px){
  .single-hero{
    max-width: none;
  }
  .single-hero img{
    max-height: none;
    aspect-ratio: auto;
  }
}
.site-footer,
.footer-main,
.footer-bottom{
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
.site-footer .container,
.footer-main .container,
.footer-bottom .container{
  min-height: 0 !important;
}
.site-footer p,
.footer-main p,
.footer-bottom p,
.site-footer .footer-brand,
.site-footer .footer-credit{
  margin: 0;
  line-height: 1.3;
}


/* v3.2.5 final polish */
.single-title{
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.04;
  letter-spacing: -.03em;
  max-width: 780px;
}
.single-meta-row{
  gap: 6px 8px;
  margin-top: 8px;
  margin-bottom: 16px;
}
.single-meta-row .meta-pill{
  height: 26px;
  padding: 0 9px;
  font-size: 10px;
  font-weight: 700;
  background: rgba(66,66,144,.045);
  border-color: rgba(66,66,144,.12);
}
.single-share-label{
  font-size: 9px;
  letter-spacing: .12em;
  opacity: .78;
}
.share-buttons{
  gap: 5px;
}
.share-btn{
  width: 24px;
  height: 24px;
  background: rgba(66,66,144,.04);
  border-color: rgba(66,66,144,.14);
}
.share-btn svg{
  width: 12px;
  height: 12px;
}
.single-aside{
  padding-top: 18px;
}
.single-latest-title{
  font-size: 19px;
  line-height: 1.15;
  margin-bottom: 12px;
}
.single-latest-list{
  gap: 10px;
}
.single-latest-list .small-post{
  grid-template-columns: 78px minmax(0,1fr);
  gap: 9px;
}
.single-latest-list .small-post-thumb img{
  height: 56px;
}
.single-latest-list .small-post-copy h4{
  font-size: 12px;
  line-height: 1.22;
}
.related-posts{
  margin-top: 42px;
}
.related-head .section-kicker{
  font-size: 18px;
  line-height: 1.15;
  letter-spacing: -.015em;
}
.related-grid{
  gap: 16px;
}
.related-card .related-thumb img{
  height: 164px;
  object-fit: cover;
}
.related-card .related-copy{
  padding: 12px 14px 14px;
}
.related-card h3{
  font-size: 16px;
  line-height: 1.15;
  margin-bottom: 8px;
}
.related-card p{
  font-size: 12px;
  line-height: 1.45;
  -webkit-line-clamp: 2;
}
.site-footer,
.footer-main,
.footer-bottom{
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.site-footer p,
.footer-main p,
.footer-bottom p,
.site-footer .footer-brand,
.site-footer .footer-credit{
  font-size: 12px;
}
@media (max-width: 1160px){
  .single-title{
    font-size: clamp(27px, 3.2vw, 38px);
    max-width: 720px;
  }
}


/* v3.2.6 featured image 4:3 */
.single-hero{
  max-width: 720px;
}
.single-hero img{
  width: 100%;
  aspect-ratio: 4 / 3;
  max-height: 420px;
  object-fit: cover;
  object-position: center top;
}
@media (max-width: 1160px){
  .single-hero{
    max-width: 680px;
  }
  .single-hero img{
    max-height: 400px;
  }
}
@media (max-width: 980px){
  .single-hero{
    max-width: none;
  }
  .single-hero img{
    aspect-ratio: auto;
    max-height: none;
    object-position: center center;
  }
}


/* v3.3.0 home desktop editorial redesign */
.home-layout{display:block}
.hero-section-editorial{
  margin-bottom:24px;
}
.hero-section-editorial .hero-top{
  grid-template-columns:minmax(0,1.5fr) minmax(300px,.78fr);
  gap:14px;
  margin-bottom:14px;
}
.hero-section-editorial .hero-bottom-four{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.hero-section-editorial .hero-card{
  border-radius:14px;
  box-shadow:none;
}
.hero-section-editorial .hero-overlay{
  background:linear-gradient(180deg,rgba(0,0,0,.02) 18%, rgba(0,0,0,.58) 100%);
}
.hero-section-editorial .hero-copy{
  padding:18px;
}
.hero-section-editorial .hero-kicker{
  display:none;
}
.hero-section-editorial .hero-card.featured{
  min-height:388px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size:28px;
  line-height:1.08;
  max-width:11ch;
}
.hero-section-editorial .hero-card.secondary{
  min-height:186px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size:18px;
  line-height:1.14;
  max-width:15ch;
}
.hero-section-editorial .hero-card.tertiary{
  min-height:124px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size:15px;
  line-height:1.18;
  max-width:none;
}
.editorial-strip{
  margin:0 0 30px;
}
.editorial-strip-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
  align-items:start;
}
.section-heading-mini{
  margin-bottom:12px;
  padding-bottom:10px;
}
.section-heading-mini:after{
  width:60px;
}
.editorial-mini-section{
  min-width:0;
}
.editorial-mini-list{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.editorial-mini-list .small-post{
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--np-line);
}
.editorial-mini-list .small-post:last-child{
  padding-bottom:0;
  border-bottom:0;
}
.editorial-mini-list .small-post-thumb img{
  height:68px;
  border-radius:8px;
}
.editorial-mini-list .small-post-copy h4{
  font-size:15px;
  line-height:1.24;
}
.layout-grid .sidebar-rail{
  display:none;
}
@media (max-width:1160px){
  .hero-section-editorial .hero-top{
    grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);
  }
  .hero-section-editorial .hero-card.featured{
    min-height:360px;
  }
  .hero-section-editorial .hero-card.featured h2{
    font-size:26px;
  }
  .editorial-strip-grid{
    gap:20px;
  }
}
@media (max-width:980px){
  .hero-section-editorial .hero-top{
    grid-template-columns:1fr;
    gap:12px;
  }
  .hero-section-editorial .hero-bottom-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  .editorial-strip-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
}
@media (max-width:640px){
  .hero-section-editorial .hero-card.featured{
    min-height:320px;
  }
  .hero-section-editorial .hero-card.featured h2{
    font-size:24px;
  }
  .hero-section-editorial .hero-card.tertiary{
    min-height:118px;
  }
  .editorial-mini-list .small-post{
    grid-template-columns:84px minmax(0,1fr);
  }
}


/* v3.3.1 home desktop refinement */
.hero-section-editorial{
  margin-bottom: 16px;
}
.hero-section-editorial .hero-top{
  gap: 12px;
  margin-bottom: 12px;
}
.hero-section-editorial .hero-bottom-four{
  gap: 12px;
}
.hero-section-editorial .hero-card{
  border-radius: 10px;
  overflow: hidden;
}
.hero-section-editorial .hero-overlay{
  background: linear-gradient(180deg, rgba(0,0,0,.01) 20%, rgba(0,0,0,.42) 100%);
}
.hero-section-editorial .hero-copy{
  padding: 15px;
}
.hero-section-editorial .hero-card.featured{
  min-height: 328px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size: 24px;
  line-height: 1.06;
  max-width: 10.8ch;
}
.hero-section-editorial .hero-card.secondary{
  min-height: 156px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size: 17px;
  line-height: 1.12;
}
.hero-section-editorial .hero-card.tertiary{
  min-height: 98px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size: 13px;
  line-height: 1.16;
}

.news-section{
  margin-bottom: 34px;
}
.section-heading{
  margin-bottom: 10px;
  padding-bottom: 8px;
}
.news-grid{
  gap: 18px;
  align-items: start;
}
.main-story{
  gap: 16px;
}
.main-story-thumb img{
  height: 172px;
  border-radius: 10px;
}
.main-story-copy h3{
  font-size: 17px;
  line-height: 1.09;
  margin-bottom: 8px;
}
.main-story-copy p{
  font-size: 13px;
  line-height: 1.48;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-side-list{
  gap: 10px;
}
.news-side-list .small-post{
  grid-template-columns: 82px minmax(0,1fr);
  gap: 10px;
  padding-bottom: 10px;
}
.news-side-list .small-post-thumb img{
  height: 58px;
  border-radius: 8px;
}
.news-side-list .small-post-copy h4{
  font-size: 12px;
  line-height: 1.22;
}
.editorial-strip-bottom{
  margin-top: 6px;
  margin-bottom: 36px;
}
.editorial-strip-grid{
  gap: 22px;
}
.editorial-mini-list .small-post{
  grid-template-columns: 84px minmax(0,1fr);
}
.editorial-mini-list .small-post-thumb img{
  height: 60px;
}

@media (max-width: 1160px){
  .hero-section-editorial .hero-card.featured{
    min-height: 300px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height: 146px;
  }
  .hero-section-editorial .hero-card.tertiary{
    min-height: 94px;
  }
  .news-section{
    margin-bottom: 30px;
  }
}
@media (max-width: 980px){
  .editorial-strip-bottom{
    margin-bottom: 28px;
  }
}


/* v3.3.3 home density + typography */
.hero-section-editorial{
  margin-bottom: 20px;
}
.hero-section-editorial .hero-top{
  grid-template-columns:minmax(0,1.34fr) minmax(320px,.86fr);
  gap:14px;
  margin-bottom:14px;
}
.hero-section-editorial .hero-bottom-four{
  gap:14px;
}
.hero-section-editorial .hero-card{
  border-radius:12px;
}
.hero-section-editorial .hero-overlay{
  background:linear-gradient(180deg, rgba(0,0,0,.02) 18%, rgba(0,0,0,.50) 100%);
}
.hero-section-editorial .hero-copy{
  padding:18px;
}
.hero-section-editorial .hero-card.featured{
  min-height:400px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size:30px;
  line-height:1.04;
  max-width:10.5ch;
}
.hero-section-editorial .hero-card.secondary{
  min-height:193px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size:19px;
  line-height:1.12;
  max-width:16ch;
}
.hero-section-editorial .hero-card.tertiary{
  min-height:122px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size:14px;
  line-height:1.17;
}

.news-section{
  margin-bottom:26px;
}
.section-heading{
  margin-bottom:8px;
  padding-bottom:7px;
}
.news-grid{
  gap:16px;
  align-items:start;
}
.main-story{
  gap:16px;
  align-items:start;
}
.main-story-thumb img{
  height:188px;
  border-radius:10px;
}
.main-story-copy h3{
  font-size:18px;
  line-height:1.06;
  margin-bottom:8px;
}
.main-story-copy p{
  font-size:14px;
  line-height:1.5;
  -webkit-line-clamp:3;
}
.story-link{
  font-size:12px;
  letter-spacing:.08em;
}
.news-side-list{
  gap:8px;
}
.news-side-list .small-post{
  grid-template-columns:86px minmax(0,1fr);
  gap:10px;
  padding-bottom:8px;
}
.news-side-list .small-post-thumb img{
  height:60px;
}
.news-side-list .small-post-copy h4{
  font-size:13px;
  line-height:1.22;
}

.editorial-strip-bottom{
  margin-top:2px;
  margin-bottom:26px;
}
.editorial-strip-grid{
  gap:20px;
}
.section-heading-mini{
  margin-bottom:9px;
}
.editorial-mini-list{
  gap:10px;
}
.editorial-mini-list .small-post{
  grid-template-columns:88px minmax(0,1fr);
  gap:11px;
  padding-bottom:10px;
}
.editorial-mini-list .small-post-thumb img{
  height:64px;
}
.editorial-mini-list .small-post-copy h4{
  font-size:14px;
  line-height:1.24;
}

@media (max-width:1160px){
  .hero-section-editorial .hero-top{
    grid-template-columns:minmax(0,1.28fr) minmax(290px,.84fr);
  }
  .hero-section-editorial .hero-card.featured{
    min-height:370px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:178px;
  }
  .main-story-thumb img{
    height:176px;
  }
}
@media (max-width:980px){
  .hero-section-editorial .hero-top{
    grid-template-columns:1fr;
  }
  .hero-section-editorial .hero-card.featured{
    min-height:338px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:180px;
  }
  .hero-section-editorial .hero-bottom-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v3.3.4 home desktop editorial reform */
.hero-section-editorial .hero-top{
  grid-template-columns:minmax(0,1.28fr) minmax(330px,.92fr);
  gap:16px;
  margin-bottom:16px;
}
.hero-section-editorial .hero-bottom-four{
  gap:12px;
}
.hero-section-editorial .hero-card{
  border-radius:12px;
}
.hero-section-editorial .hero-overlay{
  background:linear-gradient(180deg, rgba(0,0,0,.00) 16%, rgba(0,0,0,.34) 100%);
}
.hero-section-editorial .hero-card img{
  object-position:center top;
}
.hero-section-editorial .hero-copy{
  padding:18px;
}
.hero-section-editorial .hero-card.featured{
  min-height:448px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size:31px;
  line-height:1.04;
  max-width:10.6ch;
}
.hero-section-editorial .hero-card.secondary{
  min-height:216px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size:19px;
  line-height:1.14;
  max-width:16ch;
}
.hero-section-editorial .hero-card.tertiary{
  min-height:136px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size:14px;
  line-height:1.18;
}
.hero-section-editorial{
  margin-bottom:18px;
}

.news-section{
  margin-bottom:22px;
}
.section-heading{
  margin-bottom:8px;
  padding-bottom:6px;
}
.news-grid{
  grid-template-columns:minmax(0,1.42fr) minmax(0,.88fr);
  gap:18px;
  align-items:stretch;
}
.news-main{
  min-width:0;
}
.main-story{
  display:grid;
  grid-template-columns: 320px minmax(0,1fr);
  gap:18px;
  align-items:stretch;
  min-height:248px;
}
.main-story-thumb{
  height:100%;
}
.main-story-thumb img{
  width:100%;
  height:100%;
  min-height:248px;
  object-fit:cover;
  object-position:center center;
  border-radius:10px;
}
.main-story-copy{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:248px;
}
.main-story-copy h3{
  font-size:18px;
  line-height:1.08;
  margin-bottom:8px;
}
.main-story-copy p{
  font-size:14px;
  line-height:1.55;
  -webkit-line-clamp:4;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-width:46ch;
}
.story-link{
  margin-top:auto;
  font-size:12px;
  letter-spacing:.08em;
}
.news-side-list{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  align-content:start;
}
.news-side-list .small-post{
  grid-template-columns:88px minmax(0,1fr);
  gap:10px;
  padding-bottom:8px;
}
.news-side-list .small-post-thumb img{
  height:60px;
  border-radius:8px;
}
.news-side-list .small-post-copy h4{
  font-size:13px;
  line-height:1.22;
}
.editorial-strip-bottom{
  margin-top:6px;
  margin-bottom:22px;
}
.editorial-strip-grid{
  gap:18px;
}
.editorial-mini-section .section-kicker{
  font-size:13px;
}
.editorial-mini-list .small-post{
  grid-template-columns:96px minmax(0,1fr);
  gap:11px;
}
.editorial-mini-list .small-post-thumb img{
  height:66px;
}
.editorial-mini-list .small-post-copy h4{
  font-size:14px;
  line-height:1.24;
}
@media (max-width:1160px){
  .hero-section-editorial .hero-top{
    grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr);
  }
  .hero-section-editorial .hero-card.featured{
    min-height:412px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:198px;
  }
  .hero-section-editorial .hero-card.tertiary{
    min-height:124px;
  }
  .main-story{
    grid-template-columns:280px minmax(0,1fr);
    min-height:232px;
  }
  .main-story-thumb img,
  .main-story-copy{
    min-height:232px;
  }
}
@media (max-width:980px){
  .hero-section-editorial .hero-top{
    grid-template-columns:1fr;
  }
  .hero-section-editorial .hero-card.featured{
    min-height:360px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:200px;
  }
  .hero-section-editorial .hero-bottom-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .news-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .main-story{
    grid-template-columns:1fr;
    min-height:0;
    gap:12px;
  }
  .main-story-thumb img,
  .main-story-copy{
    min-height:0;
  }
}


/* v3.3.5 hero anchor and proportions */
.hero-section-editorial .hero-top{
  grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);
  gap:14px;
  margin-bottom:14px;
}
.hero-section-editorial .hero-bottom-four{
  gap:10px;
}
.hero-section-editorial .hero-card{
  border-radius:10px;
  overflow:hidden;
}
.hero-section-editorial .hero-card > a{
  display:block;
  position:relative;
  height:100%;
}
.hero-section-editorial .hero-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.hero-section-editorial .hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 42%, rgba(0,0,0,.18) 62%, rgba(0,0,0,.70) 100%);
}
.hero-section-editorial .hero-copy{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  top:auto;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  padding:16px 16px 14px;
}
.hero-section-editorial .hero-copy h2{
  margin:0;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}
.hero-section-editorial .hero-card.featured{
  min-height:392px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size:27px;
  line-height:1.02;
  max-width:8.8ch;
}
.hero-section-editorial .hero-stack{
  display:grid;
  gap:14px;
}
.hero-section-editorial .hero-card.secondary{
  min-height:188px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size:17px;
  line-height:1.1;
  max-width:14ch;
}
.hero-section-editorial .hero-card.tertiary{
  min-height:112px;
}
.hero-section-editorial .hero-card.tertiary .hero-copy{
  padding:10px 12px 10px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size:12px;
  line-height:1.14;
  max-width:19ch;
}
@media (max-width:1160px){
  .hero-section-editorial .hero-top{
    grid-template-columns:minmax(0,1.08fr) minmax(310px,.82fr);
  }
  .hero-section-editorial .hero-card.featured{
    min-height:368px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:176px;
  }
}
@media (max-width:980px){
  .hero-section-editorial .hero-top{
    grid-template-columns:1fr;
  }
  .hero-section-editorial .hero-card.featured{
    min-height:340px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:188px;
  }
  .hero-section-editorial .hero-bottom-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v3.3.6 hero more square + tighter sections */
.hero-section-editorial{
  margin-bottom: 14px;
}
.hero-section-editorial .hero-top{
  grid-template-columns:minmax(0,1.02fr) minmax(340px,.78fr);
  gap:14px;
  margin-bottom:12px;
}
.hero-section-editorial .hero-card{
  border-radius:10px;
}
.hero-section-editorial .hero-card.featured{
  min-height:462px;
}
.hero-section-editorial .hero-card.featured h2{
  font-size:29px;
  line-height:1.03;
  max-width:9.6ch;
}
.hero-section-editorial .hero-card.secondary{
  min-height:224px;
}
.hero-section-editorial .hero-card.secondary h2{
  font-size:18px;
  line-height:1.12;
  max-width:15ch;
}
.hero-section-editorial .hero-card.tertiary{
  min-height:126px;
}
.hero-section-editorial .hero-card.tertiary h2{
  font-size:12px;
  line-height:1.16;
  max-width:18ch;
}
.hero-section-editorial .hero-overlay{
  background:linear-gradient(180deg, rgba(0,0,0,0) 48%, rgba(0,0,0,.16) 66%, rgba(0,0,0,.64) 100%);
}

.news-section{
  margin-bottom: 14px;
}
.news-grid{
  grid-template-columns:minmax(0,1.34fr) minmax(0,.9fr);
  gap:16px;
  align-items:stretch;
}
.news-main{
  height:100%;
}
.main-story{
  grid-template-columns: 320px minmax(0,1fr);
  gap:16px;
  min-height: 304px;
  height:100%;
}
.main-story-thumb,
.main-story-copy{
  min-height:304px;
}
.main-story-thumb img{
  height:100%;
  min-height:304px;
}
.main-story-copy{
  justify-content:flex-start;
}
.main-story-copy h3{
  font-size:19px;
  line-height:1.06;
  margin-bottom:8px;
}
.main-story-copy p{
  font-size:14px;
  line-height:1.55;
  -webkit-line-clamp:3;
  max-width:44ch;
}
.story-link{
  margin-top:auto;
}
.news-side-list{
  gap:7px;
}
.news-side-list .small-post{
  grid-template-columns:82px minmax(0,1fr);
  gap:9px;
  padding-bottom:7px;
}
.news-side-list .small-post-thumb img{
  height:56px;
}
.news-side-list .small-post-copy h4{
  font-size:12px;
  line-height:1.2;
}

.editorial-strip-bottom{
  margin-top: 0;
  margin-bottom: 16px;
}
.editorial-strip-grid{
  gap:16px;
}
.editorial-mini-section .section-kicker{
  font-size:12px;
}
.editorial-mini-list .small-post{
  grid-template-columns:88px minmax(0,1fr);
  gap:10px;
  padding-bottom:8px;
}
.editorial-mini-list .small-post-thumb img{
  height:60px;
}
.editorial-mini-list .small-post-copy h4{
  font-size:13px;
  line-height:1.22;
}

@media (max-width:1160px){
  .hero-section-editorial .hero-top{
    grid-template-columns:minmax(0,1fr) minmax(310px,.78fr);
  }
  .hero-section-editorial .hero-card.featured{
    min-height:430px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:208px;
  }
  .main-story{
    grid-template-columns:290px minmax(0,1fr);
    min-height:286px;
  }
  .main-story-thumb,
  .main-story-copy,
  .main-story-thumb img{
    min-height:286px;
  }
}
@media (max-width:980px){
  .hero-section-editorial .hero-top{
    grid-template-columns:1fr;
  }
  .hero-section-editorial .hero-card.featured{
    min-height:360px;
  }
  .hero-section-editorial .hero-card.secondary{
    min-height:196px;
  }
  .main-story{
    grid-template-columns:1fr;
    min-height:0;
    height:auto;
  }
  .main-story-thumb,
  .main-story-copy,
  .main-story-thumb img{
    min-height:0;
    height:auto;
  }
}


/* v3.5.0 desktop home with ad rail */
.home-desktop-v350{
  align-items:start;
}
.home-desktop-v350 .content-rail{
  min-width:0;
}
.sidebar-rail-home{
  display:flex;
}
.home-hero-v350{
  margin: 8px 0 24px;
}
.home-hero-main{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
  gap:14px;
  margin-bottom:12px;
}
.home-hero-side{
  display:grid;
  gap:14px;
}
.home-hero-support{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.home-hero-card{
  position:relative;
  overflow:hidden;
  border-radius:10px;
}
.home-hero-card>a{
  position:relative;
  display:block;
  height:100%;
}
.home-hero-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.home-hero-card.featured{min-height:368px}
.home-hero-card.secondary{min-height:176px}
.home-hero-card.support{min-height:118px}
.home-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 48%, rgba(0,0,0,.10) 66%, rgba(0,0,0,.58) 100%);
}
.home-hero-copy{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:2;
  padding:14px;
}
.home-hero-copy h2,.home-hero-copy h3,.home-hero-copy h4{
  margin:0;
  color:#fff;
  text-shadow:0 1px 2px rgba(0,0,0,.16);
}
.home-hero-card.featured .home-hero-copy h2{
  font-size:18px;
  line-height:1.08;
  max-width:14ch;
}
.home-hero-card.secondary .home-hero-copy h3{
  font-size:16px;
  line-height:1.14;
  max-width:16ch;
}
.home-hero-card.support .home-hero-copy{
  padding:10px;
}
.home-hero-card.support .home-hero-copy h4{
  font-size:11px;
  line-height:1.18;
  max-width:18ch;
}
.home-section-v350{
  margin-bottom:22px;
}
.home-section-v350 .section-heading{
  margin-bottom:8px;
  padding-bottom:6px;
}
.home-section-grid{
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(250px,.92fr);
  gap:16px;
  align-items:start;
}
.home-lead-card{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.home-lead-thumb img{
  width:100%;
  height:190px;
  object-fit:cover;
  border-radius:10px;
}
.home-lead-copy h3{
  margin:0 0 8px;
  font-size:17px;
  line-height:1.08;
}
.home-lead-copy p{
  margin:0 0 10px;
  font-size:13px;
  line-height:1.52;
  color:var(--np-muted);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-width:42ch;
}
.home-section-list{
  display:grid;
  gap:9px;
}
.home-list-item{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:9px;
  align-items:start;
}
.home-list-thumb img{
  width:100%;
  height:54px;
  object-fit:cover;
  border-radius:8px;
}
.home-list-copy h4{
  margin:0;
  font-size:12px;
  line-height:1.22;
}
.home-editorial-tail{
  margin-top:6px;
  margin-bottom:24px;
}
.home-editorial-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.home-editorial-list{
  display:grid;
  gap:10px;
}
.home-list-item.mini{
  grid-template-columns:88px minmax(0,1fr);
}
.home-list-item.mini .home-list-thumb img{
  height:60px;
}
.home-list-item.mini .home-list-copy h4{
  font-size:13px;
}
@media (max-width:1160px){
  .home-hero-main{
    grid-template-columns:minmax(0,1.08fr) minmax(270px,.82fr);
  }
  .home-hero-card.featured{min-height:340px}
  .home-hero-card.secondary{min-height:164px}
  .home-lead-card{
    grid-template-columns:270px minmax(0,1fr);
  }
}
@media (max-width:980px){
  .home-desktop-v350{
    display:block;
  }
  .sidebar-rail-home{
    display:none;
  }
  .home-hero-main{
    grid-template-columns:1fr;
  }
  .home-hero-card.featured{min-height:320px}
  .home-hero-card.secondary{min-height:180px}
  .home-hero-support{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-section-grid{
    grid-template-columns:1fr;
  }
  .home-lead-card{
    grid-template-columns:1fr;
  }
  .home-lead-thumb img{
    height:220px;
  }
  .home-editorial-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:640px){
  .home-hero-support{
    grid-template-columns:1fr;
  }
}


/* v3.5.2 desktop compact polish */
.home-hero-v350{
  margin: 8px 0 18px;
}
.home-hero-main{
  gap: 12px;
  margin-bottom: 10px;
}
.home-hero-side{
  gap: 12px;
}
.home-hero-support{
  gap: 10px;
}
.home-hero-card.featured{
  min-height: 338px;
}
.home-hero-card.secondary{
  min-height: 162px;
}
.home-hero-card.support{
  min-height: 98px;
}
.home-hero-card.featured .home-hero-copy h2{
  font-size: 17px;
  line-height: 1.07;
  max-width: 13ch;
}
.home-hero-card.secondary .home-hero-copy h3{
  font-size: 15px;
  line-height: 1.12;
  max-width: 15ch;
}
.home-hero-card.support .home-hero-copy{
  padding: 8px;
}
.home-hero-card.support .home-hero-copy h4{
  font-size: 10px;
  line-height: 1.16;
  max-width: 17ch;
}
.home-section-v350{
  margin-bottom: 18px;
}
.home-section-v350 .section-heading{
  margin-bottom: 7px;
}
.home-section-grid{
  gap: 14px;
}
.home-lead-card{
  grid-template-columns: 286px minmax(0,1fr);
  gap: 14px;
}
.home-lead-thumb img{
  height: 176px;
}
.home-lead-copy h3{
  font-size: 16px;
  line-height: 1.08;
  margin-bottom: 6px;
}
.home-lead-copy p{
  font-size: 12px;
  line-height: 1.48;
  margin-bottom: 8px;
  -webkit-line-clamp: 3;
}
.home-section-list{
  gap: 7px;
}
.home-list-item{
  grid-template-columns: 74px minmax(0,1fr);
  gap: 8px;
}
.home-list-thumb img{
  height: 50px;
}
.home-list-copy h4{
  font-size: 11px;
  line-height: 1.2;
}
.home-editorial-tail{
  margin-top: 2px;
  margin-bottom: 18px;
}
.home-editorial-grid{
  gap: 16px;
}
.home-editorial-list{
  gap: 8px;
}
.home-list-item.mini{
  grid-template-columns: 82px minmax(0,1fr);
}
.home-list-item.mini .home-list-thumb img{
  height: 56px;
}
.home-list-item.mini .home-list-copy h4{
  font-size: 12px;
}
@media (max-width:1160px){
  .home-hero-card.featured{ min-height: 314px; }
  .home-hero-card.secondary{ min-height: 154px; }
  .home-hero-card.support{ min-height: 94px; }
  .home-lead-card{ grid-template-columns: 264px minmax(0,1fr); }
  .home-lead-thumb img{ height: 168px; }
}
@media (max-width:980px){
  .home-hero-card.featured{ min-height: 320px; }
  .home-hero-card.secondary{ min-height: 176px; }
  .home-hero-card.support{ min-height: 108px; }
}


/* v3.5.3 tighter hero images */
.home-hero-main{
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);
  gap:10px;
  margin-bottom:10px;
}
.home-hero-side{
  gap:10px;
}
.home-hero-support{
  gap:8px;
}
.home-hero-card.featured{
  min-height:300px;
}
.home-hero-card.secondary{
  min-height:145px;
}
.home-hero-card.support{
  min-height:84px;
}
.home-hero-card.featured .home-hero-copy{
  padding:12px;
}
.home-hero-card.secondary .home-hero-copy{
  padding:12px;
}
.home-hero-card.featured .home-hero-copy h2{
  font-size:16px;
  line-height:1.08;
  max-width:12ch;
}
.home-hero-card.secondary .home-hero-copy h3{
  font-size:14px;
  line-height:1.14;
  max-width:15ch;
}
.home-hero-card.support .home-hero-copy{
  padding:7px;
}
.home-hero-card.support .home-hero-copy h4{
  font-size:9px;
  line-height:1.15;
  max-width:16ch;
}
@media (max-width:1160px){
  .home-hero-card.featured{min-height:284px;}
  .home-hero-card.secondary{min-height:138px;}
  .home-hero-card.support{min-height:80px;}
}
@media (max-width:980px){
  .home-hero-main{
    grid-template-columns:1fr;
  }
  .home-hero-card.featured{min-height:300px;}
  .home-hero-card.secondary{min-height:160px;}
  .home-hero-card.support{min-height:96px;}
}


/* v3.5.4 force compact desktop hero */
@media (min-width: 981px){
  .home-hero-v350{
    margin: 8px 0 14px !important;
  }
  .home-hero-main{
    grid-template-columns: minmax(0,1.05fr) minmax(260px,.82fr) !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
  }
  .home-hero-side{
    gap: 10px !important;
  }
  .home-hero-support{
    gap: 8px !important;
  }
  .home-hero-card.featured{
    min-height: 250px !important;
    max-height: 250px !important;
  }
  .home-hero-card.secondary{
    min-height: 120px !important;
    max-height: 120px !important;
  }
  .home-hero-card.support{
    min-height: 72px !important;
    max-height: 72px !important;
  }
  .home-hero-card > a{
    height: 100% !important;
  }
  .home-hero-card img{
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 10px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 10px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 6px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 15px !important;
    line-height: 1.08 !important;
    max-width: 12ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 13px !important;
    line-height: 1.14 !important;
    max-width: 15ch !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 9px !important;
    line-height: 1.16 !important;
    max-width: 15ch !important;
  }
}


/* v3.5.5 hero 4:3 */
@media (min-width: 981px){
  .home-hero-main{
    grid-template-columns: minmax(0,1.04fr) minmax(260px,.88fr) !important;
    gap: 10px !important;
  }
  .home-hero-side{
    display: grid !important;
    gap: 10px !important;
    align-content: start;
  }
  .home-hero-support{
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: 8px !important;
  }
  .home-hero-card.featured,
  .home-hero-card.secondary,
  .home-hero-card.support{
    min-height: auto !important;
    max-height: none !important;
    aspect-ratio: 4 / 3 !important;
  }
  .home-hero-card > a{
    height: 100% !important;
  }
  .home-hero-card img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 12px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 11px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 8px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 17px !important;
    line-height: 1.08 !important;
    max-width: 13ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 14px !important;
    line-height: 1.14 !important;
    max-width: 15ch !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 9px !important;
    line-height: 1.16 !important;
    max-width: 16ch !important;
  }
}


/* v3.5.6 desktop hero top smaller, titles larger */
@media (min-width: 981px){
  .home-hero-main{
    grid-template-columns: minmax(0,0.98fr) minmax(250px,.84fr) !important;
    gap: 10px !important;
    align-items: start !important;
  }
  .home-hero-card.featured{
    aspect-ratio: 4 / 3 !important;
    max-width: 370px !important;
    justify-self: start !important;
  }
  .home-hero-side{
    gap: 10px !important;
  }
  .home-hero-card.secondary{
    aspect-ratio: 4 / 3 !important;
    max-width: 250px !important;
    justify-self: start !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 14px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 12px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 19px !important;
    line-height: 1.06 !important;
    max-width: 13ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 16px !important;
    line-height: 1.12 !important;
    max-width: 15ch !important;
  }
}
@media (max-width: 1160px) and (min-width: 981px){
  .home-hero-card.featured{
    max-width: 350px !important;
  }
  .home-hero-card.secondary{
    max-width: 236px !important;
  }
}


/* v3.5.7 hero top realigned to bottom grid */
@media (min-width: 981px){
  .home-hero-main{
    grid-template-columns: minmax(0,1.38fr) minmax(0,1fr) !important;
    gap: 12px !important;
    align-items: stretch !important;
  }
  .home-hero-side{
    grid-template-rows: 1fr 1fr !important;
    gap: 12px !important;
    align-content: stretch !important;
  }
  .home-hero-card.featured,
  .home-hero-card.secondary{
    max-width: none !important;
    width: 100% !important;
    justify-self: stretch !important;
  }
  .home-hero-card.featured{
    aspect-ratio: 4 / 3 !important;
  }
  .home-hero-card.secondary{
    aspect-ratio: 16 / 7.65 !important;
  }
  .home-hero-support{
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 10px !important;
  }
  .home-hero-card.support{
    aspect-ratio: 4 / 3 !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 14px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 12px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 18px !important;
    line-height: 1.08 !important;
    max-width: 13ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 15px !important;
    line-height: 1.12 !important;
    max-width: 16ch !important;
  }
}
@media (max-width: 1160px) and (min-width: 981px){
  .home-hero-main{
    grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) !important;
  }
  .home-hero-card.secondary{
    aspect-ratio: 16 / 8 !important;
  }
}


/* v3.5.8 hero top row + larger typography */
@media (min-width: 981px){
  .home-hero-main{
    grid-template-columns: 1.28fr 1fr 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
  }
  .home-hero-side{
    display: contents !important;
    gap: 0 !important;
  }
  .home-hero-card.featured,
  .home-hero-card.secondary{
    aspect-ratio: 4 / 3 !important;
    min-height: auto !important;
    max-height: none !important;
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .home-hero-support{
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: 8px !important;
  }
  .home-hero-card.support{
    aspect-ratio: 4 / 3 !important;
    min-height: auto !important;
    max-height: none !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 14px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 12px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 8px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 21px !important;
    line-height: 1.06 !important;
    max-width: 13ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 17px !important;
    line-height: 1.12 !important;
    max-width: 15ch !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 11px !important;
    line-height: 1.16 !important;
    max-width: 17ch !important;
  }

  .home-lead-copy h3{
    font-size: 18px !important;
    line-height: 1.08 !important;
  }
  .home-list-copy h4{
    font-size: 12px !important;
    line-height: 1.22 !important;
  }
  .home-list-item.mini .home-list-copy h4{
    font-size: 13px !important;
    line-height: 1.22 !important;
  }
}
@media (max-width: 1160px) and (min-width: 981px){
  .home-hero-main{
    grid-template-columns: 1.2fr 1fr 1fr !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 19px !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 16px !important;
  }
}


/* v3.5.9 hero titles centered at bottom */
@media (min-width: 981px){
  .home-hero-copy{
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    text-align: center !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    max-width: 14ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    max-width: 16ch !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    max-width: 18ch !important;
  }
}


/* v3.6.0 hero titles use full bottom width */
@media (min-width: 981px){
  .home-hero-copy{
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-end !important;
    padding: 12px 14px !important;
  }
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: left !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 14px 16px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 12px 14px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 8px 10px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 20px !important;
    line-height: 1.08 !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 16px !important;
    line-height: 1.12 !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 10px !important;
    line-height: 1.16 !important;
  }
}


/* v3.6.1 hero titles only */
@media (min-width: 981px){
  .home-hero-copy{
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-end !important;
    padding: 12px 14px !important;
  }
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
    max-width: none !important;
    text-wrap: balance;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 16px 18px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 16px 18px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 12px 14px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 21px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    max-width: 15ch !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 18px !important;
    line-height: 1.12 !important;
    font-weight: 800 !important;
    max-width: 17ch !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 12px !important;
    line-height: 1.18 !important;
    font-weight: 800 !important;
    max-width: 18ch !important;
  }
  .home-hero-overlay{
    background: linear-gradient(180deg, rgba(0,0,0,0) 42%, rgba(0,0,0,.10) 60%, rgba(0,0,0,.72) 100%) !important;
  }
}


/* v3.6.2 hero titles centered on bottom strip */
@media (min-width: 981px){
  .home-hero-copy{
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  .home-hero-card.featured .home-hero-copy{
    padding: 16px 20px !important;
  }
  .home-hero-card.secondary .home-hero-copy{
    padding: 16px 18px !important;
  }
  .home-hero-card.support .home-hero-copy{
    padding: 12px 12px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 21px !important;
    line-height: 1.1 !important;
    max-width: 17ch !important;
    font-weight: 800 !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 18px !important;
    line-height: 1.12 !important;
    max-width: 18ch !important;
    font-weight: 800 !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 13px !important;
    line-height: 1.18 !important;
    max-width: 19ch !important;
    font-weight: 800 !important;
  }
}


/* v3.6.3 hero titles wider within image */
@media (min-width: 981px){
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    max-width: 94% !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    max-width: 92% !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    max-width: 92% !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    max-width: 94% !important;
  }
}


/* v3.7.0 mobile home refinement only */
@media (max-width: 980px){
  .home-hero-v350{
    margin: 8px 0 18px !important;
  }
  .home-hero-main{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
    margin-bottom: 10px !important;
  }
  .home-hero-card.featured{
    grid-column: 1 / -1 !important;
    aspect-ratio: 4 / 3 !important;
    min-height: auto !important;
    max-height: none !important;
  }
  .home-hero-card.secondary{
    aspect-ratio: 4 / 3 !important;
    min-height: auto !important;
    max-height: none !important;
  }
  .home-hero-support{
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .home-hero-card.support{
    aspect-ratio: 4 / 3 !important;
    min-height: auto !important;
    max-height: none !important;
  }

  .home-hero-copy{
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    padding: 10px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .home-hero-copy h2,
  .home-hero-copy h3,
  .home-hero-copy h4{
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
    max-width: 92% !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 20px !important;
    line-height: 1.08 !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 14px !important;
    line-height: 1.14 !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 11px !important;
    line-height: 1.18 !important;
  }

  .home-section-v350{
    margin-bottom: 20px !important;
  }
  .home-section-grid{
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .home-lead-card{
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .home-lead-thumb img{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    border-radius: 10px !important;
  }
  .home-lead-copy h3{
    font-size: 20px !important;
    line-height: 1.12 !important;
    margin-bottom: 8px !important;
  }
  .home-lead-copy p{
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin-bottom: 8px !important;
    max-width: none !important;
    -webkit-line-clamp: 3 !important;
  }

  .home-section-list{
    gap: 10px !important;
  }
  .home-list-item{
    grid-template-columns: 96px minmax(0,1fr) !important;
    gap: 10px !important;
    align-items: start !important;
  }
  .home-list-thumb img{
    width: 100% !important;
    height: 66px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
  }
  .home-list-copy h4{
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .home-editorial-grid{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .home-editorial-tail{
    margin-top: 4px !important;
    margin-bottom: 20px !important;
  }
  .home-list-item.mini{
    grid-template-columns: 96px minmax(0,1fr) !important;
    gap: 10px !important;
  }
  .home-list-item.mini .home-list-thumb img{
    height: 66px !important;
  }
  .home-list-item.mini .home-list-copy h4{
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
}
@media (max-width: 640px){
  .container{
    width: min(var(--np-max), calc(100% - 24px)) !important;
  }
  .home-hero-main,
  .home-hero-support{
    gap: 8px !important;
  }
  .home-hero-copy{
    padding: 8px !important;
  }
  .home-hero-card.featured .home-hero-copy h2{
    font-size: 18px !important;
  }
  .home-hero-card.secondary .home-hero-copy h3{
    font-size: 13px !important;
  }
  .home-hero-card.support .home-hero-copy h4{
    font-size: 10px !important;
  }
  .home-lead-copy h3{
    font-size: 18px !important;
  }
  .section-heading{
    margin-bottom: 8px !important;
  }
}


/* v3.7.1 mobile header fixes only */
@media (max-width: 980px){
  .branding-row{
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    justify-items: center !important;
    text-align: center !important;
    padding: 12px 0 !important;
  }
  .site-logo-block{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .site-logo,
  .custom-logo-link{
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .site-logo img,
  .custom-logo{
    width: 180px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  .header-media-wrap{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
  }
  .header-media-slot{
    width: 100% !important;
    max-width: 100% !important;
  }
  .header-media-slot img,
  .header-media-slot iframe,
  .header-media-slot ins{
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  .nav-shell-inner{
    grid-template-columns: 1fr auto !important;
    gap: 10px !important;
    padding: 10px 0 !important;
    align-items: center !important;
  }
  .desktop-menu,
  .header-search{
    display: none !important;
  }
  .menu-toggle{
    display: inline-flex !important;
    justify-self: end !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 9px 12px !important;
    min-height: 42px !important;
  }
  .menu-toggle em{
    display: none !important;
  }

  .mobile-panel{
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    border-top: 1px solid var(--np-line) !important;
  }
  .mobile-panel-inner{
    padding: 12px 0 16px !important;
  }
  .mobile-menu{
    gap: 8px !important;
    margin-bottom: 12px !important;
  }
  .mobile-menu a{
    padding: 12px 14px !important;
    font-size: 12px !important;
    letter-spacing: .06em !important;
    border-radius: 12px !important;
  }
  .mobile-search{
    display: flex !important;
  }
  .mobile-search input{
    min-width: 0 !important;
  }
}
@media (max-width: 640px){
  .branding-row{
    padding: 10px 0 !important;
  }
  .site-logo img,
  .custom-logo{
    width: 165px !important;
  }
}


/* v3.7.2 mobile header only */
@media (max-width: 980px){
  .topbar-inner{
    min-height: 32px !important;
    font-size: 11px !important;
  }

  .site-header{
    position: relative !important;
    top: auto !important;
    backdrop-filter: none !important;
  }

  .branding-row{
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 0 12px !important;
  }

  .site-logo-block{
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    order: 1 !important;
  }

  .site-logo,
  .custom-logo-link{
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 auto !important;
  }

  .site-logo img,
  .custom-logo{
    display: block !important;
    width: 170px !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  .header-media-wrap{
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    order: 2 !important;
  }

  .header-media-slot{
    width: 100% !important;
    max-width: 100% !important;
  }

  .header-media-slot img,
  .header-media-slot iframe,
  .header-media-slot ins{
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 10px !important;
  }

  .nav-shell{
    position: relative !important;
    z-index: 61 !important;
  }

  .nav-shell-inner{
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu,
  .header-search{
    display: none !important;
  }

  .menu-toggle{
    display: inline-flex !important;
    justify-self: end !important;
    align-items: center !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 12px !important;
    border: 1px solid var(--np-line-strong) !important;
    background: #fff !important;
    color: var(--np-primary) !important;
  }

  .menu-toggle span{
    width: 18px !important;
    height: 2px !important;
  }

  .menu-toggle em{
    display: none !important;
  }

  .mobile-panel{
    left: 0 !important;
    right: 0 !important;
    top: 100% !important;
    background: #fff !important;
    box-shadow: 0 18px 34px rgba(18,24,51,.14) !important;
    border-top: 1px solid var(--np-line) !important;
  }

  .mobile-panel-inner{
    padding: 12px 0 16px !important;
  }

  .mobile-menu{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
  }

  .mobile-menu a{
    display: block !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .06em !important;
  }

  .mobile-search{
    display: flex !important;
  }

  .mobile-search input{
    flex: 1 !important;
    min-width: 0 !important;
  }
}

@media (max-width: 640px){
  .branding-row{
    padding: 8px 0 10px !important;
  }

  .site-logo img,
  .custom-logo{
    width: 160px !important;
  }
}


/* v3.7.3 mobile header simplify */
@media (max-width: 980px){
  .nav-shell{
    display: none !important;
  }

  .branding-row{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 10px 0 12px !important;
  }

  .site-logo-block{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  .site-logo,
  .custom-logo-link{
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 auto !important;
  }

  .site-logo img,
  .custom-logo{
    display: block !important;
    width: 170px !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  .header-media-wrap{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .header-media-slot{
    width: 100% !important;
    max-width: 100% !important;
  }

  .header-media-slot img,
  .header-media-slot iframe,
  .header-media-slot ins,
  .header-media-slot > *{
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 auto !important;
    border-radius: 10px !important;
  }

  .header-media-wrap .sidebar-media-slot,
  .header-media-wrap .below-media-slot{
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 640px){
  .site-logo img,
  .custom-logo{
    width: 160px !important;
  }

  .branding-row{
    padding: 8px 0 10px !important;
  }
}


/* v3.7.4 mobile topbar centered */
@media (max-width: 980px){
  .topbar-inner{
    justify-content: center !important;
    text-align: center !important;
  }
  .topbar-left{
    width: 100% !important;
    text-align: center !important;
  }
}


/* v3.7.5 single fixes */
@media (max-width: 980px){
  .single-title{
    font-size: 30px !important;
    line-height: 1.06 !important;
    letter-spacing: -.02em !important;
    max-width: none !important;
    width: 100% !important;
    text-wrap: balance;
  }
}
@media (max-width: 640px){
  .single-main{
    padding-top: 18px !important;
  }
  .single-header{
    margin-bottom: 14px !important;
  }
  .single-title{
    font-size: 27px !important;
    line-height: 1.07 !important;
    margin-bottom: 10px !important;
    max-width: none !important;
    width: 100% !important;
  }
  .single-standfirst{
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  .single-meta-row{
    gap: 6px !important;
  }
  .single-inline-media{
    margin: 18px auto 22px !important;
  }
}


/* v3.7.6 single mobile title + related fixes */
@media (max-width: 640px){
  .single-layout,
  .single-header,
  .single-primary,
  .single-article{
    width: 100% !important;
    max-width: none !important;
  }

  .single-title{
    width: 100% !important;
    max-width: 100% !important;
    font-size: 23px !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
    text-wrap: pretty !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .related-posts{
    margin-top: 24px !important;
  }

  .related-grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .related-card{
    display: grid !important;
    grid-template-columns: 112px minmax(0,1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  .related-card a img{
    width: 100% !important;
    height: 100% !important;
    min-height: 112px !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  .related-card h3,
  .related-card h2{
    margin: 0 0 8px !important;
    padding: 12px 12px 0 0 !important;
    font-size: 18px !important;
    line-height: 1.08 !important;
  }

  .related-card p{
    margin: 0 0 8px !important;
    padding: 0 12px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: var(--np-muted) !important;
  }

  .related-card .story-link,
  .related-card a.story-link{
    display: inline-flex !important;
    padding: 0 12px 12px 0 !important;
  }
}


/* v3.7.7 single mobile related cleaner */
@media (max-width: 640px){
  .related-grid{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .related-card{
    display: block !important;
    padding: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  .related-card a img{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 0 !important;
  }

  .related-card h3,
  .related-card h2{
    margin: 0 !important;
    padding: 14px 14px 8px !important;
    font-size: 18px !important;
    line-height: 1.08 !important;
  }

  .related-card p{
    margin: 0 !important;
    padding: 0 14px 10px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: var(--np-muted) !important;
  }

  .related-card .story-link,
  .related-card a.story-link{
    display: inline-flex !important;
    padding: 0 14px 14px !important;
  }
}


/* v3.7.8 single mobile left-right breathing room */
@media (max-width: 640px){
  .single-main .container,
  .single-layout{
    width: min(100%, calc(100% - 24px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-header,
  .single-primary,
  .single-content,
  .entry-content,
  .related-posts{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .single-kicker,
  .single-title,
  .single-standfirst,
  .single-hero,
  .single-meta-row,
  .single-content > *,
  .related-head{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .single-kicker{
    display: inline-block !important;
    margin-bottom: 10px !important;
  }

  .single-title{
    padding-right: 2px !important;
  }

  .single-hero{
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }

  .single-meta-row{
    margin-top: 8px !important;
    margin-bottom: 18px !important;
  }

  .related-posts{
    margin-top: 26px !important;
    padding-top: 8px !important;
  }

  .related-head .section-kicker,
  .related-head h2,
  .related-posts .section-kicker{
    padding-left: 0 !important;
    margin-left: 0 !important;
  }
}


/* v3.7.9 desktop header alignment */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 190px minmax(0, 640px) !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 14px 0 12px !important;
  }

  .site-logo img,
  .custom-logo{
    width: 180px !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
  }

  .header-media-slot{
    width: 640px !important;
    max-width: 100% !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0,1fr) 220px !important;
    gap: 14px !important;
    align-items: center !important;
  }

  .desktop-menu{
    gap: 2px !important;
  }

  .desktop-menu a{
    padding: 11px 10px !important;
    font-size: 11px !important;
  }

  .header-search{
    max-width: 220px !important;
    justify-self: end !important;
  }

  .header-search input{
    padding: 11px 12px !important;
  }

  .header-search button{
    padding: 11px 14px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .branding-row{
    grid-template-columns: 180px minmax(0, 560px) !important;
  }

  .header-media-slot{
    width: 560px !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0,1fr) 200px !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 10px !important;
  }

  .header-search{
    max-width: 200px !important;
  }
}


/* v3.8.0 desktop header aligned left like reference */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 180px minmax(0, 1fr) !important;
    gap: 22px !important;
    align-items: center !important;
    padding: 12px 0 10px !important;
  }

  .site-logo-block{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .site-logo img,
  .custom-logo{
    width: 170px !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
  }

  .header-media-slot{
    width: min(100%, 600px) !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0, 1fr) 170px !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    justify-content: flex-start !important;
    gap: 4px !important;
  }

  .desktop-menu a{
    padding: 10px 9px !important;
    font-size: 11px !important;
  }

  .header-search{
    max-width: 170px !important;
    width: 170px !important;
    justify-self: end !important;
  }

  .header-search input{
    min-width: 0 !important;
    padding: 10px 12px !important;
  }

  .header-search button{
    padding: 10px 12px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .branding-row{
    grid-template-columns: 170px minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  .site-logo img,
  .custom-logo{
    width: 160px !important;
  }

  .header-media-slot{
    width: min(100%, 540px) !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0, 1fr) 150px !important;
  }

  .header-search{
    max-width: 150px !important;
    width: 150px !important;
  }

  .desktop-menu a{
    padding: 10px 7px !important;
    font-size: 10px !important;
  }
}


/* v3.8.1 desktop header pulled closer like reference */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 170px 520px !important;
    justify-content: start !important;
    gap: 24px !important;
    padding: 12px 0 10px !important;
  }

  .site-logo-block{
    justify-content: flex-start !important;
  }

  .site-logo img,
  .custom-logo{
    width: 165px !important;
  }

  .header-media-wrap{
    width: 520px !important;
    justify-content: flex-start !important;
  }

  .header-media-slot{
    width: 520px !important;
    max-width: 520px !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0, 1fr) 150px !important;
    gap: 10px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    justify-content: flex-start !important;
    gap: 2px !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 10px !important;
  }

  .header-search{
    width: 150px !important;
    max-width: 150px !important;
  }

  .header-search input{
    padding: 10px 10px !important;
  }

  .header-search button{
    padding: 10px 11px !important;
  }
}

@media (min-width: 1200px){
  .branding-row{
    grid-template-columns: 170px 560px !important;
  }

  .header-media-wrap,
  .header-media-slot{
    width: 560px !important;
    max-width: 560px !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0, 1fr) 160px !important;
  }

  .header-search{
    width: 160px !important;
    max-width: 160px !important;
  }
}


/* v3.8.2 desktop header final alignment */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 170px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: center !important;
    padding: 10px 0 10px !important;
  }

  .site-logo-block{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .site-logo img,
  .custom-logo{
    width: 150px !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
  }

  .header-media-slot{
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    grid-template-columns: minmax(0, 1fr) 44px !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    justify-content: flex-start !important;
    gap: 6px !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 11px !important;
  }

  .header-search{
    width: 44px !important;
    max-width: 44px !important;
    min-width: 44px !important;
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }

  .header-search input{
    display: none !important;
  }

  .header-search button{
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: transparent !important;
    overflow: hidden !important;
  }

  .header-search button::before{
    content: "⌕" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--np-primary) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  .header-search button:hover{
    background: rgba(66,66,144,.06) !important;
  }
}

@media (min-width: 1200px){
  .header-media-slot{
    max-width: 640px !important;
    width: min(100%, 640px) !important;
  }
}


/* v3.8.3 desktop header matches reference closer */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 165px minmax(0, 1fr) !important;
    gap: 24px !important;
    align-items: center !important;
    justify-content: start !important;
    padding: 10px 0 10px !important;
  }

  .site-logo img,
  .custom-logo{
    width: 150px !important;
  }

  .site-logo-block{
    justify-content: flex-start !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    width: 100% !important;
  }

  .header-media-slot{
    width: min(100%, 900px) !important;
    max-width: 900px !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    flex: 0 1 auto !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 11px !important;
  }

  .header-search{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 2px !important;
    flex: 0 0 auto !important;
  }

  .header-search input{
    display: none !important;
  }

  .header-search button{
    position: relative !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: transparent !important;
    overflow: hidden !important;
  }

  .header-search button::before{
    content: "⌕" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--np-primary) !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  .header-search button:hover{
    background: rgba(66,66,144,.06) !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .header-media-slot{
    width: min(100%, 820px) !important;
    max-width: 820px !important;
  }

  .desktop-menu a{
    padding: 9px 7px !important;
    font-size: 10px !important;
  }
}


/* v3.8.4 desktop header: larger logo, banner end aligned closer to highlights */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 205px minmax(0, 1fr) !important;
    gap: 22px !important;
    align-items: center !important;
    justify-content: start !important;
    padding: 10px 0 10px !important;
  }

  .site-logo img,
  .custom-logo{
    width: 185px !important;
  }

  .site-logo-block{
    justify-content: flex-start !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    width: 100% !important;
  }

  .header-media-slot{
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    flex: 0 1 auto !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 11px !important;
  }

  .header-search{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 2px !important;
    flex: 0 0 auto !important;
  }

  .header-search input{
    display: none !important;
  }

  .header-search button{
    position: relative !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: transparent !important;
    overflow: hidden !important;
  }

  .header-search button::before{
    content: "⌕" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--np-primary) !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .branding-row{
    grid-template-columns: 190px minmax(0, 1fr) !important;
  }

  .site-logo img,
  .custom-logo{
    width: 172px !important;
  }

  .header-media-slot{
    width: min(100%, 680px) !important;
    max-width: 680px !important;
  }
}


/* v3.8.6 desktop header alignment + expandable search */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 210px minmax(0, 1fr) !important;
    gap: 26px !important;
    align-items: center !important;
    justify-content: start !important;
    padding: 10px 0 10px !important;
  }

  .site-logo-block{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .site-logo img,
  .custom-logo{
    width: 190px !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
  }

  .header-media-slot{
    width: min(100%, 880px) !important;
    max-width: 880px !important;
    margin: 0 !important;
  }

  .nav-shell-inner{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    flex: 0 1 auto !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 11px !important;
  }

  .header-search{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: none !important;
    min-width: 36px !important;
    margin-left: 2px !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
  }

  .header-search input{
    display: block !important;
    width: 0 !important;
    min-width: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    border: 0 !important;
    padding: 0 !important;
    transition: width .18s ease, opacity .18s ease, margin .18s ease, padding .18s ease !important;
    margin-right: 0 !important;
    border-radius: 999px !important;
  }

  .header-search.is-open input{
    width: 180px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    border: 1px solid var(--np-line-strong) !important;
    padding: 9px 12px !important;
    margin-right: 8px !important;
  }

  .header-search button,
  .header-search .header-search-toggle{
    position: relative !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: transparent !important;
    overflow: hidden !important;
    cursor: pointer !important;
  }

  .header-search button::before,
  .header-search .header-search-toggle::before{
    content: "⌕" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--np-primary) !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  .header-search button:hover,
  .header-search .header-search-toggle:hover{
    background: rgba(66,66,144,.06) !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .branding-row{
    grid-template-columns: 190px minmax(0, 1fr) !important;
  }

  .site-logo img,
  .custom-logo{
    width: 174px !important;
  }

  .header-media-slot{
    width: min(100%, 760px) !important;
    max-width: 760px !important;
  }

  .desktop-menu a{
    padding: 9px 7px !important;
    font-size: 10px !important;
  }

  .header-search.is-open input{
    width: 150px !important;
  }
}


/* v3.8.7 keep paid top banner fully visible */
.header-media-slot,
.header-media-wrap{
  overflow: visible !important;
}

.header-media-slot img,
.header-media-slot picture,
.header-media-slot a{
  display: block !important;
  max-width: 100% !important;
}

.header-media-slot img{
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
}

@media (min-width: 981px){
  .header-media-slot{
    width: min(100%, 860px) !important;
    max-width: 860px !important;
  }
}


/* v3.8.8 desktop header safe alignment with real ad size and working search */
@media (min-width: 981px){
  .branding-row{
    grid-template-columns: 210px minmax(0, 1fr) !important;
    gap: 24px !important;
    align-items: center !important;
    justify-content: start !important;
    padding: 10px 0 10px !important;
  }

  .site-logo-block{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .site-logo img,
  .custom-logo{
    width: 190px !important;
    max-width: 100% !important;
    height: auto !important;
  }

  .header-media-wrap{
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .header-media-slot{
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  .header-media-slot img{
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .nav-shell-inner{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    padding: 10px 0 !important;
  }

  .desktop-menu{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    flex: 0 1 auto !important;
  }

  .desktop-menu a{
    padding: 10px 8px !important;
    font-size: 11px !important;
  }

  .header-search{
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    justify-content: flex-start !important;
    width: 196px !important;
    max-width: 196px !important;
    min-width: 196px !important;
    margin-left: 4px !important;
    flex: 0 0 auto !important;
  }

  .header-search input{
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    border: 1px solid var(--np-line-strong) !important;
    border-right: 0 !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    border-radius: 999px 0 0 999px !important;
  }

  .header-search button{
    position: static !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    padding: 10px 14px !important;
    border-radius: 0 999px 999px 0 !important;
    background: var(--np-primary) !important;
    color: #fff !important;
    overflow: visible !important;
  }

  .header-search button::before{
    content: none !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .branding-row{
    grid-template-columns: 190px minmax(0, 1fr) !important;
  }

  .site-logo img,
  .custom-logo{
    width: 174px !important;
  }

  .header-media-slot{
    width: min(100%, 760px) !important;
    max-width: 760px !important;
  }

  .header-search{
    width: 176px !important;
    max-width: 176px !important;
    min-width: 176px !important;
  }

  .desktop-menu a{
    padding: 9px 7px !important;
    font-size: 10px !important;
  }
}


/* v3.9.1 desktop only: keep v3.8.8 layout, just pull search closer to Saúde */
@media (min-width: 981px){
  .nav-shell-inner{
    gap: 4px !important;
  }

  .desktop-menu{
    gap: 0 !important;
    flex: 0 1 auto !important;
  }

  .desktop-menu a{
    padding-right: 7px !important;
    padding-left: 7px !important;
  }

  .header-search{
    width: 182px !important;
    max-width: 182px !important;
    min-width: 182px !important;
    margin-left: -6px !important;
    justify-self: start !important;
  }

  .header-search input{
    padding: 10px 10px !important;
  }

  .header-search button{
    padding: 10px 12px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .header-search{
    width: 168px !important;
    max-width: 168px !important;
    min-width: 168px !important;
  }
}


/* v3.9.2 desktop search hover fix only */
@media (min-width: 981px){
  .header-search,
  .header-search:hover,
  .header-search:focus-within{
    background: transparent !important;
    box-shadow: none !important;
  }

  .header-search input,
  .header-search input:hover,
  .header-search input:focus{
    background: #fff !important;
  }

  .header-search button:hover,
  .header-search button:focus{
    background: var(--np-primary-dark) !important;
    color: #fff !important;
  }
}


/* v3.9.3 desktop search tiny breathing room after Saúde */
@media (min-width: 981px){
  .header-search{
    margin-left: 6px !important;
  }
}


/* v3.9.4 desktop search focus and button alignment fix */
@media (min-width: 981px){
  .header-search{
    display: inline-flex !important;
    align-items: stretch !important;
    height: 40px !important;
    border: 1px solid var(--np-line-strong) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  .header-search:focus-within{
    border-color: var(--np-primary) !important;
    box-shadow: 0 0 0 2px rgba(66,66,144,.12) !important;
  }

  .header-search input{
    height: 100% !important;
    border: 0 !important;
    border-right: 1px solid var(--np-line-strong) !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
    padding: 0 12px !important;
    line-height: normal !important;
  }

  .header-search input:focus,
  .header-search input:hover{
    border: 0 !important;
    border-right: 1px solid var(--np-line-strong) !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
  }

  .header-search button{
    height: 100% !important;
    min-height: 40px !important;
    align-self: stretch !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 14px !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    background: var(--np-primary) !important;
    color: #fff !important;
  }

  .header-search button:hover,
  .header-search button:focus{
    background: var(--np-primary-dark) !important;
    color: #fff !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
}


/* v3.9.5 desktop home sidebar ads visible again */
@media (min-width: 981px){
  .layout-grid.home-desktop-v350{
    grid-template-columns: minmax(0, 1fr) 312px !important;
    gap: 28px !important;
    align-items: start !important;
  }

  .layout-grid.home-desktop-v350 > .content-rail{
    min-width: 0 !important;
  }

  .layout-grid.home-desktop-v350 > .sidebar-rail-home{
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
  }
}

/* v3.9.6 single desktop refinement only */
@media (min-width: 981px){
.single-layout{grid-template-columns:minmax(0,760px) 280px !important;gap:36px !important;align-items:start !important;}
.single-primary,.single-article,.single-header,.single-content,.entry-content{max-width:760px !important;}
.single-header{margin-bottom:20px !important;}
.single-kicker{margin-bottom:12px !important;}
.single-title{max-width:700px !important;font-size:52px !important;line-height:1.02 !important;letter-spacing:-.03em !important;margin:0 0 12px !important;text-wrap:balance;}
.single-standfirst{max-width:700px !important;font-size:18px !important;line-height:1.45 !important;margin:0 0 18px !important;}
.single-hero{max-width:760px !important;margin:0 0 10px !important;}
.single-hero img{width:100% !important;max-width:760px !important;height:auto !important;object-fit:contain !important;border-radius:16px !important;}
.single-meta-row{max-width:760px !important;margin:12px 0 26px !important;}
.single-content>p,.entry-content>p{max-width:720px !important;font-size:17px !important;line-height:1.88 !important;margin:0 0 22px !important;}
.single-content figure,.entry-content figure,.single-content .wp-block-image,.entry-content .wp-block-image,.single-content img,.entry-content img{max-width:760px !important;}
.single-content figure,.entry-content figure,.single-content .wp-block-image,.entry-content .wp-block-image{margin:30px 0 12px !important;}
.single-content figure img,.entry-content figure img,.single-content .wp-block-image img,.entry-content .wp-block-image img{width:100% !important;height:auto !important;border-radius:14px !important;}
.single-content figcaption,.entry-content figcaption,.wp-caption-text{max-width:760px !important;font-size:12px !important;line-height:1.45 !important;margin-top:8px !important;color:var(--np-muted) !important;}
.single-inline-media{max-width:760px !important;margin:28px 0 30px !important;}
.related-posts{max-width:1040px !important;margin-top:34px !important;}
.sidebar-rail-single{width:280px !important;align-self:start !important;position:sticky !important;top:126px !important;}
}
@media (min-width: 981px) and (max-width: 1180px){
.single-layout{grid-template-columns:minmax(0,700px) 250px !important;gap:28px !important;}
.single-primary,.single-article,.single-header,.single-content,.entry-content,.single-hero,.single-content img,.entry-content img{max-width:700px !important;}
.single-title{max-width:660px !important;font-size:46px !important;}
.single-standfirst{max-width:660px !important;font-size:17px !important;}
.single-content>p,.entry-content>p{max-width:670px !important;font-size:16px !important;}
.sidebar-rail-single{width:250px !important;}
}


/* v3.9.7 single desktop rollback to lighter refinement */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns:minmax(0, 860px) 240px !important;
    gap:28px !important;
    align-items:start !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content,
  .single-hero{
    max-width:860px !important;
  }

  .single-header{
    margin-bottom:16px !important;
  }

  .single-title{
    max-width:820px !important;
    font-size:46px !important;
    line-height:1.04 !important;
    letter-spacing:-.025em !important;
    margin:0 0 10px !important;
    text-wrap:balance;
  }

  .single-standfirst{
    max-width:820px !important;
    font-size:16px !important;
    line-height:1.5 !important;
    margin:0 0 16px !important;
  }

  .single-hero{
    margin:0 0 10px !important;
  }

  .single-hero img,
  .single-content img,
  .entry-content img,
  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    max-width:860px !important;
  }

  .single-content>p,
  .entry-content>p{
    max-width:820px !important;
    font-size:16px !important;
    line-height:1.78 !important;
    margin:0 0 20px !important;
  }

  .single-inline-media{
    max-width:860px !important;
    margin:26px 0 28px !important;
  }

  .sidebar-rail-single{
    width:240px !important;
    position:sticky !important;
    top:126px !important;
    align-self:start !important;
  }

  .related-posts{
    max-width:1100px !important;
    margin-top:30px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns:minmax(0, 760px) 220px !important;
    gap:24px !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content,
  .single-hero{
    max-width:760px !important;
  }

  .single-title{
    max-width:720px !important;
    font-size:42px !important;
  }

  .single-standfirst{
    max-width:720px !important;
    font-size:16px !important;
  }

  .single-content>p,
  .entry-content>p{
    max-width:720px !important;
    font-size:15px !important;
  }

  .sidebar-rail-single{
    width:220px !important;
  }
}


/* v3.9.8 single desktop editorial rebalance */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 790px) 250px !important;
    gap: 30px !important;
    align-items: start !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content{
    max-width: 790px !important;
  }

  .single-header{
    margin-bottom: 14px !important;
  }

  .single-kicker{
    margin-bottom: 10px !important;
  }

  .single-title{
    max-width: 690px !important;
    font-size: 40px !important;
    line-height: 1.06 !important;
    letter-spacing: -.02em !important;
    margin: 0 0 10px !important;
    text-wrap: balance;
  }

  .single-standfirst{
    max-width: 690px !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    margin: 0 0 14px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 690px !important;
    margin: 0 0 8px !important;
  }

  .single-hero img{
    width: 100% !important;
    max-width: 690px !important;
    height: auto !important;
    border-radius: 14px !important;
  }

  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    max-width: 690px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: var(--np-muted) !important;
  }

  .single-meta-row{
    max-width: 690px !important;
    margin: 10px 0 22px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 690px !important;
    font-size: 15px !important;
    line-height: 1.78 !important;
    margin: 0 0 18px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    max-width: 690px !important;
    margin: 24px 0 8px !important;
  }

  .single-content img,
  .entry-content img{
    max-width: 690px !important;
    height: auto !important;
    border-radius: 14px !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    max-width: 690px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  .single-inline-media{
    max-width: 690px !important;
    margin: 24px 0 28px !important;
  }

  .related-posts{
    max-width: 980px !important;
    margin-top: 28px !important;
  }

  .sidebar-rail-single{
    width: 250px !important;
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 730px) 220px !important;
    gap: 24px !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content{
    max-width: 730px !important;
  }

  .single-title{
    max-width: 640px !important;
    font-size: 36px !important;
  }

  .single-standfirst,
  .single-hero,
  .single-hero figure,
  .single-content > p,
  .entry-content > p,
  .single-content figure,
  .entry-content figure,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 640px !important;
  }

  .sidebar-rail-single{
    width: 220px !important;
  }
}


/* v3.9.9 single desktop professional scale rebalance only */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 920px) 220px !important;
    gap: 34px !important;
    align-items: start !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content{
    max-width: 920px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 820px !important;
    margin-bottom: 18px !important;
  }

  .single-kicker{
    margin-bottom: 12px !important;
  }

  .single-title{
    max-width: 760px !important;
    font-size: 50px !important;
    line-height: 1.04 !important;
    letter-spacing: -.028em !important;
    margin: 0 0 12px !important;
    text-wrap: balance;
  }

  .single-standfirst{
    max-width: 760px !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
    margin: 0 0 18px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 820px !important;
    width: 100% !important;
    margin: 0 0 8px !important;
  }

  .single-hero img{
    width: 100% !important;
    max-width: 820px !important;
    height: auto !important;
    border-radius: 14px !important;
    object-fit: cover !important;
  }

  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    max-width: 820px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: var(--np-muted) !important;
  }

  .single-meta-row{
    max-width: 820px !important;
    margin: 12px 0 24px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 760px !important;
    font-size: 16px !important;
    line-height: 1.82 !important;
    margin: 0 0 20px !important;
  }

  .single-content h2,
  .entry-content h2{
    max-width: 760px !important;
    font-size: 28px !important;
    line-height: 1.15 !important;
    margin: 34px 0 14px !important;
  }

  .single-content h3,
  .entry-content h3{
    max-width: 760px !important;
    font-size: 22px !important;
    line-height: 1.18 !important;
    margin: 28px 0 12px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    max-width: 760px !important;
    width: 100% !important;
    margin: 28px 0 8px !important;
  }

  .single-content img,
  .entry-content img{
    width: 100% !important;
    max-width: 760px !important;
    height: auto !important;
    border-radius: 14px !important;
    object-fit: cover !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    max-width: 760px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: var(--np-muted) !important;
  }

  .single-inline-media{
    max-width: 760px !important;
    margin: 28px 0 30px !important;
  }

  .sidebar-rail-single{
    width: 220px !important;
    max-width: 220px !important;
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
  }

  .sidebar-rail-single .section-heading,
  .sidebar-rail-single .section-kicker{
    margin-bottom: 12px !important;
  }

  .related-posts{
    max-width: 1040px !important;
    margin-top: 34px !important;
  }

  .related-grid{
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 18px !important;
  }

  .related-card{
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  .related-card a img{
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 20px !important;
    line-height: 1.08 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 820px) 210px !important;
    gap: 26px !important;
  }

  .single-primary,
  .single-article,
  .single-header,
  .single-content,
  .entry-content{
    max-width: 820px !important;
  }

  .single-header{
    max-width: 740px !important;
  }

  .single-title{
    max-width: 700px !important;
    font-size: 44px !important;
  }

  .single-standfirst,
  .single-meta-row,
  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 740px !important;
  }

  .single-hero img{
    max-width: 740px !important;
  }

  .single-content > p,
  .entry-content > p,
  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 700px !important;
  }

  .sidebar-rail-single{
    width: 210px !important;
    max-width: 210px !important;
  }
}


/* v4.0.0 single desktop professional refinement only */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 860px) 260px !important;
    gap: 44px !important;
    align-items: start !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 860px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 760px !important;
    width: 100% !important;
    margin-bottom: 18px !important;
  }

  .single-kicker{
    margin-bottom: 12px !important;
  }

  .single-title{
    max-width: 720px !important;
    font-size: 42px !important;
    line-height: 1.07 !important;
    letter-spacing: -.022em !important;
    margin: 0 0 12px !important;
    text-wrap: balance;
  }

  .single-standfirst{
    max-width: 720px !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
    margin: 0 0 18px !important;
    color: var(--np-muted) !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 760px !important;
    width: 100% !important;
    margin: 0 0 8px !important;
  }

  .single-hero img{
    width: 100% !important;
    max-width: 760px !important;
    height: auto !important;
    border-radius: 16px !important;
    object-fit: cover !important;
  }

  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    max-width: 760px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.42 !important;
    color: var(--np-muted) !important;
  }

  .single-meta-row{
    max-width: 760px !important;
    margin: 12px 0 24px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 720px !important;
    font-size: 16px !important;
    line-height: 1.82 !important;
    margin: 0 0 20px !important;
  }

  .single-content h2,
  .entry-content h2{
    max-width: 720px !important;
    font-size: 27px !important;
    line-height: 1.16 !important;
    margin: 34px 0 14px !important;
  }

  .single-content h3,
  .entry-content h3{
    max-width: 720px !important;
    font-size: 22px !important;
    line-height: 1.18 !important;
    margin: 28px 0 12px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    max-width: 720px !important;
    width: 100% !important;
    margin: 28px 0 8px !important;
  }

  .single-content img,
  .entry-content img{
    width: 100% !important;
    max-width: 720px !important;
    height: auto !important;
    border-radius: 14px !important;
    object-fit: cover !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    max-width: 720px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.42 !important;
    color: var(--np-muted) !important;
  }

  .single-inline-media{
    max-width: 720px !important;
    margin: 28px 0 30px !important;
  }

  .sidebar-rail-single{
    width: 260px !important;
    max-width: 260px !important;
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
  }

  .sidebar-rail-single .section-heading{
    margin-bottom: 14px !important;
    padding-bottom: 12px !important;
  }

  .sidebar-rail-single .section-kicker{
    font-size: 12px !important;
    letter-spacing: .08em !important;
  }

  .sidebar-rail-single .news-list,
  .sidebar-rail-single .latest-list,
  .sidebar-rail-single ul{
    gap: 12px !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid var(--np-line) !important;
  }

  .sidebar-rail-single .news-list li:last-child,
  .sidebar-rail-single .latest-list li:last-child,
  .sidebar-rail-single ul li:last-child{
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .sidebar-rail-single img{
    border-radius: 8px !important;
  }

  .sidebar-rail-single h3,
  .sidebar-rail-single h4,
  .sidebar-rail-single .story-title,
  .sidebar-rail-single a{
    line-height: 1.28 !important;
  }

  .related-posts{
    max-width: 1060px !important;
    margin-top: 34px !important;
  }

  .related-posts .section-heading,
  .related-posts .section-kicker{
    margin-bottom: 14px !important;
  }

  .related-grid{
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 18px !important;
  }

  .related-card{
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: none !important;
  }

  .related-card a img{
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 19px !important;
    line-height: 1.12 !important;
  }

  .related-card p{
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 800px) 230px !important;
    gap: 32px !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 800px !important;
  }

  .single-header{
    max-width: 710px !important;
  }

  .single-title{
    max-width: 670px !important;
    font-size: 38px !important;
  }

  .single-standfirst,
  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 710px !important;
  }

  .single-hero img{
    max-width: 710px !important;
  }

  .single-content > p,
  .entry-content > p,
  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 670px !important;
  }

  .sidebar-rail-single{
    width: 230px !important;
    max-width: 230px !important;
  }
}


/* v4.0.1 single desktop: stronger editorial presence without touching home/mobile */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 930px) 280px !important;
    gap: 48px !important;
    align-items: start !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 930px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 860px !important;
    width: 100% !important;
    margin-bottom: 20px !important;
  }

  .single-kicker{
    margin-bottom: 12px !important;
  }

  .single-title{
    max-width: 820px !important;
    font-size: 44px !important;
    line-height: 1.06 !important;
    letter-spacing: -.022em !important;
    margin: 0 0 12px !important;
    text-wrap: balance;
  }

  .single-standfirst{
    max-width: 820px !important;
    font-size: 17px !important;
    line-height: 1.58 !important;
    margin: 0 0 18px !important;
    color: var(--np-muted) !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 860px !important;
    width: 100% !important;
    margin: 0 0 8px !important;
  }

  .single-hero img{
    width: 100% !important;
    max-width: 860px !important;
    height: auto !important;
    border-radius: 16px !important;
    object-fit: cover !important;
  }

  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    max-width: 860px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.42 !important;
    color: var(--np-muted) !important;
  }

  .single-meta-row{
    max-width: 860px !important;
    margin: 12px 0 24px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 780px !important;
    font-size: 17px !important;
    line-height: 1.86 !important;
    margin: 0 0 22px !important;
  }

  .single-content h2,
  .entry-content h2{
    max-width: 780px !important;
    font-size: 29px !important;
    line-height: 1.16 !important;
    margin: 36px 0 14px !important;
  }

  .single-content h3,
  .entry-content h3{
    max-width: 780px !important;
    font-size: 23px !important;
    line-height: 1.18 !important;
    margin: 30px 0 12px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    max-width: 780px !important;
    width: 100% !important;
    margin: 30px 0 8px !important;
  }

  .single-content img,
  .entry-content img{
    width: 100% !important;
    max-width: 780px !important;
    height: auto !important;
    border-radius: 14px !important;
    object-fit: cover !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    max-width: 780px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.42 !important;
    color: var(--np-muted) !important;
  }

  .single-inline-media{
    max-width: 780px !important;
    margin: 30px 0 32px !important;
  }

  .sidebar-rail-single{
    width: 280px !important;
    max-width: 280px !important;
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
    padding-top: 4px !important;
  }

  .sidebar-rail-single .section-heading{
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
  }

  .sidebar-rail-single .section-kicker{
    font-size: 13px !important;
    letter-spacing: .06em !important;
  }

  .sidebar-rail-single .news-list,
  .sidebar-rail-single .latest-list,
  .sidebar-rail-single ul{
    gap: 14px !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    margin-bottom: 12px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--np-line) !important;
  }

  .sidebar-rail-single img{
    border-radius: 8px !important;
  }

  .sidebar-rail-single h3,
  .sidebar-rail-single h4,
  .sidebar-rail-single .story-title,
  .sidebar-rail-single a{
    line-height: 1.3 !important;
    font-size: 14px !important;
  }

  .related-posts{
    max-width: 1100px !important;
    margin-top: 38px !important;
  }

  .related-grid{
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 20px !important;
  }

  .related-card{
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  .related-card a img{
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 20px !important;
    line-height: 1.12 !important;
  }

  .related-card p{
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 850px) 240px !important;
    gap: 34px !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 850px !important;
  }

  .single-header{
    max-width: 780px !important;
  }

  .single-title{
    max-width: 740px !important;
    font-size: 40px !important;
  }

  .single-standfirst,
  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 780px !important;
  }

  .single-hero img{
    max-width: 780px !important;
  }

  .single-content > p,
  .entry-content > p,
  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 720px !important;
  }

  .sidebar-rail-single{
    width: 240px !important;
    max-width: 240px !important;
  }
}


/* v4.0.2 single desktop title width refinement only */
@media (min-width: 981px){
  .single-header{
    max-width: 860px !important;
  }

  .single-title{
    max-width: 840px !important;
    font-size: 40px !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
    text-wrap: balance;
  }

  .single-standfirst{
    max-width: 820px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-header{
    max-width: 800px !important;
  }

  .single-title{
    max-width: 760px !important;
    font-size: 37px !important;
  }

  .single-standfirst{
    max-width: 740px !important;
  }
}


/* v4.0.3 single desktop title refinement only */
@media (min-width: 981px){
  .single-title{
    max-width: 900px !important;
    font-size: 37px !important;
    line-height: 1.1 !important;
    letter-spacing: -.018em !important;
    font-weight: 700 !important;
  }

  .single-header{
    max-width: 900px !important;
  }

  .single-standfirst{
    max-width: 860px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-title{
    max-width: 820px !important;
    font-size: 34px !important;
    line-height: 1.1 !important;
  }

  .single-header{
    max-width: 820px !important;
  }

  .single-standfirst{
    max-width: 780px !important;
  }
}


/* v4.0.4 single desktop editorial polish only */
@media (min-width: 981px){
  .single-title{
    line-height: 1.07 !important;
    letter-spacing: -.016em !important;
    margin-bottom: 14px !important;
  }

  .single-standfirst{
    font-size: 17px !important;
    line-height: 1.62 !important;
    margin-bottom: 20px !important;
  }

  .single-meta-row{
    margin: 12px 0 26px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 760px !important;
    font-size: 17px !important;
    line-height: 1.92 !important;
    margin: 0 0 24px !important;
    color: var(--np-text) !important;
  }

  .single-content h2,
  .entry-content h2{
    max-width: 760px !important;
    font-size: 30px !important;
    line-height: 1.16 !important;
    margin: 38px 0 16px !important;
  }

  .single-content h3,
  .entry-content h3{
    max-width: 760px !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin: 30px 0 14px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    margin: 32px 0 10px !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    margin-top: 7px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .sidebar-rail-single{
    padding-top: 8px !important;
  }

  .sidebar-rail-single .section-heading{
    margin-bottom: 16px !important;
    padding-bottom: 10px !important;
  }

  .sidebar-rail-single .section-heading h2,
  .sidebar-rail-single .section-heading h3,
  .sidebar-rail-single .section-kicker{
    font-size: 19px !important;
    line-height: 1.1 !important;
    letter-spacing: -.01em !important;
  }

  .sidebar-rail-single .news-list,
  .sidebar-rail-single .latest-list,
  .sidebar-rail-single ul{
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    display: grid !important;
    grid-template-columns: 74px minmax(0,1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid var(--np-line) !important;
  }

  .sidebar-rail-single .news-list li:last-child,
  .sidebar-rail-single .latest-list li:last-child,
  .sidebar-rail-single ul li:last-child{
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
  }

  .sidebar-rail-single img{
    width: 74px !important;
    height: 74px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
  }

  .sidebar-rail-single .news-list a,
  .sidebar-rail-single .latest-list a,
  .sidebar-rail-single li a{
    font-size: 14px !important;
    line-height: 1.34 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }

  .related-posts{
    margin-top: 40px !important;
  }

  .related-posts .section-heading,
  .related-posts .section-kicker{
    margin-bottom: 16px !important;
  }

  .related-grid{
    gap: 22px !important;
  }

  .related-card{
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 0 rgba(20,20,20,.03) !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 21px !important;
    line-height: 1.12 !important;
    margin-bottom: 8px !important;
  }

  .related-card p{
    font-size: 14px !important;
    line-height: 1.54 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-content > p,
  .entry-content > p{
    font-size: 16px !important;
    line-height: 1.88 !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    grid-template-columns: 66px minmax(0,1fr) !important;
    gap: 10px !important;
  }

  .sidebar-rail-single img{
    width: 66px !important;
    height: 66px !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 19px !important;
  }
}


/* v4.0.5 single desktop finishing pass only */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 900px) 270px !important;
    gap: 46px !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 900px !important;
  }

  .single-header{
    max-width: 820px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 820px !important;
  }

  .single-hero img{
    max-width: 820px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 780px !important;
    font-size: 17px !important;
    line-height: 1.9 !important;
  }

  .single-meta-row{
    gap: 8px !important;
  }

  .single-meta-row .meta-pill,
  .single-meta-row .chip,
  .single-meta-row .post-meta-item,
  .single-meta-row .single-meta-item{
    font-size: 12px !important;
  }

  .single-meta-row,
  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption,
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    color: rgba(41,46,57,.74) !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption,
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    font-size: 12px !important;
    line-height: 1.46 !important;
  }

  .sidebar-rail-single{
    width: 270px !important;
    max-width: 270px !important;
  }

  .sidebar-rail-single .section-heading,
  .sidebar-rail-single .section-kicker{
    margin-bottom: 18px !important;
  }

  .sidebar-rail-single .section-heading h2,
  .sidebar-rail-single .section-heading h3,
  .sidebar-rail-single .section-kicker{
    font-size: 20px !important;
    line-height: 1.08 !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    grid-template-columns: 78px minmax(0,1fr) !important;
    gap: 13px !important;
    padding-bottom: 15px !important;
  }

  .sidebar-rail-single img{
    width: 78px !important;
    height: 78px !important;
  }

  .sidebar-rail-single .news-list a,
  .sidebar-rail-single .latest-list a,
  .sidebar-rail-single li a{
    font-size: 14px !important;
    line-height: 1.36 !important;
  }

  .related-posts{
    max-width: 1120px !important;
    margin-top: 42px !important;
  }

  .related-grid{
    gap: 24px !important;
  }

  .related-card{
    border-radius: 16px !important;
  }

  .related-card .card-body,
  .related-card .story-body,
  .related-card .entry-card-body{
    padding: 16px 16px 18px !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 20px !important;
    line-height: 1.14 !important;
    margin-bottom: 9px !important;
  }

  .related-card p{
    font-size: 14px !important;
    line-height: 1.56 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 840px) 235px !important;
    gap: 34px !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 840px !important;
  }

  .single-header,
  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 760px !important;
  }

  .single-hero img{
    max-width: 760px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 720px !important;
    font-size: 16px !important;
  }

  .sidebar-rail-single{
    width: 235px !important;
    max-width: 235px !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    grid-template-columns: 70px minmax(0,1fr) !important;
  }

  .sidebar-rail-single img{
    width: 70px !important;
    height: 70px !important;
  }
}


/* v4.0.6 single desktop: stronger separation and visible editorial scale */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 940px) 290px !important;
    gap: 64px !important;
    align-items: start !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 940px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 860px !important;
    margin-bottom: 22px !important;
  }

  .single-title{
    max-width: 840px !important;
    font-size: 38px !important;
    line-height: 1.1 !important;
    margin-bottom: 16px !important;
  }

  .single-standfirst{
    max-width: 820px !important;
    font-size: 18px !important;
    line-height: 1.66 !important;
    margin-bottom: 22px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 860px !important;
  }

  .single-hero img{
    max-width: 860px !important;
  }

  .single-meta-row{
    margin: 14px 0 28px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 820px !important;
    font-size: 18px !important;
    line-height: 1.95 !important;
    margin: 0 0 26px !important;
  }

  .single-content h2,
  .entry-content h2{
    max-width: 820px !important;
    font-size: 32px !important;
    line-height: 1.16 !important;
    margin: 42px 0 18px !important;
  }

  .single-content h3,
  .entry-content h3{
    max-width: 820px !important;
    font-size: 25px !important;
    line-height: 1.2 !important;
    margin: 34px 0 14px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 820px !important;
  }

  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image{
    margin: 34px 0 10px !important;
  }

  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption,
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: rgba(41,46,57,.76) !important;
  }

  .sidebar-rail-single{
    width: 290px !important;
    max-width: 290px !important;
    padding-top: 10px !important;
  }

  .sidebar-rail-single .section-heading,
  .sidebar-rail-single .section-kicker{
    margin-bottom: 20px !important;
  }

  .sidebar-rail-single .section-heading h2,
  .sidebar-rail-single .section-heading h3,
  .sidebar-rail-single .section-kicker{
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .sidebar-rail-single .news-list li,
  .sidebar-rail-single .latest-list li,
  .sidebar-rail-single ul li{
    grid-template-columns: 84px minmax(0,1fr) !important;
    gap: 14px !important;
    padding-bottom: 16px !important;
    margin-bottom: 0 !important;
  }

  .sidebar-rail-single img{
    width: 84px !important;
    height: 84px !important;
    border-radius: 10px !important;
  }

  .sidebar-rail-single .news-list a,
  .sidebar-rail-single .latest-list a,
  .sidebar-rail-single li a{
    font-size: 15px !important;
    line-height: 1.38 !important;
  }

  .related-posts{
    max-width: 1140px !important;
    margin-top: 46px !important;
  }

  .related-grid{
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 26px !important;
  }

  .related-card{
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  .related-card a img{
    aspect-ratio: 16 / 9 !important;
  }

  .related-card .card-body,
  .related-card .story-body,
  .related-card .entry-card-body{
    padding: 18px !important;
  }

  .related-card h3,
  .related-card h2{
    font-size: 22px !important;
    line-height: 1.14 !important;
  }

  .related-card p{
    font-size: 14px !important;
    line-height: 1.58 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 860px) 245px !important;
    gap: 42px !important;
  }

  .single-primary,
  .single-article,
  .single-content,
  .entry-content{
    max-width: 860px !important;
  }

  .single-header,
  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 780px !important;
  }

  .single-title{
    max-width: 760px !important;
    font-size: 36px !important;
  }

  .single-standfirst{
    max-width: 760px !important;
    font-size: 17px !important;
  }

  .single-content > p,
  .entry-content > p,
  .single-content figure,
  .entry-content figure,
  .single-content .wp-block-image,
  .entry-content .wp-block-image,
  .single-content img,
  .entry-content img,
  .single-inline-media{
    max-width: 760px !important;
    font-size: 17px !important;
  }

  .sidebar-rail-single{
    width: 245px !important;
    max-width: 245px !important;
  }
}


/* v4.0.7 single editorial components: blockquote, galleries, captions, embeds */
.single-content blockquote,
.entry-content blockquote{
  position: relative;
  max-width: 760px;
  margin: 32px 0;
  padding: 22px 24px 22px 24px;
  border-left: 4px solid var(--np-primary);
  background: linear-gradient(180deg, rgba(66,66,144,.05) 0%, rgba(66,66,144,.025) 100%);
  border-radius: 14px;
  color: #20242d;
}

.single-content blockquote::before,
.entry-content blockquote::before{
  content: "“";
  position: absolute;
  top: 10px;
  left: 14px;
  font-size: 42px;
  line-height: 1;
  color: rgba(66,66,144,.22);
  font-family: Georgia, serif;
}

.single-content blockquote p,
.entry-content blockquote p{
  margin: 0 0 10px;
  font-size: 1.04em;
  line-height: 1.8;
}

.single-content blockquote cite,
.entry-content blockquote cite{
  display: block;
  margin-top: 8px;
  font-style: normal;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--np-primary);
}

.single-content .blocks-gallery-grid,
.entry-content .blocks-gallery-grid,
.single-content .wp-block-gallery,
.entry-content .wp-block-gallery{
  max-width: 820px;
  margin: 30px 0 14px !important;
  gap: 14px !important;
}

.single-content .wp-block-gallery.has-nested-images,
.entry-content .wp-block-gallery.has-nested-images{
  gap: 14px !important;
}

.single-content .wp-block-gallery .blocks-gallery-item img,
.entry-content .wp-block-gallery .blocks-gallery-item img,
.single-content .wp-block-gallery .wp-block-image img,
.entry-content .wp-block-gallery .wp-block-image img{
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 12px;
}

.single-content .blocks-gallery-caption,
.entry-content .blocks-gallery-caption,
.single-content .wp-block-gallery .blocks-gallery-caption,
.entry-content .wp-block-gallery .blocks-gallery-caption{
  margin-top: 10px !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: rgba(41,46,57,.76) !important;
  text-align: left;
}

.single-content .gallery,
.entry-content .gallery{
  display: grid;
  gap: 14px;
  margin: 30px 0 14px;
}

.single-content .gallery img,
.entry-content .gallery img{
  width: 100%;
  height: auto;
  border-radius: 12px;
}

.single-content .gallery-caption,
.entry-content .gallery-caption{
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(41,46,57,.76);
}

.single-content iframe,
.entry-content iframe,
.single-content video,
.entry-content video{
  width: 100%;
  max-width: 820px;
  border-radius: 14px;
}

.single-content .wp-block-embed,
.entry-content .wp-block-embed{
  max-width: 820px;
  margin: 32px 0 18px;
}

.single-content .wp-block-embed__wrapper,
.entry-content .wp-block-embed__wrapper{
  border-radius: 14px;
  overflow: hidden;
}

.single-content hr,
.entry-content hr{
  max-width: 760px;
  border: 0;
  border-top: 1px solid var(--np-line);
  margin: 34px 0;
}

.single-content ul,
.single-content ol,
.entry-content ul,
.entry-content ol{
  max-width: 760px;
  margin-bottom: 22px;
}

.single-content li,
.entry-content li{
  margin-bottom: 8px;
}

.single-content table,
.entry-content table{
  width: 100%;
  max-width: 820px;
  border-collapse: collapse;
  margin: 28px 0 18px;
  font-size: 15px;
}

.single-content table th,
.single-content table td,
.entry-content table th,
.entry-content table td{
  border: 1px solid var(--np-line);
  padding: 10px 12px;
  text-align: left;
}

.single-content table th,
.entry-content table th{
  background: rgba(66,66,144,.05);
  color: var(--np-primary);
}

@media (min-width: 981px){
  .single-title{
    max-width: 900px !important;
    font-size: 36px !important;
    line-height: 1.12 !important;
    letter-spacing: -.015em !important;
  }

  .single-header{
    max-width: 900px !important;
  }

  .single-standfirst{
    max-width: 860px !important;
  }
}

@media (max-width: 980px){
  .single-content blockquote,
  .entry-content blockquote{
    padding: 18px 18px 18px 20px;
    margin: 26px 0;
  }

  .single-content .wp-block-gallery,
  .entry-content .wp-block-gallery,
  .single-content .blocks-gallery-grid,
  .entry-content .blocks-gallery-grid,
  .single-content .gallery,
  .entry-content .gallery{
    gap: 10px !important;
    margin: 24px 0 12px !important;
  }

  .single-content .wp-block-gallery .blocks-gallery-item img,
  .entry-content .wp-block-gallery .blocks-gallery-item img,
  .single-content .wp-block-gallery .wp-block-image img,
  .entry-content .wp-block-gallery .wp-block-image img{
    aspect-ratio: 4 / 3;
  }

  .single-content iframe,
  .entry-content iframe,
  .single-content video,
  .entry-content video,
  .single-content .wp-block-embed,
  .entry-content .wp-block-embed,
  .single-content table,
  .entry-content table{
    max-width: 100%;
  }
}

@media (max-width: 640px){
  .single-content blockquote,
  .entry-content blockquote{
    border-left-width: 3px;
    border-radius: 12px;
    padding: 16px 16px 16px 18px;
  }

  .single-content blockquote::before,
  .entry-content blockquote::before{
    font-size: 34px;
    top: 10px;
    left: 12px;
  }

  .single-content blockquote p,
  .entry-content blockquote p{
    font-size: 1em;
    line-height: 1.72;
  }

  .single-content .blocks-gallery-caption,
  .entry-content .blocks-gallery-caption,
  .single-content .gallery-caption,
  .entry-content .gallery-caption,
  .single-content figcaption,
  .entry-content figcaption,
  .wp-caption-text,
  .wp-element-caption{
    font-size: 11px !important;
    line-height: 1.42 !important;
  }
}


/* v4.0.8 single desktop title fix only */
@media (min-width: 981px){
  .single-header{
    max-width: 960px !important;
  }

  .single-title{
    max-width: 940px !important;
    width: 100% !important;
    font-size: 34px !important;
    line-height: 1.14 !important;
    letter-spacing: -.012em !important;
    font-weight: 700 !important;
    text-wrap: balance !important;
    margin: 0 0 14px !important;
  }

  .single-standfirst{
    max-width: 900px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-header{
    max-width: 860px !important;
  }

  .single-title{
    max-width: 840px !important;
    font-size: 32px !important;
    line-height: 1.14 !important;
  }

  .single-standfirst{
    max-width: 820px !important;
  }
}


/* v4.0.9 single desktop sidebar ads */
.single-sidebar-ad{
  margin-top: 22px;
}

.single-sidebar-ad__image,
.single-sidebar-ad__code,
.single-sidebar-ad__image img{
  display: block;
  width: 100%;
}

.single-sidebar-ad__image img{
  height: auto;
  border-radius: 12px;
}

.single-sidebar-ad__code > *:first-child{
  margin-top: 0 !important;
}

.single-sidebar-ad__code iframe,
.single-sidebar-ad__code img,
.single-sidebar-ad__code ins,
.single-sidebar-ad__code .adsbygoogle{
  max-width: 100% !important;
}

@media (min-width: 981px){
  .sidebar-rail-single .single-sidebar-ad{
    padding-top: 4px;
  }

  .sidebar-rail-single .single-sidebar-ad + .single-sidebar-ad{
    margin-top: 18px;
  }
}

@media (max-width: 980px){
  .sidebar-rail-single .single-sidebar-ad{
    display: none !important;
  }
}


/* v4.1.0 single sidebar ads use real home sidebar slots */
@media (min-width: 981px){
  .sidebar-rail-single .sidebar-media-box{
    margin-top: 22px !important;
  }

  .sidebar-rail-single .sidebar-media-box img,
  .sidebar-rail-single .sidebar-media-slot img{
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
  }

  .sidebar-rail-single .sidebar-media-box iframe,
  .sidebar-rail-single .sidebar-media-box ins,
  .sidebar-rail-single .sidebar-media-box .adsbygoogle{
    max-width: 100% !important;
  }
}


/* v4.1.1 single sidebar ads isolation fix */
@media (min-width: 981px){
  /* Restrict editorial list styling to latest panel only */
  .sidebar-rail-single .single-latest-list{
    display:grid !important;
    gap:14px !important;
  }

  .sidebar-rail-single .single-latest-list .small-post{
    display:grid !important;
    grid-template-columns:84px minmax(0,1fr) !important;
    gap:14px !important;
    align-items:start !important;
    padding:0 0 16px !important;
    margin:0 !important;
    border-bottom:1px solid var(--np-line) !important;
  }

  .sidebar-rail-single .single-latest-list .small-post:last-child{
    border-bottom:0 !important;
    padding-bottom:0 !important;
  }

  .sidebar-rail-single .single-latest-list .small-post-thumb img{
    width:84px !important;
    height:84px !important;
    object-fit:cover !important;
    border-radius:10px !important;
  }

  .sidebar-rail-single .single-latest-list .small-post-copy h4{
    margin:0 !important;
    font-size:15px !important;
    line-height:1.36 !important;
    font-weight:700 !important;
  }

  /* Sidebar ads must behave like independent panels */
  .sidebar-rail-single .sidebar-media-panel{
    display:block !important;
    clear:both !important;
    margin-top:22px !important;
    padding:16px !important;
    border:1px solid var(--np-line) !important;
    background:#fff !important;
    border-radius:14px !important;
    overflow:hidden !important;
  }

  .sidebar-rail-single .sidebar-media-panel *{
    max-width:100% !important;
  }

  .sidebar-rail-single .sidebar-media-panel img{
    width:100% !important;
    height:auto !important;
    display:block !important;
    border-radius:12px !important;
  }

  .sidebar-rail-single .sidebar-media-panel iframe,
  .sidebar-rail-single .sidebar-media-panel ins,
  .sidebar-rail-single .sidebar-media-panel .adsbygoogle{
    width:100% !important;
    max-width:100% !important;
  }
}


/* v4.1.2 single sidebar sticky fix: latest news no longer overlaps ads */
@media (min-width: 981px){
  .sidebar-rail.sidebar-rail-single{
    position: sticky !important;
    top: 126px !important;
    align-self: start !important;
  }

  .sidebar-rail-single .single-latest-panel{
    position: static !important;
    top: auto !important;
  }
}


/* v4.1.3 single sidebar video order aligned with home */
@media (min-width: 981px){
  .sidebar-rail-single .video-panel{
    margin-top: 22px !important;
  }
}

@media (max-width: 980px){
  .sidebar-rail-single .video-panel{
    display: none !important;
  }
}


/* v4.1.4 single desktop final polish */
@media (min-width: 981px){
  .single-header{
    max-width: 980px !important;
  }

  .single-title{
    max-width: 960px !important;
    font-size: 33px !important;
    line-height: 1.16 !important;
    letter-spacing: -.01em !important;
    margin-bottom: 16px !important;
  }

  .single-standfirst{
    max-width: 900px !important;
    font-size: 17px !important;
    line-height: 1.64 !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 800px !important;
    font-size: 17px !important;
    line-height: 1.96 !important;
    margin: 0 0 25px !important;
  }

  .single-latest-title{
    margin-bottom: 18px !important;
  }

  .single-latest-list{
    gap: 16px !important;
  }

  .sidebar-rail-single .video-panel{
    margin-top: 26px !important;
    margin-bottom: 8px !important;
  }

  .sidebar-rail-single .sidebar-media-panel{
    margin-top: 26px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-title{
    max-width: 880px !important;
    font-size: 31px !important;
  }

  .single-standfirst{
    max-width: 840px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 760px !important;
    font-size: 16px !important;
    line-height: 1.92 !important;
  }
}


/* v4.1.5 single desktop top block width fix */
@media (min-width: 981px){
  .single-primary{
    max-width: 980px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 980px !important;
    width: 100% !important;
  }

  .single-title{
    max-width: 980px !important;
    width: 100% !important;
    font-size: 33px !important;
    line-height: 1.16 !important;
    letter-spacing: -.01em !important;
    margin: 0 0 16px !important;
  }

  .single-standfirst{
    max-width: 940px !important;
    width: 100% !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row{
    max-width: 900px !important;
    width: 100% !important;
  }

  .single-hero img{
    max-width: 900px !important;
    width: 100% !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-primary,
  .single-header,
  .single-title{
    max-width: 900px !important;
  }

  .single-standfirst{
    max-width: 860px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-meta-row,
  .single-hero img{
    max-width: 840px !important;
  }
}


/* v4.1.6 single desktop title natural line-break fix */
@media (min-width: 981px){
  .single-header{
    max-width: 1040px !important;
    width: 100% !important;
  }

  .single-title{
    max-width: 1040px !important;
    width: 100% !important;
    font-size: 32px !important;
    line-height: 1.14 !important;
    letter-spacing: -.012em !important;
    text-wrap: unset !important;
    text-wrap-mode: wrap !important;
    text-wrap-style: auto !important;
    margin: 0 0 16px !important;
  }

  .single-standfirst{
    max-width: 980px !important;
    width: 100% !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-header{
    max-width: 920px !important;
  }

  .single-title{
    max-width: 920px !important;
    font-size: 30px !important;
    line-height: 1.14 !important;
    text-wrap: unset !important;
  }

  .single-standfirst{
    max-width: 880px !important;
  }
}


/* v4.1.7 single desktop top hierarchy final */
@media (min-width: 981px){
  .single-layout{
    grid-template-columns: minmax(0, 980px) 300px !important;
    gap: 56px !important;
    align-items: start !important;
  }

  .single-primary{
    max-width: 980px !important;
    width: 100% !important;
  }

  .single-header{
    max-width: 980px !important;
    width: 100% !important;
    margin-bottom: 18px !important;
  }

  .single-title{
    max-width: 980px !important;
    width: 100% !important;
    font-size: 34px !important;
    line-height: 1.13 !important;
    letter-spacing: -.012em !important;
    margin: 0 0 14px !important;
  }

  .single-standfirst{
    max-width: 940px !important;
    width: 100% !important;
    font-size: 17px !important;
    line-height: 1.62 !important;
    margin: 0 0 18px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image{
    max-width: 940px !important;
    width: 100% !important;
    margin: 0 0 8px !important;
  }

  .single-hero img{
    width: 100% !important;
    max-width: 940px !important;
    height: auto !important;
    border-radius: 16px !important;
  }

  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption{
    max-width: 940px !important;
  }

  .single-meta-row{
    max-width: 940px !important;
    margin: 12px 0 28px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 840px !important;
  }

  .sidebar-rail.sidebar-rail-single{
    width: 300px !important;
    max-width: 300px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-layout{
    grid-template-columns: minmax(0, 900px) 260px !important;
    gap: 42px !important;
  }

  .single-primary,
  .single-header,
  .single-title{
    max-width: 900px !important;
  }

  .single-title{
    font-size: 32px !important;
  }

  .single-standfirst{
    max-width: 860px !important;
  }

  .single-hero,
  .single-hero figure,
  .single-hero .wp-caption,
  .single-hero .wp-block-image,
  .single-hero img,
  .single-meta-row{
    max-width: 860px !important;
  }

  .single-content > p,
  .entry-content > p{
    max-width: 780px !important;
  }

  .sidebar-rail.sidebar-rail-single{
    width: 260px !important;
    max-width: 260px !important;
  }
}


/* v4.1.8 single desktop title width and break correction */
@media (min-width: 981px){
  .single-title{
    max-width: 100% !important;
    width: 100% !important;
    font-size: 30px !important;
    line-height: 1.14 !important;
    letter-spacing: -.01em !important;
    margin: 0 0 14px !important;
    text-wrap: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .single-standfirst{
    max-width: 940px !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-title{
    font-size: 28px !important;
    line-height: 1.14 !important;
  }
}


/* v4.1.9 single desktop title reset: more natural newsroom scale */
@media (min-width: 981px){
  .single-title{
    max-width: 880px !important;
    width: 100% !important;
    font-size: 28px !important;
    line-height: 1.18 !important;
    letter-spacing: -.008em !important;
    margin: 0 0 16px !important;
    text-wrap: initial !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .single-standfirst{
    max-width: 860px !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  .single-title{
    max-width: 820px !important;
    font-size: 26px !important;
    line-height: 1.18 !important;
  }

  .single-standfirst{
    max-width: 800px !important;
  }
}


/* v4.2.0 single mobile title fix only */
@media (max-width: 980px){
  .single-title{
    max-width: 100% !important;
    width: 100% !important;
    font-size: 24px !important;
    line-height: 1.14 !important;
    letter-spacing: -.01em !important;
    margin: 0 0 14px !important;
    text-wrap: initial !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .single-header{
    max-width: 100% !important;
    width: 100% !important;
  }

  .single-standfirst{
    max-width: 100% !important;
    width: 100% !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
  }
}

@media (max-width: 640px){
  .single-title{
    font-size: 22px !important;
    line-height: 1.13 !important;
    margin-bottom: 12px !important;
  }

  .single-standfirst{
    font-size: 15px !important;
    line-height: 1.56 !important;
  }
}


/* v4.2.1 single captions editorial refinement */
.single-hero figcaption,
.single-hero .wp-caption-text,
.single-hero .wp-element-caption,
.single-content figcaption,
.entry-content figcaption,
.single-content .wp-caption-text,
.entry-content .wp-caption-text,
.single-content .wp-element-caption,
.entry-content .wp-element-caption,
.single-content .blocks-gallery-caption,
.entry-content .blocks-gallery-caption,
.single-content .gallery-caption,
.entry-content .gallery-caption{
  display: block !important;
  width: 100% !important;
  margin-top: 8px !important;
  padding-left: 2px !important;
  color: rgba(41,46,57,.82) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  border-left: 3px solid rgba(66,66,144,.22) !important;
  padding-left: 10px !important;
}

@media (min-width: 981px){
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption,
  .single-content figcaption,
  .entry-content figcaption,
  .single-content .wp-caption-text,
  .entry-content .wp-caption-text,
  .single-content .wp-element-caption,
  .entry-content .wp-element-caption,
  .single-content .blocks-gallery-caption,
  .entry-content .blocks-gallery-caption,
  .single-content .gallery-caption,
  .entry-content .gallery-caption{
    font-size: 12px !important;
    line-height: 1.55 !important;
    margin-bottom: 2px !important;
  }
}

@media (max-width: 980px){
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption,
  .single-content figcaption,
  .entry-content figcaption,
  .single-content .wp-caption-text,
  .entry-content .wp-caption-text,
  .single-content .wp-element-caption,
  .entry-content .wp-element-caption,
  .single-content .blocks-gallery-caption,
  .entry-content .blocks-gallery-caption,
  .single-content .gallery-caption,
  .entry-content .gallery-caption{
    font-size: 11px !important;
    line-height: 1.5 !important;
    margin-top: 7px !important;
    padding-left: 9px !important;
    border-left-width: 2px !important;
  }
}

@media (max-width: 640px){
  .single-hero figcaption,
  .single-hero .wp-caption-text,
  .single-hero .wp-element-caption,
  .single-content figcaption,
  .entry-content figcaption,
  .single-content .wp-caption-text,
  .entry-content .wp-caption-text,
  .single-content .wp-element-caption,
  .entry-content .wp-element-caption,
  .single-content .blocks-gallery-caption,
  .entry-content .blocks-gallery-caption,
  .single-content .gallery-caption,
  .entry-content .gallery-caption{
    font-size: 10.5px !important;
    line-height: 1.48 !important;
  }
}


/* v4.2.2 single meta order refinement */
.single-meta-row--top{
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.single-meta-main,
.single-meta-share{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.single-meta-share{
  justify-content: flex-end;
}

.single-meta-row--top .single-share-label{
  margin-right: 2px;
}

@media (min-width: 981px){
  .single-meta-row--top{
    max-width: 940px !important;
    margin: 0 0 18px !important;
  }

  .single-meta-row--top .meta-pill{
    padding: 8px 12px !important;
    font-size: 12px !important;
  }

  .single-meta-row--top .share-buttons a,
  .single-meta-row--top .single-share a,
  .single-meta-row--top .np-share a{
    width: 32px !important;
    height: 32px !important;
  }
}

@media (max-width: 980px){
  .single-meta-row--top{
    align-items: flex-start;
    gap: 12px;
    margin: 0 0 14px !important;
  }

  .single-meta-main{
    gap: 8px;
  }

  .single-meta-share{
    gap: 8px;
  }
}

@media (max-width: 640px){
  .single-meta-row--top{
    flex-direction: column;
    align-items: flex-start;
  }

  .single-meta-main,
  .single-meta-share{
    width: 100%;
  }

  .single-meta-share{
    justify-content: flex-start;
  }

  .single-meta-row--top .meta-pill{
    font-size: 11px !important;
    padding: 7px 10px !important;
  }
}


/* v4.2.3 mobile share label hidden, icons only */
@media (max-width: 640px){
  .single-meta-row--top .single-share-label{
    display: none !important;
  }

  .single-meta-share{
    gap: 6px !important;
  }
}


/* v4.2.4 mobile meta/share refinement */
@media (max-width: 640px){
  .single-meta-row--top{
    gap: 14px !important;
    margin: 0 0 18px !important;
  }

  .single-meta-main{
    width: 100% !important;
    gap: 8px !important;
  }

  .single-meta-share{
    width: 100% !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    margin-top: 2px !important;
  }

  .single-meta-row--top .share-buttons a,
  .single-meta-row--top .single-share a,
  .single-meta-row--top .np-share a{
    width: 34px !important;
    height: 34px !important;
  }

  .single-hero{
    margin-top: 4px !important;
  }
}


/* v4.2.5 mobile share moved below caption, desktop preserved */
.single-meta-share--mobile{
  display: none;
}

@media (min-width: 641px){
  .single-meta-share--desktop{
    display: flex !important;
  }
}

@media (max-width: 640px){
  .single-meta-share--desktop{
    display: none !important;
  }

  .single-meta-share--mobile{
    display: flex !important;
    align-items: center;
    gap: 8px !important;
    flex-wrap: wrap;
    margin: 10px 0 18px !important;
    justify-content: flex-start !important;
  }

  .single-meta-share--mobile .single-share-label{
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    color: var(--np-primary) !important;
    margin-right: 4px !important;
  }

  .single-meta-share--mobile .share-buttons a,
  .single-meta-share--mobile .single-share a,
  .single-meta-share--mobile .np-share a{
    width: 34px !important;
    height: 34px !important;
  }

  .single-meta-row--top{
    margin: 0 0 12px !important;
  }

  .single-hero{
    margin-top: 0 !important;
  }
}


/* v4.2.6 mobile share alignment polish */
@media (max-width: 640px){
  .single-meta-share--mobile{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
    margin: 8px 0 18px !important;
  }

  .single-meta-share--mobile .single-share-label{
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 6px 0 0 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(66,66,144,.88) !important;
    line-height: 1 !important;
  }

  .single-meta-share--mobile .share-buttons,
  .single-meta-share--mobile .single-share,
  .single-meta-share--mobile .np-share{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
  }

  .single-meta-share--mobile .share-buttons a,
  .single-meta-share--mobile .single-share a,
  .single-meta-share--mobile .np-share a{
    width: 32px !important;
    height: 32px !important;
  }
}


/* v4.2.7 share controls aligned to theme color system */
.single-meta-share--mobile .single-share-label,
.single-meta-share--desktop .single-share-label{
  color: var(--np-primary) !important;
}

.single-meta-share--mobile .share-buttons a,
.single-meta-share--mobile .single-share a,
.single-meta-share--mobile .np-share a,
.single-meta-share--desktop .share-buttons a,
.single-meta-share--desktop .single-share a,
.single-meta-share--desktop .np-share a,
.single-meta-row .share-buttons a,
.single-meta-row .single-share a,
.single-meta-row .np-share a{
  border: 1px solid rgba(66,66,144,.22) !important;
  color: var(--np-primary) !important;
  background: rgba(66,66,144,.04) !important;
}

.single-meta-share--mobile .share-buttons a:hover,
.single-meta-share--mobile .single-share a:hover,
.single-meta-share--mobile .np-share a:hover,
.single-meta-share--desktop .share-buttons a:hover,
.single-meta-share--desktop .single-share a:hover,
.single-meta-share--desktop .np-share a:hover,
.single-meta-row .share-buttons a:hover,
.single-meta-row .single-share a:hover,
.single-meta-row .np-share a:hover{
  background: var(--np-primary) !important;
  color: #fff !important;
  border-color: var(--np-primary) !important;
}


/* v4.2.8 editorial gallery refinement for single posts */
.single-content .gallery,
.entry-content .gallery{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px !important;
  max-width: 860px !important;
  margin: 40px 0 22px !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--np-line) !important;
}

.single-content .gallery::before,
.entry-content .gallery::before{
  content: "Galeria de fotos";
  grid-column: 1 / -1;
  display: block;
  margin: 0 0 4px !important;
  color: var(--np-primary);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.single-content .gallery-item,
.entry-content .gallery-item{
  margin: 0 !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.single-content .gallery-icon,
.entry-content .gallery-icon{
  display: block;
  width: 100%;
  margin: 0 !important;
}

.single-content .gallery img,
.entry-content .gallery img{
  width: 100% !important;
  aspect-ratio: 4 / 3;
  object-fit: cover !important;
  border-radius: 14px !important;
  display: block !important;
}

.single-content .gallery-caption,
.entry-content .gallery-caption{
  margin: 8px 0 0 !important;
  padding-left: 10px !important;
  border-left: 2px solid rgba(66,66,144,.18) !important;
  color: rgba(41,46,57,.78) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

.single-content .wp-block-gallery,
.entry-content .wp-block-gallery{
  max-width: 860px !important;
  margin: 40px 0 22px !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--np-line) !important;
}

.single-content .wp-block-gallery.has-nested-images,
.entry-content .wp-block-gallery.has-nested-images{
  gap: 18px !important;
}

.single-content .wp-block-gallery.has-nested-images figure.wp-block-image,
.entry-content .wp-block-gallery.has-nested-images figure.wp-block-image{
  width: calc(50% - 9px) !important;
  margin: 0 !important;
}

.single-content .wp-block-gallery.has-nested-images img,
.entry-content .wp-block-gallery.has-nested-images img{
  width: 100% !important;
  aspect-ratio: 4 / 3;
  object-fit: cover !important;
  border-radius: 14px !important;
}

.single-content .wp-block-gallery.has-nested-images figcaption,
.entry-content .wp-block-gallery.has-nested-images figcaption,
.single-content .blocks-gallery-caption,
.entry-content .blocks-gallery-caption{
  margin-top: 8px !important;
}

@media (max-width: 980px){
  .single-content .gallery,
  .entry-content .gallery,
  .single-content .wp-block-gallery,
  .entry-content .wp-block-gallery{
    max-width: 100% !important;
  }
}

@media (max-width: 640px){
  .single-content .gallery,
  .entry-content .gallery{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin: 30px 0 18px !important;
    padding-top: 10px !important;
  }

  .single-content .gallery::before,
  .entry-content .gallery::before{
    font-size: 12px !important;
    letter-spacing: .1em !important;
    margin-bottom: 2px !important;
  }

  .single-content .gallery img,
  .entry-content .gallery img{
    aspect-ratio: 4 / 3;
    border-radius: 12px !important;
  }

  .single-content .gallery-caption,
  .entry-content .gallery-caption{
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .single-content .wp-block-gallery,
  .entry-content .wp-block-gallery{
    margin: 30px 0 18px !important;
    padding-top: 10px !important;
  }

  .single-content .wp-block-gallery.has-nested-images,
  .entry-content .wp-block-gallery.has-nested-images{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .single-content .wp-block-gallery.has-nested-images figure.wp-block-image,
  .entry-content .wp-block-gallery.has-nested-images figure.wp-block-image{
    width: 100% !important;
  }
}


/* v4.2.9 mobile inline image containment */
@media (max-width: 640px){
  /* Keep hero untouched, constrain only inline content images */
  .single-content > figure,
  .entry-content > figure,
  .single-content > .wp-block-image,
  .entry-content > .wp-block-image,
  .single-content > p > img:only-child,
  .entry-content > p > img:only-child{
    max-width: 100% !important;
  }

  .single-content > figure img,
  .entry-content > figure img,
  .single-content > .wp-block-image img,
  .entry-content > .wp-block-image img,
  .single-content > p > img:only-child,
  .entry-content > p > img:only-child{
    width: 100% !important;
    max-height: 420px !important;
    height: auto !important;
    object-fit: contain !important;
    border-radius: 12px !important;
  }

  .single-content > figure,
  .entry-content > figure,
  .single-content > .wp-block-image,
  .entry-content > .wp-block-image{
    margin: 24px 0 10px !important;
  }

  .single-content > figure.aligncenter,
  .entry-content > figure.aligncenter,
  .single-content > .wp-block-image.aligncenter,
  .entry-content > .wp-block-image.aligncenter{
    display: block !important;
  }

  /* If old WordPress gallery is used on mobile, each image should stay tidy */
  .single-content .gallery img,
  .entry-content .gallery img,
  .single-content .wp-block-gallery img,
  .entry-content .wp-block-gallery img{
    max-height: 360px !important;
    object-fit: cover !important;
  }
}
