/* Heating oil news: /news, /news/YYYY-MM-DD and /news/archive (29-30 Sept 2026, FT-20260929-1735).
   The top (photo masthead, ticker) and the headlines column are the live Sept 2026 design,
   kept on Rhys's word (DECISIONS 29 Sept). Flat broadsheet: no cards, square corners,
   hairline rules. Bricolage Grotesque for display, Open Sans for body (both loaded by header.cfm). */
.nx-page{background:#fff;color:#1a2416;-webkit-font-smoothing:antialiased}
.nx-page *{box-sizing:border-box}
.nx-page a{color:#3c7a2c;text-decoration:none}
.nx-page a:hover{color:#0e3d24}
.nx-page a:focus-visible,.nx-page summary:focus-visible,.nx-page button:focus-visible,.nx-page input:focus-visible{outline:3px solid #5dac46;outline-offset:3px}
.nx-page [hidden]{display:none!important}
.nx-wrap{max-width:1140px;margin:0 auto;padding-left:24px;padding-right:24px}
.nx-disp,.nx-page h1,.nx-page h2,.nx-page h3{font-family:'Bricolage Grotesque','Open Sans',sans-serif}
.nx-kicker{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3c7a2c}
.nx-kicker a{color:inherit}

/* Masthead: full-bleed countryside photo; the scrim is bottom-weighted so the white text reads */
.nx-hero{background-image:linear-gradient(180deg,rgba(14,25,16,.10) 0%,rgba(14,25,16,.18) 55%,rgba(14,25,16,.62) 100%),url('/assets/img/news-hero.jpg');background-position:center,center 45%;background-size:cover,cover;background-repeat:no-repeat}
.nx-mast{padding-top:170px;padding-bottom:34px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.nx-mast .nx-kicker{color:#b9e3c6;margin-bottom:14px}
.nx-page .nx-mast .nx-kicker a{color:#b9e3c6}
.nx-page .nx-mast .nx-kicker a:hover{color:#fff;text-decoration:underline}
.nx-mast-title{margin:0;font-family:'Bricolage Grotesque','Open Sans',sans-serif;font-weight:800;font-size:72px;line-height:.98;letter-spacing:-2px;color:#fff}
.nx-mast-date{text-align:right;padding-bottom:6px;flex-shrink:0}
.nx-mast-date .d{font-size:14px;font-weight:700;color:#fff}
.nx-mast-date .u{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:rgba(255,255,255,.88);margin-top:5px}
.nx-mast-date .u i{width:6px;height:6px;border-radius:50%;background:#5dac46;display:inline-block}

/* Data ticker (as live) */
.nx-tick{border-top:3px solid #0e3d24;border-bottom:1px solid #e7ece3}
.nx-tick-grid{padding-top:18px;padding-bottom:18px;display:grid;grid-template-columns:repeat(var(--nx-cols,3),minmax(0,1fr)) auto;gap:32px}
.nx-tick-cell{display:flex;flex-direction:column;justify-content:space-between}
.nx-tick-label{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b7562;margin-bottom:4px}
.nx-tick-val{font-family:'Bricolage Grotesque','Open Sans',sans-serif;font-weight:700;font-size:27px;letter-spacing:-.5px;color:#1a2416}
.nx-tick-val.down{color:#3c7a2c}
.nx-tick-unit{font-family:'Open Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:0;color:#6b7562}
.nx-tick-cell+.nx-tick-cell{border-left:1px solid #e7ece3;padding-left:32px}
.nx-page a.nx-tick-link{display:flex}
.nx-tick-go{display:flex;align-items:center;min-height:43px;font-size:15px;font-weight:700;color:#3c7a2c;white-space:nowrap}
.nx-tick-link:hover .nx-tick-go{color:#0e3d24;text-decoration:underline;text-underline-offset:3px}

/* Notice on a brief that is not the newest */
.nx-notice{margin:20px 0 0;padding:12px 16px;background:#fbf6e6;border-left:3px solid #c9961a;font-size:14px;line-height:1.6;color:#4a4330}
.nx-notice strong{color:#3d3625}
.nx-notice a{font-weight:700}

/* The brief (left) and the headlines or more briefs (right), as live */
.nx-main{padding-top:48px;padding-bottom:8px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:start}
.nx-col{min-width:0}
.nx-brief-kicker{margin-bottom:14px}
.nx-headline{margin:0 0 14px;font-weight:800;font-size:38px;line-height:1.1;letter-spacing:-1px;color:#1a2416}
.nx-page .nx-headline a{color:inherit}
.nx-page .nx-headline a:hover{color:#3c7a2c}
.nx-summary{margin:0 0 6px;font-family:'Bricolage Grotesque','Open Sans',sans-serif;font-weight:600;font-size:22px;line-height:1.45;letter-spacing:-.3px;color:#2a3524;max-width:62ch}
.nx-section{border-top:1px solid #e7ece3;padding:24px 0 26px;scroll-margin-top:24px}
.nx-section:first-of-type{margin-top:24px}
.nx-section h2{margin:0 0 12px;font-weight:700;font-size:24px;line-height:1.2;letter-spacing:-.4px;color:#1a2416}
.nx-section p{margin:0 0 16px;font-size:15.5px;line-height:1.85;color:#40493b;max-width:68ch}
.nx-section p:last-child{margin-bottom:0}

/* 30-day chart */
.nx-chart{margin:20px 0 0;padding:20px;background:#f3f6ee;border-top:1px solid #dce3d8}
.nx-chart-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:8px}
.nx-chart h3{margin:0;font-size:17px;line-height:1.3;font-weight:700}
.nx-chart-head span{font-size:12px;color:#5a6754}
.nx-chart svg{width:100%;height:auto;display:block;overflow:visible}
.nx-chart text{font:11px 'Open Sans',sans-serif;fill:#4f5c48}
.nx-chart .nx-gridline{stroke:#d5ddce;stroke-width:1}
.nx-chart .nx-line{stroke:#3c7a2c;stroke-width:3;fill:none;stroke-linejoin:round;stroke-linecap:round}
.nx-chart figcaption{margin-top:8px;font-size:12px;line-height:1.6;color:#5a6754}
.nx-chart details{margin-top:4px;font-size:13px;color:#4f5c48}
.nx-chart summary{cursor:pointer;display:list-item;padding:11px 0;font-weight:600;color:#3c7a2c;text-decoration:underline;text-underline-offset:3px}
.nx-chart table{border-collapse:collapse;width:100%;margin-top:4px}
.nx-chart th,.nx-chart td{text-align:left;padding:6px 0;border-bottom:1px solid #dce3d8}

/* Sources, explainer, older/newer, credits */
.nx-sources{border-top:1px solid #e7ece3;padding:18px 0 20px}
.nx-page h2.nx-mini{margin:0 0 6px;font-family:'Open Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5a6754}
.nx-sources p{margin:0;font-size:14px;line-height:1.75;color:#4f5c48}
.nx-page .nx-sources a,.nx-page .nx-archive-intro a,.nx-page .nx-notice a,.nx-page .nx-missing a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.nx-explain{margin:6px 0 30px;padding:22px 24px;background:#f3f6ee;border-left:3px solid #0e3d24}
.nx-explain h2{margin:0 0 10px;font-size:19px;font-weight:700;line-height:1.3}
.nx-explain ul{margin:0;padding-left:18px}
.nx-explain li{margin:0 0 7px;font-size:14.5px;line-height:1.7;color:#40493b}
.nx-explain li:last-child{margin-bottom:0}
.nx-pager{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid #e7ece3;padding:20px 0 26px}
.nx-page .nx-pager a{display:block;font-family:'Bricolage Grotesque','Open Sans',sans-serif;font-size:16px;font-weight:700;line-height:1.35;color:#1a2416}
.nx-page .nx-pager a:hover{color:#3c7a2c}
.nx-pager a span{display:block;margin-bottom:5px;font-family:'Open Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#3c7a2c}
.nx-pager .newer{text-align:right}
.nx-credits{border-top:1px solid #e7ece3;padding-top:16px;font-size:12.5px;line-height:1.7;color:#6b7562}

/* Right column: today's headlines (as live) or more briefs */
.nx-aside{min-width:0}
.nx-aside-title{margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #e7ece3;display:block;font-family:'Open Sans',sans-serif}
.nx-story-top{display:block;margin-bottom:22px}
.nx-story-top .t{font-weight:700;font-size:23px;line-height:1.25;letter-spacing:-.3px;color:#1a2416}
.nx-story{display:block;border-top:1px solid #e7ece3;padding:15px 0 16px}
.nx-story .t{font-size:15px;font-weight:600;line-height:1.45;color:#1a2416}
.nx-story:hover .t,.nx-story-top:hover .t{color:#3c7a2c}
.nx-story .m,.nx-story-top .m{margin-top:5px;font-size:12px;color:#6b7562}
.nx-src{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;color:#1a2416}
.nx-none{border-top:1px solid #e7ece3;padding:15px 0;font-size:14px;color:#6b7562}
.nx-page a.nx-brief-link{display:block;border-top:1px solid #e7ece3;padding:14px 0;color:#1a2416}
.nx-aside-title+a.nx-brief-link{border-top:0;padding-top:0}
.nx-brief-link .d{display:block;margin-bottom:4px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7562}
.nx-brief-link .t{display:block;font-size:15px;font-weight:700;line-height:1.4}
.nx-brief-link:hover .t{color:#3c7a2c}
.nx-brief-latest .d{color:#3c7a2c}
.nx-all{margin:14px 0 0;font-size:14px;font-weight:700}

/* Earlier briefs (under /news) and the archive list */
.nx-earlier{margin-top:40px;border-top:1px solid #e7ece3;background:#f7f9f4;padding:32px 0 36px}
.nx-earlier-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;max-width:880px}
.nx-earlier-foot{margin:14px 0 0;font-size:14px;font-weight:700}
.nx-earlier-head h2{margin:0;font-size:25px;font-weight:700;line-height:1.2}
.nx-earlier-head a{font-size:14px;font-weight:700}
.nx-list{list-style:none;margin:0;padding:0;max-width:880px}
.nx-list li{border-top:1px solid #dce3d8}
.nx-list li:first-child{border-top:0}
.nx-page .nx-list a{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:24px;padding:15px 0;color:#1a2416}
.nx-list time{grid-column:1;grid-row:1/span 2;padding-top:3px;font-size:13px;font-weight:700;color:#6b7562;white-space:nowrap}
.nx-list .t{grid-column:2;font-family:'Bricolage Grotesque','Open Sans',sans-serif;font-size:18px;font-weight:700;line-height:1.35}
.nx-list .s{grid-column:2;margin-top:4px;font-size:14px;line-height:1.6;color:#4f5c48}
.nx-list a:hover .t{color:#3c7a2c}
.nx-archive{padding-top:32px;padding-bottom:52px}
.nx-archive-intro{margin:0 0 6px;max-width:880px;font-size:15.5px;line-height:1.75;color:#40493b}
.nx-month{margin-top:28px;max-width:880px}
.nx-month h2{margin:0;padding-bottom:10px;border-bottom:3px solid #0e3d24;font-size:22px;font-weight:700;line-height:1.2}
.nx-missing{padding-top:40px;padding-bottom:64px}
.nx-missing h1{margin:0 0 12px;font-size:32px;font-weight:800;line-height:1.15}
.nx-missing p{font-size:15.5px;line-height:1.7;color:#40493b}

/* Quote band (as live) */
.nx-band{background:#0e3d24;margin-top:64px}
.nx-earlier+.nx-band{margin-top:0}
.nx-band-inner{padding-top:44px;padding-bottom:44px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.nx-band-title{font-weight:700;font-size:30px;line-height:1.15;letter-spacing:-.5px;color:#fff;text-wrap:balance}
.nx-band-sub{margin-top:6px;font-size:14px;color:#9fd8b4}
.nx-band form{display:flex;align-items:stretch;gap:10px;flex-shrink:0;margin:0}
.nx-band input{background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:0;padding:13px 18px;font:600 15px 'Open Sans',sans-serif;color:#fff;outline:none}
.nx-band input::placeholder{color:rgba(255,255,255,.6)}
.nx-band input[name="postcode"]{min-width:150px}
.nx-band input[name="litres"]{width:110px}
.nx-btn-sage{display:flex;align-items:center;background:#9fd8b4;color:#0e3d24;font-weight:700;font-size:15px;padding:0 26px;border:none;border-radius:0;cursor:pointer;font-family:'Open Sans',sans-serif}
.nx-btn-sage:hover{background:#b4e3c5;color:#0e3d24}

/* Wide screens: the side column follows the reader down a long brief */
@media (min-width:992px) and (min-height:760px){#nx-more{position:sticky;top:24px}}
@media (min-width:992px) and (min-height:940px){#nx-headlines{position:sticky;top:24px}}

/* Tablet and phone: one column, the brief first and then the side column (as live) */
@media (max-width:991px){
  .nx-mast{padding-top:120px;padding-bottom:24px;flex-direction:column;align-items:flex-start;gap:14px}
  .nx-mast-title{font-size:46px;letter-spacing:-1.2px}
  .nx-mast-date{text-align:left;padding-bottom:0}
  .nx-tick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
  .nx-tick-cell+.nx-tick-cell{border-left:none;padding-left:0}
  .nx-tick-val{font-size:23px}
  .nx-tick-label{font-size:11px}
  .nx-tick-go{min-height:37px}
  .nx-tick-link:nth-child(odd){grid-column:1/-1}
  .nx-main{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:36px}
  .nx-headline{font-size:32px}
  .nx-summary{font-size:19px}
  .nx-band{margin-top:48px}
  .nx-band-inner{flex-direction:column;align-items:stretch;gap:22px}
  .nx-band form{flex-wrap:wrap}
  .nx-band input[name="postcode"]{flex:1 1 150px}
  .nx-btn-sage{flex:1 1 100%;justify-content:center;padding-top:13px;padding-bottom:13px}
}
@media (max-width:700px){
  .nx-wrap{padding-left:20px;padding-right:20px}
  .nx-mast-title{font-size:42px}
  .nx-headline{font-size:29px;letter-spacing:-.6px}
  .nx-summary{font-size:18px}
  .nx-section h2{font-size:22px}
  .nx-section p{font-size:16px;line-height:1.8}
  .nx-chart{padding:16px 12px}
  .nx-chart-head{display:block}
  .nx-chart-head span{display:block;margin-top:4px}
  .nx-chart text{font-size:21px}
  .nx-explain{padding:18px 16px}
  .nx-pager{grid-template-columns:1fr;gap:18px}
  .nx-pager .newer{text-align:left}
  .nx-story .m,.nx-story-top .m{font-size:12.5px}
  .nx-src{font-size:11.5px}
  .nx-earlier-head{display:block}
  .nx-earlier-head a{display:inline-block;margin-top:6px;padding:8px 0}
  .nx-page .nx-list a{grid-template-columns:1fr}
  .nx-list time{grid-row:auto;padding:0 0 3px}
  .nx-list .t,.nx-list .s{grid-column:1}
  .nx-list .t{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.nx-page *{scroll-behavior:auto!important}}
