/* Pressroom finite-surface newspaper composition */
:root{--pressroom-paper-max:1280px;--pressroom-page-inset:32px;--pressroom-grid-gap:20px;--pressroom-baseline:8px}
.masthead,.controls,main{max-width:var(--pressroom-paper-max);margin-left:auto;margin-right:auto;padding-left:var(--pressroom-page-inset);padding-right:var(--pressroom-page-inset)}
.masthead-art img{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}.newspaper-page{width:100%}
.newspaper-grid,.composition-band{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:var(--pressroom-grid-gap)}
.composition-band{grid-auto-rows:8px;align-items:start;padding:16px 0 24px;border-top:4px double var(--ink-heavy);position:relative;min-height:var(--segment-flow-height,auto)}
.newspaper-story{min-width:0;padding:0 0 12px;background:transparent;border:0;box-shadow:none;position:relative;align-self:start;overflow:visible}.newspaper-story::after{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:1px solid var(--rule-light)}.newspaper-story+.newspaper-story{border-left:1px solid var(--rule-light);padding-left:var(--pressroom-grid-gap);margin-left:calc(var(--pressroom-grid-gap)*-1)}
.newspaper-story .kicker{margin-bottom:4px}.newspaper-story h2{margin:0 0 8px;font-family:var(--font-news);font-weight:700;letter-spacing:-.03em;color:var(--ink-heavy)}.newspaper-story.prominence-dominant h2{font-size:clamp(44px,4vw,58px);line-height:.93}.newspaper-story.prominence-major h2{font-size:clamp(34px,3vw,44px);line-height:.95}.newspaper-story.prominence-secondary h2{font-size:clamp(28px,2.5vw,36px);line-height:.97}.newspaper-story.prominence-standard h2{font-size:clamp(23px,2vw,30px);line-height:1}.newspaper-story.prominence-brief h2{font-size:clamp(18px,1.55vw,23px);line-height:1}
.story-deck{margin:0 0 12px;font-size:16px;line-height:1.3}.prominence-dominant .story-deck,.prominence-major .story-deck{font-size:17px}.story-attribution{margin:8px 0 10px;padding:7px 0 8px;border-top:1px solid var(--rule-light);border-bottom:1px solid var(--rule-light);font-size:12px;line-height:1.28}.story-attribution b,.story-attribution span{display:block}.story-attribution .reporting-credit{margin-top:3px;color:var(--ink-secondary)}
.publication-meta{margin:0 0 10px;font:700 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.75px;color:var(--ink-secondary)}.publication-brief .publication-meta,.publication-alert .publication-meta{padding-top:4px;border-top:1px dotted var(--rule-light)}.publication-alert .publication-meta{font-weight:800}.reporting-gaps,.story-provenance{margin:10px 0;font-size:11px;line-height:1.3;color:var(--ink-secondary)}.reporting-gaps summary,.story-provenance summary{cursor:pointer;font-weight:700}.reporting-gaps ul,.story-provenance ul{margin:6px 0 0;padding-left:18px}.article-contract-error{margin:10px 0;padding:8px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-style:italic;color:var(--ink-secondary)}
.story-frame{display:grid;grid-template-columns:repeat(var(--story-span,1),minmax(0,1fr));column-gap:var(--pressroom-grid-gap)}.story-frame>*{grid-column:1/-1}.newspaper-story .news-photo{grid-column:1/span min(var(--image-span,1),var(--story-span,1));margin:0 0 12px}.story-copy-band{font-size:16px;line-height:1.33;column-gap:var(--pressroom-grid-gap);column-rule:1px solid rgba(119,116,108,.35);orphans:3;widows:3}.story-copy-band[data-columns="2"]{column-count:2}.story-copy-band[data-columns="3"]{column-count:3}.story-copy-band p{margin:0 0 16px;break-inside:avoid-column}.story-copy-band .lede{font-weight:700}
.article-continuation{margin:5px 0 6px;border-top:1px dotted var(--rule-light);padding-top:3px;font:italic 10px Arial,sans-serif;color:var(--ink-secondary)}.prominence-brief .story-attribution,.prominence-brief .story-copy-band{font-size:13px;line-height:1.3}.prominence-brief .story-copy-band{column-count:1!important}.story-meta-line{clear:both;margin-top:12px;padding-top:5px;border-top:1px dotted var(--rule);font:9px Arial,sans-serif;color:var(--ink-secondary);text-transform:uppercase;letter-spacing:.45px}.frontpage-furniture{padding:4px 0 6px;margin-bottom:8px;border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);font:700 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:1.35px;text-align:center;color:var(--ink-secondary)}

