/* The masthead and hero keep the already published flyer treatment. */
.flyer-edition {
  --edition-width: min(100% - 64px, 1256px);
  --edition-rule: 2px solid var(--ink);
  --edition-gap: 7px;
}

.flyer-edition > .business-nav,
.flyer-edition > .recommendation-area,
.flyer-edition > .home-shortcuts,
.flyer-edition > .home-layout {
  width: var(--edition-width);
  margin-inline: auto;
}

.flyer-edition > .business-nav {
  margin-block: 7px 21px;
  border: var(--edition-rule);
  background: var(--card);
}
.flyer-edition > .business-nav > .shell { width: 100%; padding-inline: 10px; }
.flyer-edition .nav-submenu { border: var(--edition-rule); box-shadow: none; }

.flyer-edition .flyer-band.section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 59px;
  margin: 0 0 var(--edition-gap);
  padding: 7px 13px;
  border: var(--edition-rule);
  color: var(--paper);
  background: var(--ink);
}
.flyer-edition .home-layout .business-top > .section-title.flyer-band { background: var(--ink); }
.flyer-edition .business-top .flyer-band .jag-hand-color-name {
  font-family: inherit;
  font-weight: inherit;
}
.flyer-edition .flyer-band > h2 {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 12px;
  margin: 0;
  font-size: 23px;
  line-height: 1.25;
  font-weight: 900;
}
.flyer-edition .flyer-band .edition-number {
  flex: none;
  padding-right: 12px;
  border-right: 1px solid currentColor;
  font: 900 31px/1.05 system-ui, sans-serif;
  font-variant-numeric: tabular-nums;
  color: var(--peach);
}
.flyer-edition .flyer-band > :not(h2) {
  flex: none;
  padding: 4px 8px;
  color: var(--ink);
  background: var(--peach);
  font-size: 12px;
  font-weight: 850;
}
.flyer-edition .recommendation-area { padding: 0; }
.flyer-edition .recommendation-area .hero-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: auto;
  gap: var(--edition-gap);
}
.flyer-edition .hero-grid .hero-article {
  grid-column: auto;
  grid-row: auto;
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 0;
  height: auto;
  color: var(--ink);
  background: var(--card);
  border: var(--edition-rule);
}
.flyer-edition .hero-grid .hero-primary {
  grid-column: span 2;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: 1fr;
  background: var(--peach);
}
.flyer-edition .hero-grid .hero-article > img {
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
  object-fit: cover;
  background: var(--card);
}
.flyer-edition .hero-grid .hero-primary > img { height: 100%; min-height: 153px; aspect-ratio: auto; }
.flyer-edition .hero-grid .illustrated-cover > img { object-fit: contain; }
.flyer-edition .hero-grid .hero-caption {
  position: static;
  padding: 9px 11px 12px;
  background: none;
}
.flyer-edition .hero-grid .hero-primary .hero-caption {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-left: var(--edition-rule);
}
.flyer-edition .hero-grid .hero-article:not(.hero-primary) .hero-caption { border-top: var(--edition-rule); }
.flyer-edition .hero-grid .hero-caption .eyebrow {
  margin: 0 0 7px;
  color: var(--ink);
  font-size: 11px;
}
.flyer-edition .hero-grid .hero-caption h2 { color: var(--ink); font-size: 17px; line-height: 1.35; font-weight: 900; }
.flyer-edition .hero-grid .hero-primary .hero-caption h2 { font-size: 25px; }
.flyer-edition .recommendation-settings { margin: 6px 0 0; padding: 6px 10px; color: var(--ink); border: 1px solid var(--ink); }
.flyer-edition .recommendation-settings summary { width: fit-content; font-weight: 800; }
.flyer-edition .home-shortcuts { margin-block: 12px 19px; padding: 5px 9px; border-block: var(--edition-rule); }

