/* ═══ HOMEPAGE-SPECIFIC CSS — extracted from nw-homepage-v4.html ═══ */

/* Typography eyebrows */
.ey{font-family:var(--mono);font-size:.625rem;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink3)}
.ey-r{font-family:var(--mono);font-size:.625rem;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--red)}
.ey-w{font-family:var(--mono);font-size:.625rem;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5)}
.mt{font-family:var(--sans);font-size:.75rem;color:var(--ink3)}.mt b{color:var(--ink2);font-weight:600}
.mt .ts{color:var(--ink5)}

/* Section chrome */
.sr{height:1.5px;background:var(--ink);margin-bottom:.5rem}
.sr-first{height:1px;background:var(--rule)}
.sr-w{height:1.5px;background:rgba(255,255,255,.2);margin-bottom:.5rem}
.sh{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.75rem}
.sl{font-family:var(--serif);font-weight:800;font-size:1.25em;color:var(--ink);letter-spacing:-.01em}
.sl-w{font-family:var(--serif);font-weight:800;font-size:1.25em;color:#fff;letter-spacing:-.01em}
.sa{font-size:.75rem;font-weight:600;color:var(--navy);opacity:.6;transition:opacity .15s;line-height:1}.sa:hover{opacity:1}
.sa::after{content:' →';transition:margin-left .15s}.sa:hover::after{margin-left:3px}
.sa-w{font-size:.75rem;font-weight:600;color:rgba(255,255,255,.5);transition:color .15s}.sa-w:hover{color:#fff}.sa-w::after{content:' →'}

/* Sections */
.sec-l{padding:1.5rem 0 1.75rem;background:var(--paper)}
.sec-a{padding:1.5rem 0 1.75rem;background:var(--paper2)}
.sec-d{padding:1.75rem 0;background:var(--navy-deep);color:#fff}
html.dark .sec-d{background:#1a1917}

/* Images placeholder */
.ph{background:linear-gradient(145deg,#e2dfda,#d5d2cc);display:flex;align-items:center;justify-content:center;color:#bbb;font-family:var(--mono);font-size:.5rem;letter-spacing:1px;text-transform:uppercase;flex-shrink:0;border-radius:3px;overflow:hidden;position:relative}
html.dark .ph{background:linear-gradient(145deg,#2a2a2a,#222);color:#555}
.ph img{width:100%;height:100%;object-fit:cover}

/* Lead story blurred background fill for portrait/square images */
.lead-img{position:relative;overflow:hidden;aspect-ratio:2/1;background:#111;border-radius:3px;margin-bottom:.625rem}
.lead-img-blur{position:absolute;inset:-20px;background-size:cover;background-position:center;filter:blur(30px) brightness(0.4);transform:scale(1.1);z-index:0}
html.dark .lead-img-blur{filter:blur(30px) brightness(0.3)}
.lead-img img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;object-position:center;display:block}

/* Card */
.card{cursor:pointer;position:relative}.card:hover h2,.card:hover h3,.card:hover h4{color:var(--navy)!important}

/* Date bar */
.dbar{padding:.5rem 0;font-size:.75rem;color:var(--ink3);display:flex;justify-content:space-between;align-items:center}
.ldot{display:inline-block;width:6px;height:6px;background:#2D8C3C;border-radius:50%;margin-right:4px;vertical-align:middle;animation:pls 2s infinite}
@keyframes pls{0%,100%{opacity:1}50%{opacity:.3}}

/* Lead */
.lead-g{display:grid;grid-template-columns:1.3fr 1px 1fr;gap:1.5rem;margin-bottom:1.25rem;align-items:stretch}
.lead-sep{background:var(--rule);width:1px}
.lead-m .ph{width:100%;aspect-ratio:2/1;margin-bottom:.625rem}
.lead-m h2{font-family:var(--serif);font-weight:800;font-size:clamp(1.25em,2vw,1.5em);line-height:1.18;color:var(--ink);margin-bottom:.375rem;letter-spacing:-.015em;transition:color .15s}
.lead-m .dk{font-family:var(--serif);font-size:.9375em;font-style:italic;color:var(--ink2);line-height:1.5;margin-bottom:.375rem}
.lead-m .mt{font-family:var(--sans);font-size:.75rem;color:var(--ink3)}.lead-m .mt b{color:var(--ink2);font-weight:600}
.lead-s{display:flex;flex-direction:column}
.ls{flex:1;display:grid;grid-template-columns:1fr 110px;gap:.625rem;padding:.4375rem 0;border-top:1px solid var(--rule);align-items:start;cursor:pointer}
.ls:first-child{border-top:none}
.ls:hover h3{color:var(--navy)}
.ls h3{font-family:var(--serif);font-weight:700;font-size:1em;line-height:1.3;color:var(--ink);transition:color .15s}
.ls .ph{width:110px;height:75px}

/* Featured editorial */
.fed{background:var(--feat-bg);border-left:4px solid var(--navy);padding:1.25rem 1.5rem;margin-bottom:1.25rem;border-radius:2px;cursor:pointer;transition:background .15s}
.fed:hover{background:var(--feat-bg-hover)}
.fed h2{font-family:var(--serif);font-weight:800;font-size:clamp(1.2em,1.8vw,1.45em);line-height:1.18;color:var(--ink);margin-bottom:.375rem;transition:color .15s}
.fed:hover h2{color:var(--navy)}
.fed em{color:var(--red);font-style:italic}
.fed .dk{font-family:var(--serif);font-size:.875em;color:var(--ink2);line-height:1.55}
.fed-cta{font-size:.8125rem;font-weight:600;color:var(--navy);margin-top:.5rem;display:inline-block;opacity:.7;transition:opacity .15s}.fed-cta:hover{opacity:1}

/* Mid cards (2-col grid with image) */
.mg{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}
.mc{display:grid;grid-template-columns:130px 1fr;gap:.625rem;padding:.75rem 0;border-top:1px solid var(--rule);align-items:start;cursor:pointer}
.mc:hover h3{color:var(--navy)}.mc .ph{width:130px;height:88px}
.mc h3{font-family:var(--serif);font-weight:700;font-size:.9375em;line-height:1.25;color:var(--ink);transition:color .15s}

/* Small cards (4-col grid) */
.sg{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.5rem}
.sc{cursor:pointer}.sc:hover h4{color:var(--navy)}
.sc .ph{width:100%;aspect-ratio:16/10;margin-bottom:.375rem}
.sc h4{font-family:var(--serif);font-weight:600;font-size:.875em;line-height:1.25;color:var(--ink);transition:color .15s}

/* Headline row */
.hlr{display:grid;grid-template-columns:repeat(4,1fr);gap:0 1.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--rule)}
.hi{padding:.375rem 0;cursor:pointer}.hi:hover h4{color:var(--navy)}
.hi h4{font-family:var(--serif);font-weight:600;font-size:.8125em;line-height:1.25;color:var(--ink);transition:color .15s}

/* Most Read (homepage) */
.mrg{display:flex;flex-direction:column;gap:0;max-width:680px}
.mri{display:grid;grid-template-columns:24px 80px 1fr;gap:.625rem;padding:.5rem 0;border-bottom:1px solid var(--rule2);cursor:pointer;align-items:center}
.mri:last-child{border-bottom:none}
.mri:hover h4{color:var(--navy)}.mri:hover .mrn{color:var(--navy)}
.mrn{font-family:var(--serif);font-weight:800;font-size:1.125em;color:var(--rule);line-height:1;text-align:center;min-width:24px;transition:color .15s}
.mri .mr-ph{width:80px;height:54px;background:var(--paper2);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.4375rem;letter-spacing:1px;text-transform:uppercase;color:var(--ink5);flex-shrink:0;overflow:hidden}
.mri h4{font-family:var(--serif);font-weight:600;font-size:.8125em;line-height:1.35;color:var(--ink);transition:color .15s}
.mri-d{border-bottom-color:rgba(255,255,255,.08)}
.mri-d .mr-ph{background:rgba(255,255,255,.06);color:rgba(255,255,255,.15)}
.mri-d:hover h4{color:#c5caff!important}
html.dark .mri-d:hover h4{color:var(--navy)!important}

/* Opinion */
.og{display:grid;grid-template-columns:repeat(4,1fr);gap:0 1.5rem}
.oc{padding:.625rem 0;border-top:1px solid var(--rule);cursor:pointer}.oc:hover h4{color:var(--navy)}
.oc h4{font-family:var(--serif);font-weight:700;font-size:.9375em;line-height:1.25;color:var(--ink);margin-bottom:.25rem;transition:color .15s}
.oc h4::before{content:'❝ ';color:var(--red);font-size:.8125em}

/* Accountability Projects */
.ap-g{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.ap-c{background:rgba(255,255,255,.06);padding:1.25rem;border-radius:3px;border-left:3px solid var(--red);cursor:pointer;transition:background .15s;display:block;text-decoration:none}
.ap-c:hover{background:rgba(255,255,255,.1)}
.ap-c h3{font-family:var(--serif);font-weight:800;font-size:1.0625em;color:#fff;margin-bottom:.25rem;transition:color .15s}
.ap-c:hover h3{color:#c5caff}
html.dark .ap-c:hover h3{color:var(--navy)}
.ap-c .ap-desc{font-size:.8125em;color:rgba(255,255,255,.55);line-height:1.45;margin-bottom:.375rem}
.ap-c .ap-latest{font-size:.75rem;color:rgba(255,255,255,.35);font-style:italic}
.ap-c .ap-latest b{color:rgba(255,255,255,.6)}
.ap-logo{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:.5rem;font-weight:800;color:#fff;flex-shrink:0;margin-bottom:.5rem}

/* Last Week */
.lw-g{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.lw-c{cursor:pointer}.lw-c:hover h4{color:var(--navy)}
.lw-c .ph{width:100%;aspect-ratio:16/10;margin-bottom:.375rem}
.lw-c h4{font-family:var(--serif);font-weight:600;font-size:.8125em;line-height:1.25;color:var(--ink);transition:color .15s}

/* Newsletter */
.nlc{background:var(--paper2);border:1px solid var(--rule);border-radius:4px;padding:1.75rem 2rem;text-align:center;max-width:600px;margin:0 auto}
.nlc h3{font-family:var(--serif);font-weight:800;font-size:1.2em;color:var(--ink);margin-bottom:.25rem}
.nlc .dk{font-family:var(--serif);font-size:.875em;font-style:italic;color:var(--ink2);margin-bottom:.875rem}
.ndisc{font-size:.6875rem;color:var(--ink3);margin-top:.375rem}
.nf-thanks{font-family:var(--serif);font-style:italic;color:var(--navy);font-size:.9375rem;text-align:center;padding:.5rem 0;width:100%}

/* Tip inline */
.tip-inline{font-size:.8125rem;color:var(--ink3);padding:.75rem 0;text-align:center}
.tip-inline a{color:var(--navy);font-weight:600}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1024px){
  .lead-g{grid-template-columns:1fr}.lead-sep{display:none}
  .mg{grid-template-columns:1fr}.sg{grid-template-columns:repeat(3,1fr)}
  .hlr{grid-template-columns:repeat(3,1fr)}.og{grid-template-columns:repeat(2,1fr)}
  .ap-g{grid-template-columns:repeat(2,1fr)}
  .lw-g{grid-template-columns:repeat(3,1fr)}.lw-c:nth-child(n+4){display:none}
}
@media(max-width:768px){
  .sg{grid-template-columns:1fr 1fr}.hlr{grid-template-columns:1fr}.og{grid-template-columns:1fr}
  .mc{grid-template-columns:100px 1fr}.mc .ph{width:100px;height:68px}
  .ls{grid-template-columns:1fr 90px}.ls .ph{width:90px;height:62px}
  .ap-g{grid-template-columns:1fr}.lw-g{grid-template-columns:1fr 1fr}.lw-c:nth-child(n+3){display:none}
  .lead-m .ph{margin-left:-1.5rem;margin-right:-1.5rem;width:calc(100% + 3rem);border-radius:0;aspect-ratio:2/1}
  .sl{padding-left:.5rem;border-left:3px solid var(--ink)}
  .nf{flex-direction:column;max-width:100%}
  .nf input,.nf button{width:100%}
  .nf button{margin-top:2px}
}
@media(max-width:480px){
  .sg{grid-template-columns:1fr}
  .ls{grid-template-columns:1fr 75px}.ls .ph{width:75px;height:52px}
  .lw-g{grid-template-columns:1fr}
}

/* ═══ SECTION HORIZONTAL CARDS (2-col grid) ═══ */
.sec-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.sec-col{display:flex;flex-direction:column}
.sec-card{display:grid;grid-template-columns:120px 1fr;gap:.75rem;padding:.75rem 0;border-top:1px solid var(--rule);align-items:start;transition:background .12s;cursor:pointer;text-decoration:none}
.sec-card:first-child{border-top:none}
.sec-card:hover h4{color:var(--navy)}
.sec-card-img{width:120px;aspect-ratio:3/2;object-fit:cover;border-radius:2px;flex-shrink:0}
.sec-card-ph{background:linear-gradient(145deg,#e2dfda,#d5d2cc);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.5rem;color:var(--ink5);letter-spacing:1px}
html.dark .sec-card-ph{background:linear-gradient(145deg,#2a2a2a,#222);color:#555}
.sec-card-body{min-width:0}
.sec-card-ey{font-family:var(--mono);font-size:.5rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);margin-bottom:.125rem;font-weight:500}
.sec-card h4{font-family:var(--serif);font-weight:700;font-size:.875em;line-height:1.3;color:var(--ink);transition:color .15s;margin-bottom:.125rem}
.sec-card-mt{font-family:var(--sans);font-size:.625rem;color:var(--ink5)}
.sec-card-mt b{color:var(--ink3);font-weight:600}

@media(max-width:768px){
  .sec-grid{grid-template-columns:1fr}
  .sec-card-img{width:100px}
  .sec-card{grid-template-columns:100px 1fr;gap:.5rem;padding:.625rem 0}
  .sec-card h4{font-size:.8125em}
}

/* ═══ LAST WEEK'S BIGGEST STORIES — DARK VARIANT ═══ */
.lw-sec{background:var(--navy-deep);padding:2rem 0;color:#fff}
.lw-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:.75rem}

/* Override card colors inside dark section */
.lw-sec .sec-card{border-top-color:rgba(255,255,255,.1)}
.lw-sec .sec-card:first-child{border-top:none}
.lw-sec .sec-card h4{color:#fff}
.lw-sec .sec-card:hover h4{color:#c5caff}
.lw-sec .sec-card-ey{color:var(--red)}
.lw-sec .sec-card-mt{color:rgba(255,255,255,.5)}
.lw-sec .sec-card-mt b{color:rgba(255,255,255,.7)}
.lw-sec .sec-card-ph{background:rgba(255,255,255,.06);color:rgba(255,255,255,.3)}
html.dark .lw-sec{background:#1a1917}
html.dark .lw-sec .sec-card:hover h4{color:var(--navy)}

@media(max-width:768px){
  .lw-sec{padding:1.5rem 0}
}

/* ═══ MOST READ — RANKED NUMBER OVERLAY ═══ */
.mr-ranked{position:relative;overflow:hidden}
.mr-rank{position:absolute;top:50%;right:0;transform:translateY(-50%);font-family:var(--serif);font-weight:800;font-size:3.5rem;line-height:1;color:rgba(255,255,255,.07);pointer-events:none;user-select:none}

@media(max-width:768px){
  .mr-rank{font-size:2.75rem}
}

/* ═══ CARNEYWATCH BANNER ═══ */
.cw-banner,.cw-banner *,.cw-banner *::before,.cw-banner *::after{box-sizing:border-box;margin:0;padding:0}
.cw-banner{display:block;text-decoration:none;color:inherit;cursor:pointer;position:relative;overflow:hidden;background:#f5f0e6;border-top:3px solid #C8102E;border-bottom:3px solid #C8102E;font-family:Georgia,"Times New Roman",serif;-webkit-font-smoothing:antialiased}
.cw-banner::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 32px,rgba(200,16,46,.04) 32px,rgba(200,16,46,.04) 33px);z-index:1;pointer-events:none}
.cw-banner-inner{max-width:1100px;margin:0 auto;padding:28px 32px;text-align:center;position:relative;z-index:2}
.cw-stamp{display:inline-block;font-family:"Courier New","Courier",monospace;font-size:.625rem;font-weight:700;color:#C8102E;letter-spacing:2.5px;text-transform:uppercase;border:1.5px solid #C8102E;padding:4px 11px;margin-bottom:12px;background:rgba(255,255,255,.4);transform:rotate(1deg)}
.cw-banner h2{font-family:Georgia,"Times New Roman",serif;font-weight:900;font-size:clamp(1.5rem,3.2vw,2.125rem);color:#111;line-height:1.1;letter-spacing:-.02em;margin-bottom:12px}
.cw-strike{position:relative;color:#888;display:inline-block}
.cw-strike::after{content:"";position:absolute;left:-2%;right:-2%;top:55%;height:3px;background:#C8102E;transform:rotate(-2deg)}
.cw-sub{font-family:Georgia,"Times New Roman",serif;font-size:.9375rem;color:#444;line-height:1.5;max-width:580px;margin:0 auto 16px}
.cw-punch{display:block;color:#C8102E;font-weight:700;margin-top:.375rem}
.cw-punch-final{display:block;color:#C8102E;font-weight:900;font-style:italic;margin-top:.125rem;font-size:1.0625rem;letter-spacing:-.01em}
.cw-cta{display:inline-block;font-family:"Courier New","Courier",monospace;font-size:.75rem;font-weight:700;color:#fff;background:#111;padding:12px 26px;letter-spacing:1.5px;text-transform:uppercase;transition:background .15s}
.cw-banner:hover .cw-cta{background:#C8102E}
.cw-foot{font-family:"Courier New","Courier",monospace;font-size:.625rem;color:#888;margin-top:14px;letter-spacing:.5px}
html.dark .cw-banner{background:#1a1917;border-top-color:#C8102E;border-bottom-color:#C8102E}
html.dark .cw-banner h2{color:#eee}
html.dark .cw-sub{color:#aaa}
html.dark .cw-stamp{background:rgba(0,0,0,.3);color:#C8102E;border-color:#C8102E}
html.dark .cw-strike{color:#666}
html.dark .cw-foot{color:#666}
@media(max-width:768px){.cw-banner-inner{padding:22px 20px}.cw-banner h2{font-size:1.375rem}.cw-sub{font-size:.875rem}.cw-punch-final{font-size:.9375rem}.cw-cta{padding:11px 22px;font-size:.6875rem}.cw-stamp{font-size:.5625rem;padding:4px 10px}}
