/* Homepage journal: keep stories in source order without a fixed five-row lead.
   Load after editorial33.css. The native narrow-screen layout stays intact. */
:is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story__body {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (min-width: 761px) {
  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid {
    /* Up to three columns, collapsing empty tracks for smaller story counts. */
    grid-template-columns: repeat(auto-fit, minmax(min(100%, max(20rem, calc((100% - 3rem) / 3))), 1fr));
    grid-auto-flow: row;
    grid-auto-rows: auto;
    gap: 2rem 1.5rem;
    align-items: start;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story {
    grid-column: auto;
    grid-row: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    margin: 0;
    padding: 0 0 1.25rem;
    border-bottom: 1px solid #ccd7c7;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__photo {
    width: 100%;
    aspect-ratio: 3 / 2;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__photo img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain !important;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__body {
    width: 100%;
    padding: 1rem 0 0;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story h3 {
    max-width: none;
    margin: .65rem 0 .6rem;
    font-size: clamp(1.75rem, 2.15vw, 2.1rem);
    line-height: 1.12;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story .ec33-story__summary {
    max-width: none;
    margin-bottom: 0;
    font-size: .875rem;
    line-height: 1.7;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story:only-child {
    max-width: 44rem;
  }
}

/* Keep the native hidden state authoritative if the story set is refreshed. */
:is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story[hidden] {
  display: none !important;
}

/* Four city walks: generous portrait photography and a consistent reading order. */
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.5rem;align-items:stretch;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid > .ec33-story {grid-column:auto;grid-row:auto;display:flex;flex-direction:column;gap:0;min-width:0;margin:0;padding:0 0 1.25rem;border-bottom:1px solid #b8c7b6;background:transparent;color:#183e37;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__photo {display:block;flex:none;width:100%;aspect-ratio:4/5;overflow:hidden;margin:0 0 1.25rem;border-radius:3px;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__photo img {display:block;width:100%;height:100%;max-height:none;object-fit:cover!important;object-position:var(--journal-focus,50% 50%);}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__body {display:flex;flex-direction:column;align-items:flex-start;flex:1;width:100%;padding:0;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story .ec33-story__meta {margin:0;color:#52695c;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story h3 {max-width:none;margin:.7rem 0 .85rem;font-size:clamp(1.65rem,2.1vw,2rem);line-height:1.14;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story .ec33-story__summary {display:block;max-width:none;margin:0 0 1rem;font-size:1rem;line-height:1.65;color:#526354;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story__read {display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:44px;margin-top:auto;color:#183e37;font:600 .9rem/1.4 var(--atlas-body);text-decoration:underline;text-underline-offset:.3em;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story__read svg {width:22px;height:22px;flex:none;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story a:focus-visible {outline:2px solid currentColor;outline-offset:5px;}
@media (max-width:1100px) {
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:600px) {
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {grid-template-columns:minmax(0,1fr);gap:2rem;}
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story h3,
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story:not(.ec33-story--lead) h3 {font-size:clamp(1.85rem,7.8vw,2.3rem);line-height:1.14;}
}

.ec-home-portal .ec-edition33 #home-stories [data-story-media="167"] {--journal-focus:43% 50%;}
.ec-home-portal .ec-edition33 #home-stories [data-story-media="169"] {--journal-focus:60% 50%;}
.ec-home-portal .ec-edition33 #home-stories [data-story-media="147"] {--journal-focus:54% 50%;}