.flyer-edition > .shell.home-layout { display: block; padding: 0; }
.flyer-edition .home-layout .business-top { padding: 0; border: 0; }
.flyer-edition .home-layout .business-grid,
.flyer-edition .home-layout .catalogue .story-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--edition-gap);
}
.flyer-edition .home-layout .business-grid > .story,
.flyer-edition .home-layout .catalogue .story-grid > .story {
  display: grid;
  grid-template-rows: auto auto auto 1fr;
  align-content: start;
  min-width: 0;
  gap: 6px;
  padding: 9px;
  border: var(--edition-rule);
  border-radius: 0;
  background: var(--card);
}
.flyer-edition .home-layout .business-grid > .story:nth-child(4n+2) { background: var(--ice); }
.flyer-edition .home-layout .business-grid > .story:nth-child(4n+4) { background: var(--peach); }
.flyer-edition .home-layout .story > img,
.flyer-edition .home-layout .story > .typographic-cover {
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
  object-fit: cover;
  border: 1px solid var(--ink);
}
.flyer-edition .home-layout .story.illustrated-cover > img { object-fit: contain; }
.flyer-edition .home-layout .catalogue .story > img { object-fit: contain; background: var(--soft); }
.flyer-edition .home-layout .story > .story-meta {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2px 8px;
  margin: 0;
  padding-bottom: 4px;
  border-bottom: 1px solid var(--ink);
  color: var(--ink);
  font-size: 11px;
  font-weight: 800;
}
.flyer-edition .home-layout .story > h3 {
  margin: 0;
  min-height: 0;
  font-size: 17px;
  line-height: 1.38;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.flyer-edition .home-layout .story > .story-lead {
  min-height: 0;
  margin: 0;
  color: var(--ink);
  font-size: 12px;
  line-height: 1.62;
}
.flyer-edition .home-layout .story:hover { background: var(--ice); }
.flyer-edition .home-layout .catalogue { margin-top: 23px; padding: 0; border: 0; scroll-margin-top: 10px; }
.flyer-edition .home-layout .catalogue .flyer-band { background: var(--accent); color: var(--ink); }
.flyer-edition .catalogue .flyer-band .edition-number { color: var(--ink); }
.flyer-edition .catalogue .flyer-band #result-count { background: var(--ink); color: var(--paper); font-variant-numeric: tabular-nums; }
.flyer-edition .home-layout .catalogue-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 22%);
  align-items: stretch;
  gap: 6px;
  margin: 0;
  padding: 6px;
  border: var(--edition-rule);
  background: var(--ice);
}
.flyer-edition .catalogue-controls .filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  margin: 0;
}
.flyer-edition .catalogue .filters button,
.flyer-edition .catalogue .subfilters button {
  min-height: 38px;
  padding: 4px;
  border: 1px solid var(--ink);
  border-radius: 0;
  background: var(--card);
  color: var(--ink);
  font-size: 12px;
  line-height: 1.24;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.flyer-edition .catalogue .filters button:hover,
.flyer-edition .catalogue .subfilters button:hover { background: var(--peach); }
.flyer-edition .catalogue button[aria-pressed=true] {
  background: var(--ink);
  color: var(--paper);
  box-shadow: inset 0 -3px var(--accent);
}
.flyer-edition .catalogue-controls #search {
  align-self: stretch;
  width: 100%;
  min-width: 0;
  min-height: 42px;
  max-width: none;
  padding: 8px 10px;
  border: var(--edition-rule);
  border-radius: 0;
  background: var(--card);
  color: var(--ink);
  font-size: 16px;
}
.flyer-edition .catalogue .subfilters {
  margin: 6px 0 var(--edition-gap);
  padding: 5px;
  gap: 4px;
  border: 1px solid var(--ink);
  background: var(--paper);
}
.flyer-edition .catalogue .subfilters button { min-height: 34px; padding-inline: 9px; }
.flyer-edition .catalogue #empty { margin: var(--edition-gap) 0 0; padding: 16px; border: var(--edition-rule); background: var(--card); }
.flyer-edition .catalogue .story[hidden] { display: none !important; }

