:root{--red:#ef1527;--navy:#07101d;--ink:#121820}*{box-sizing:border-box}body{margin:0;background:#f1f3f5;color:var(--ink);font-family:Georgia,'Times New Roman',serif}header{height:58px;background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 max(4vw,20px);font:900 11px Arial;letter-spacing:.12em;border-bottom:4px solid var(--red)}header a{color:#fff;text-decoration:none}main{width:min(900px,calc(100% - 24px));margin:24px auto;background:#fff;padding:clamp(22px,5vw,50px);box-shadow:0 14px 38px rgba(0,0,0,.12)}.meta{font:900 10px Arial;color:var(--red);letter-spacing:.1em}h1{font-size:clamp(38px,8vw,76px);line-height:.98;letter-spacing:-.045em;margin:10px 0 20px;overflow-wrap:anywhere}.lead{font-size:clamp(18px,4.8vw,22px);line-height:1.5;color:#47515d}.cover{width:100%;height:auto;display:block;margin:25px 0}article{font-size:clamp(17px,4.4vw,19px);line-height:1.75}article h2{font-size:clamp(27px,7vw,34px);line-height:1.1;margin-top:32px}.back{border-top:1px solid #ddd;margin-top:30px;padding-top:18px}.back a{color:var(--red);font:900 11px Arial;text-decoration:none}footer{background:#07101d;color:#9facba;text-align:center;padding:25px;font:11px Arial}@media(max-width:650px){header span{display:none}main{margin-top:18px}}

/* ===== V44 — mobile editorial typography =====
   Targeted only at standalone/manual article pages using article.css.
   Keeps desktop layout intact; makes mobile reading denser and more newspaper-like. */
@media (max-width:650px){
  main{
    width:calc(100% - 20px);
    padding:20px 18px 28px;
  }
  h1{
    font-size:clamp(29px,8.4vw,34px);
    line-height:1.06;
    letter-spacing:-.03em;
    margin:10px 0 16px;
    overflow-wrap:break-word;
    word-break:normal;
    hyphens:none;
    text-wrap:balance;
  }
  .lead{
    font-size:18px;
    line-height:1.44;
    margin:0 0 20px;
    color:#46515d;
    text-align:left;
    text-wrap:pretty;
    word-spacing:normal;
  }
  article{
    font-size:17.5px;
    line-height:1.58;
    text-align:left;
    text-wrap:pretty;
    word-spacing:normal;
  }
  article p{
    margin:0 0 1.05em;
  }
  article p + p{
    margin-top:.15em;
  }
  article h2{
    font-size:clamp(24px,6.4vw,28px);
    line-height:1.15;
    margin:1.45em 0 .62em;
    letter-spacing:-.018em;
    text-wrap:balance;
  }
  article h3{
    line-height:1.22;
    text-wrap:balance;
  }
  article .note{
    line-height:1.48;
  }
}

/* ===== V45 — hard mobile typography fix for manual/editorial articles =====
   Strong selectors + !important intentionally used so older article rules cannot win. */
@media (max-width:699px){
  body main > .meta + h1,
  body main h1{
    font-size:clamp(27px,7.3vw,31px)!important;
    line-height:1.08!important;
    letter-spacing:-.026em!important;
    margin:9px 0 15px!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:balance;
  }
  body main > .meta + h1 + .lead,
  body main .lead{
    font-size:17px!important;
    line-height:1.40!important;
    margin:0 0 18px!important;
    color:#46515d!important;
    letter-spacing:0!important;
    word-spacing:0!important;
    text-align:left!important;
    text-indent:0!important;
    text-wrap:pretty;
  }
  body main article{
    font-size:17px!important;
    line-height:1.50!important;
  }
  body main article > p{
    font-size:17px!important;
    line-height:1.50!important;
    margin:0 0 .92em!important;
    text-align:left!important;
    text-indent:1.15em;
    text-wrap:pretty;
  }
  body main article > h2 + p,
  body main article > h3 + p,
  body main article > figure + p,
  body main article > .analysis-box + p,
  body main article > .source-box + p,
  body main article > p.note{
    text-indent:0!important;
  }
  body main article h2{
    font-size:clamp(23px,6vw,27px)!important;
    line-height:1.16!important;
    margin:1.35em 0 .55em!important;
  }
  body main article h3{
    font-size:20px!important;
    line-height:1.18!important;
    margin:1.2em 0 .5em!important;
  }
}

/* ===== V46 — editorial paragraph rhythm =====
   Online-newspaper layout: short semantic paragraphs, no book-style first-line
   indentation, compact line-height, predictable paragraph spacing. */
.lead.lead-stack{display:block}
.lead.lead-stack>p{font:inherit;color:inherit;letter-spacing:inherit;word-spacing:normal;text-align:left;text-indent:0;margin:0 0 .72em}
.lead.lead-stack>p:last-child{margin-bottom:0}
article>p{ text-indent:0!important; }

@media (min-width:700px){
  .lead.lead-stack{line-height:1.48;margin:0 0 22px}
  article{line-height:1.62}
  article>p{margin:0 0 1.02em!important;line-height:1.62!important}
}

@media (max-width:699px){
  body main .lead,
  body main .lead.lead-stack{
    font-size:17px!important;
    line-height:1.43!important;
    margin:0 0 18px!important;
    text-align:left!important;
    text-indent:0!important;
    word-spacing:normal!important;
    letter-spacing:0!important;
    text-wrap:wrap!important;
  }
  body main .lead.lead-stack>p{
    font-size:17px!important;
    line-height:1.43!important;
    margin:0 0 .74em!important;
    text-indent:0!important;
    text-align:left!important;
  }
  body main .lead.lead-stack>p:last-child{margin-bottom:0!important}
  body main article{
    font-size:17px!important;
    line-height:1.48!important;
  }
  body main article>p,
  body main article>p:first-of-type,
  body main article>h2+p,
  body main article>h3+p,
  body main article>figure+p,
  body main article>.analysis-box+p,
  body main article>.source-box+p{
    font-size:17px!important;
    line-height:1.48!important;
    margin:0 0 .82em!important;
    text-indent:0!important;
    text-align:left!important;
    word-spacing:normal!important;
    letter-spacing:0!important;
    text-wrap:wrap!important;
  }
}


/* ===== V49 DEVICE FIX — manual article phone typography ===== */
@media(max-width:699px){
  body main article,
  body main article>p,
  body main article>p:first-of-type,
  body main article>h2+p,
  body main article>h3+p{
    font-size:15px!important;
    line-height:1.55!important;
  }
  body main article h2{
    font-size:20px!important;
    line-height:1.18!important;
  }
}