/* Loaded-page boundaries stay in normal flow. Earlier segments retain a bottom rule;
 * the newest segment hands its bottom boundary to the continuation footer. */
.newspaper-segment{position:relative;padding-bottom:22px;overflow:visible}
.newspaper-segment:not(:last-of-type){border-bottom:4px double var(--ink-heavy);margin-bottom:16px}
.newspaper-segment+.newspaper-segment{margin-top:16px}
.frontpage-more{position:static;display:flex;justify-content:center;align-items:center;margin:0;padding:14px 0 16px;border-top:0;border-bottom:4px double var(--ink-heavy);z-index:auto;overflow:visible}
.frontpage-more[hidden]{display:none}
.newspaper-page:has(.frontpage-more[hidden]) .newspaper-segment:last-of-type{border-bottom:4px double var(--ink-heavy);padding-bottom:28px}
.frontpage-more button{border:1px solid var(--ink);background:transparent;font:700 12px var(--font-news);text-transform:uppercase;padding:8px 14px;cursor:pointer}
.story-open{display:inline;padding:0;border:0;background:none;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.story-open:hover,.story-open:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
/* Keep the shared paper-edge contract explicit and human-readable for regression checks. */
.masthead,
.controls,
main {
  max-width: var(--pressroom-paper-max);
}
.masthead-art img {
  width: 100% !important;
}
@media(min-width:700px) and (max-width:1099px){:root{--pressroom-page-inset:22px;--pressroom-grid-gap:16px}.newspaper-grid,.composition-band{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto}.newspaper-story{grid-column:span var(--tablet-span,3)!important;grid-row:auto!important}.story-frame{grid-template-columns:repeat(var(--tablet-span,1),minmax(0,1fr));column-gap:var(--pressroom-grid-gap)}.newspaper-story .news-photo{grid-column:1/span min(var(--tablet-image-span,1),var(--tablet-span,1))}.story-copy-band[data-columns="3"]{column-count:2}.newspaper-segment{padding-bottom:20px}.frontpage-more{padding:13px 0 15px}}
@media(max-width:699px){:root{--pressroom-page-inset:10px;--pressroom-grid-gap:0px}.newspaper-grid,.composition-band{display:block}.composition-band{padding:0;border-top:0;min-height:0}.newspaper-story,.newspaper-story+.newspaper-story{padding:16px 0 24px;margin:0;border-left:0;border-top:1px solid var(--rule)}.newspaper-story::after{display:none}.story-frame{display:block}.newspaper-story .news-photo{width:100%}.composition-band:first-child .newspaper-story:first-child{border-top:4px double var(--ink-heavy)}.newspaper-story.prominence-dominant h2{font-size:38px}.newspaper-story.prominence-major h2{font-size:33px}.newspaper-story.prominence-secondary h2{font-size:29px}.newspaper-story.prominence-standard h2{font-size:25px}.newspaper-story.prominence-brief h2{font-size:21px}.story-deck{font-size:16px}.story-copy-band,.story-copy-band[data-columns="2"],.story-copy-band[data-columns="3"]{column-count:1;font-size:17px;line-height:1.35}.newspaper-segment{padding-bottom:18px}.newspaper-segment+.newspaper-segment{margin-top:12px}.frontpage-more{padding:12px 0 14px}.frontpage-more button{width:min(100%,280px)}}


/* Editorial-zone composition rebuild.
 * The opening page is a composed newspaper surface, not a masonry stream. */
.frontpage-opening{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  grid-template-areas:
    "lead lead lead lead railTop railTop"
    "lead lead lead lead railBottom railBottom"
    "deckLeft deckLeft deckCenter deckCenter deckRight deckRight";
  column-gap:24px;
  row-gap:18px;
  align-items:start;
  padding:16px 0 22px;
  border-top:5px double var(--ink-heavy);
  border-bottom:4px double var(--ink-heavy);
}
.frontpage-opening .newspaper-story{
  margin:0!important;
  padding:0 0 14px!important;
  border-left:0!important;
}
.frontpage-opening .layout-lead{grid-area:lead!important;padding-right:4px!important}
.frontpage-opening .layout-rail-top{grid-area:railTop!important;border-left:1px solid var(--rule-light)!important;padding-left:20px!important}
.frontpage-opening .layout-rail-bottom{grid-area:railBottom!important;border-left:1px solid var(--rule-light)!important;border-top:1px solid var(--rule);padding:16px 0 14px 20px!important}
.frontpage-opening .layout-deck-left{grid-area:deckLeft!important;border-top:3px double var(--ink-heavy)}
.frontpage-opening .layout-deck-center{grid-area:deckCenter!important;border-top:3px double var(--ink-heavy);border-left:1px solid var(--rule-light)!important;padding-left:20px!important}
.frontpage-opening .layout-deck-right{grid-area:deckRight!important;border-top:3px double var(--ink-heavy);border-left:1px solid var(--rule-light)!important;padding-left:20px!important}
.frontpage-opening .layout-lead h2{
  font-size:clamp(38px,3.7vw,56px)!important;
  line-height:.91!important;
  letter-spacing:-.042em;
}
.frontpage-opening .layout-rail-top h2,
.frontpage-opening .layout-rail-bottom h2{
  font-size:clamp(25px,2.15vw,32px)!important;
  line-height:.96!important;
}
.frontpage-opening .layout-deck-left h2,
.frontpage-opening .layout-deck-center h2,
.frontpage-opening .layout-deck-right h2{
  font-size:clamp(22px,1.75vw,28px)!important;
  line-height:.98!important;
}
.frontpage-opening .layout-lead .story-deck{font-size:18px;line-height:1.23}
.frontpage-opening .layout-lead .story-copy-band{font-size:16px;line-height:1.34}
.frontpage-opening .layout-rail-top .story-copy-band,
.frontpage-opening .layout-rail-bottom .story-copy-band,
.frontpage-opening [class*="layout-deck-"] .story-copy-band{font-size:14px;line-height:1.32}
.frontpage-opening .layout-lead .news-photo{margin-top:6px;margin-bottom:13px}
.frontpage-opening .layout-rail-top .news-photo,
.frontpage-opening .layout-rail-bottom .news-photo{margin-top:5px}

/* Section pages use the same editorial grammar: one lead package, one supporting
 * rail, then a three-column deck. */
.section-edition-publication[data-layout="editorial-zones"],
.section-edition-publication{display:block}
.section-opening-layout{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  column-gap:24px;
  align-items:start;
  padding:14px 0 20px;
  border-top:5px double var(--ink-heavy);
  border-bottom:3px double var(--ink-heavy);
}
.section-lead-zone{grid-column:span 4;padding-right:4px}
.section-rail-zone{grid-column:span 2;border-left:1px solid var(--rule-light);padding-left:20px}
.section-rail-zone .section-publication+.section-publication{
  border-top:1px solid var(--rule);
  margin-top:16px!important;
  padding-top:16px!important;
}
.section-opening-layout .newspaper-story,
.section-deck-layout .newspaper-story{
  border-left:0!important;
  margin-left:0!important;
  padding-left:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
.section-layout-lead h2{font-size:clamp(38px,3.5vw,54px)!important;line-height:.92!important}
.section-layout-rail-top h2,
.section-layout-rail-bottom h2{font-size:clamp(25px,2.05vw,31px)!important;line-height:.97!important}
.section-layout-lead .story-deck{font-size:18px;line-height:1.25}
.section-layout-lead .story-copy-band{font-size:16px}
.section-layout-rail-top .story-copy-band,
.section-layout-rail-bottom .story-copy-band{font-size:14px}
.section-deck-layout{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:24px;
  row-gap:22px;
  padding:18px 0 24px;
}
.section-deck-layout .section-publication{
  border-top:1px solid var(--rule);
  padding-top:12px!important;
}
.section-deck-layout .section-publication:nth-child(3n+2),
.section-deck-layout .section-publication:nth-child(3n+3){
  border-left:1px solid var(--rule-light)!important;
  padding-left:20px!important;
}
.section-layout-deck h2{font-size:clamp(22px,1.75vw,28px)!important;line-height:.98!important}
.section-layout-deck .story-copy-band{font-size:14px;line-height:1.32}

/* Masthead acceptance: keep the illustrated identity, but stop letting it consume
 * the vertical budget of a newspaper page. */
body[data-pressroom-view="front-page"] .masthead-art{
  height:clamp(150px,13vw,190px);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:2px;
  padding:0;
}
body[data-pressroom-view="front-page"] .masthead-art img{
  width:auto!important;
  max-width:100%!important;
  height:100%!important;
  max-height:190px!important;
  object-fit:contain!important;
}
body[data-pressroom-view="front-page"] .primary-navigation{margin-top:4px}

/* The furniture line should behave like a folio, not a third headline bar. */
.frontpage-furniture,
.section-edition-furniture{
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  padding:5px 0 4px;
  margin-bottom:10px;
  font-size:8.5px;
  letter-spacing:1.45px;
  background:transparent;
}

@media(min-width:700px) and (max-width:1099px){
  .frontpage-opening{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-areas:
      "lead lead lead"
      "railTop railTop railBottom"
      "deckLeft deckCenter deckRight";
    column-gap:16px;
  }
  .frontpage-opening .layout-rail-top,
  .frontpage-opening .layout-rail-bottom,
  .frontpage-opening .layout-deck-center,
  .frontpage-opening .layout-deck-right{padding-left:14px!important}
  .section-opening-layout{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px}
  .section-lead-zone{grid-column:1/-1}
  .section-rail-zone{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    border-left:0;
    padding-left:0;
    margin-top:16px;
  }
  .section-rail-zone .section-publication+.section-publication{margin-top:0!important;padding-top:0!important;border-top:0;border-left:1px solid var(--rule-light)!important;padding-left:16px!important}
  .section-deck-layout{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
  .section-deck-layout .section-publication:nth-child(3n+2),
  .section-deck-layout .section-publication:nth-child(3n+3){border-left:0!important;padding-left:0!important}
  .section-deck-layout .section-publication:nth-child(even){border-left:1px solid var(--rule-light)!important;padding-left:16px!important}
}

@media(max-width:699px){
  body[data-pressroom-view="front-page"] .masthead-art{height:auto}
  body[data-pressroom-view="front-page"] .masthead-art img{width:100%!important;height:auto!important}
  .frontpage-opening,
  .section-opening-layout,
  .section-deck-layout{display:block;border-top:0}
  .frontpage-opening .newspaper-story,
  .section-opening-layout .newspaper-story,
  .section-deck-layout .newspaper-story{
    border-left:0!important;
    border-top:1px solid var(--rule)!important;
    padding:16px 0 22px!important;
    margin:0!important;
  }
  .frontpage-opening .layout-lead h2,
  .section-layout-lead h2{font-size:36px!important}
  .frontpage-opening .layout-rail-top h2,
  .frontpage-opening .layout-rail-bottom h2,
  .frontpage-opening [class*="layout-deck-"] h2,
  .section-layout-rail-top h2,
  .section-layout-rail-bottom h2,
  .section-layout-deck h2{font-size:26px!important}
  .section-rail-zone{border-left:0;padding-left:0}
}

.finance-edition-grid{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:22px;align-items:start}
.finance-edition-main{min-width:0}
.finance-market-rail{border-left:1px solid var(--rule);padding:12px 0 16px 16px;margin-top:14px;position:sticky;top:12px;font-size:12px}
.market-rail-head{border-top:4px double var(--ink-heavy);border-bottom:1px solid var(--rule);padding:8px 0}
.market-rail-head h3{font-size:28px;line-height:1;margin:2px 0}
.market-rail-head p{margin:0;color:var(--ink-secondary);font-size:11px}
.market-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid var(--rule-light);font:11px Arial,sans-serif}
.market-row>span:first-child b{display:block}.market-row>span:first-child small{display:block;color:var(--ink-secondary)}
.market-price{font-weight:700}.market-change{text-align:right}.market-change small{display:block}
.market-row.up .market-change{color:#345c40}.market-row.down .market-change{color:#7a3935}.market-row.unavailable{grid-template-columns:1fr auto;color:var(--ink-secondary)}
.market-note{font-size:10px;line-height:1.35;color:var(--ink-secondary);margin-top:10px}
@media(max-width:950px){.finance-edition-grid{grid-template-columns:1fr}.finance-market-rail{position:static;border-left:0;border-top:4px double var(--ink-heavy);padding:12px 0}.market-rows{display:grid;grid-template-columns:repeat(2,1fr);gap:0 16px}}
@media(max-width:650px){.market-rows{grid-template-columns:1fr}}