@media (min-width: 1001px) {
  .flyer-edition .home-layout .catalogue .story:nth-child(6n+1 of .story:not([hidden])),
  .flyer-edition .home-layout .catalogue .story:nth-child(6n+6 of .story:not([hidden])) {
    grid-column: span 2;
    grid-template-columns: minmax(0, 45%) minmax(0, 1fr);
    grid-template-rows: auto auto 1fr;
    gap: 7px 12px;
    background: var(--peach);
  }
  .flyer-edition .catalogue .story:nth-child(6n+1 of .story:not([hidden])) > :is(img, .typographic-cover),
  .flyer-edition .catalogue .story:nth-child(6n+6 of .story:not([hidden])) > :is(img, .typographic-cover) {
    grid-row: 1 / 4;
    align-self: start;
    height: auto;
    aspect-ratio: 4 / 3;
  }
  .flyer-edition .catalogue .story:nth-child(6n+1 of .story:not([hidden])) > h3,
  .flyer-edition .catalogue .story:nth-child(6n+6 of .story:not([hidden])) > h3 { font-size: 23px; }
}

.flyer-edition .home-layout > .business-sidebar {
  position: static;
  max-height: none;
  margin-block: 24px;
  padding: 0;
  overflow: visible;
}
.flyer-edition .business-sidebar > .eyebrow { display: none; }
.flyer-edition .business-sidebar .business-banners { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--edition-gap); }
.flyer-edition .home-layout .business-sidebar .business-banner {
  display: grid;
  align-items: center;
  border: var(--edition-rule);
  border-radius: 0;
  box-shadow: none;
  background: var(--card);
}
.flyer-edition .business-banner img { max-height: 108px; filter: none; }
.flyer-edition .business-sidebar .aside-rule { margin: 8px 0 0; }
.flyer-edition .business-sidebar > a { display: inline-block; margin-right: 18px; }
body:has(.flyer-edition) > footer { border-top: 4px solid var(--accent); }

@media (max-width: 1100px) {
  .flyer-edition { --edition-width: calc(100% - 40px); }
}
@media (max-width: 1000px) {
  .flyer-edition .home-layout .business-grid,
  .flyer-edition .home-layout .catalogue .story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .flyer-edition .recommendation-area .hero-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .flyer-edition { --edition-width: calc(100% - 24px); }
  .flyer-edition .flyer-band.section-title { min-height: 50px; padding: 6px 8px; }
  .flyer-edition .flyer-band > h2 { gap: 7px; font-size: 18px; }
  .flyer-edition .flyer-band .edition-number { padding-right: 7px; font-size: 24px; }
  .flyer-edition .flyer-band > :not(h2) { font-size: 10px; padding-inline: 5px; }
  .flyer-edition .hero-grid .hero-primary .hero-caption h2 { font-size: 19px; }
  .flyer-edition .hero-grid .hero-caption h2 { font-size: 15px; }
  .flyer-edition .home-layout .catalogue-controls { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 520px) {
  .flyer-edition .home-layout .business-grid,
  .flyer-edition .home-layout .catalogue .story-grid { grid-template-columns: minmax(0, 1fr); }
  .flyer-edition .home-layout .business-grid > .story,
  .flyer-edition .home-layout .catalogue .story-grid > .story {
    grid-template-columns: minmax(0, 35%) minmax(0, 1fr);
    grid-template-rows: auto auto 1fr;
    gap: 4px 9px;
  }
  .flyer-edition .home-layout .story > :is(img, .typographic-cover) { grid-row: 1 / 4; aspect-ratio: 4 / 3; }
  .flyer-edition .home-layout .story > h3 { font-size: 15px; }
  .flyer-edition .home-layout .story > .story-lead { font-size: 11px; }
  .flyer-edition .home-layout .story > .story-meta { font-size: 10px; }
  .flyer-edition .hero-grid .hero-primary > img { min-height: 122px; }
  .flyer-edition .business-sidebar .business-banners { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 380px) {
  .flyer-edition { --edition-width: calc(100% - 16px); }
  .flyer-edition .catalogue-controls .filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
