/* BJCK Stories Manager | Warm editorial styling. Scoped to BJCK shortcodes. */
.bjck-stories, .bjck-article {
  --bjck-paper: #f6f1e8;
  --bjck-ink: #242021;
  --bjck-red: #911a1d;
  --bjck-grey: #65605f;
  --bjck-rule: #c9beb1;
  color: var(--bjck-ink);
  font-family: "Public Sans", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.bjck-stories *, .bjck-article * { box-sizing: border-box; }
.bjck-stories a, .bjck-article a { color: inherit; text-decoration: none; }
.bjck-stories a:hover, .bjck-article a:hover { color: var(--bjck-red); }
.bjck-stories a:focus-visible, .bjck-article a:focus-visible {
  outline: 3px solid var(--bjck-red); outline-offset: 4px;
}
.bjck-stories h1, .bjck-stories h2, .bjck-stories h3,
.bjck-article h1, .bjck-article h2, .bjck-article h3 {
  font-family: "Montserrat", "Arial Narrow", Arial, sans-serif;
  text-transform: none;
  letter-spacing: -.045em;
  color: var(--bjck-ink);
  overflow-wrap: anywhere;
}
.bjck-stories p, .bjck-article p { margin: 0; }
.bjck-stories { width: 100%; background: var(--bjck-paper); padding: 0 clamp(20px, 5vw, 88px) 85px; }
/* Full-viewport Stories pages, including when placed in a constrained builder column.
   Keep a small responsive page gutter so text does not touch screen edges. */
.bjck-stories--page {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: none;
  margin-left: -50vw;
  margin-right: 0;
  padding-inline: clamp(16px, 2vw, 32px);
}
/* The original 1330px cap boxed the content even when the background filled the viewport.
   Remove it on full-page Stories only. Embedded previews and article bodies keep their
   intentional reading widths. */
.bjck-stories--page .bjck-stories__hero,
.bjck-stories--page .bjck-stories__feature,
.bjck-stories--page .bjck-stories__archive,
.bjck-stories--page .bjck-stories__outro {
  width: 100%;
  max-width: none;
}
.bjck-stories--page .bjck-stories__hero h1 { max-width: none; }
/* Dedicated page template should not inherit a theme's article-style width or padding. */
#bjck-stories-main.bjck-stories-page-template {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
/* Use this embedded archive with a custom builder-authored hero/CTA. */
.bjck-stories--archive-only {
  background: transparent;
  padding: 0;
}
.bjck-stories__hero, .bjck-stories__feature, .bjck-stories__archive { max-width: 1330px; margin: 0 auto; }
/* Start the heading shortly below the site header without a second masthead line. */
.bjck-stories__hero { padding-top: clamp(28px, 3.3vw, 52px); padding-bottom: clamp(56px, 8vw, 120px); }
.bjck-stories__section-label {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 24px; border-top: 1px solid var(--bjck-ink);
  padding-top: 12px;
  text-transform: uppercase;
  font-family: "Public Sans", Arial, sans-serif;
  font-weight: 700; font-size: 11px; line-height: 1.4;
  letter-spacing: .09em;
}
.bjck-stories__section-label > span:last-child { text-align: right; }
.bjck-stories__hero h1 {
  max-width: 1100px; font-size: clamp(49px, 8.4vw, 138px);
  font-weight: 800; line-height: 1.02; margin: 0 0 40px;
}
.bjck-stories__hero-bottom { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.48fr); gap: clamp(28px, 8vw, 136px); align-items: end; }
.bjck-stories__hero-bottom p { max-width: 460px; font-size: clamp(15px,1.4vw,18px); }
.bjck-stories__hero-bottom .bjck-stories__lede { font-family: "Montserrat", Arial, sans-serif; font-size: clamp(23px,2.7vw,38px); line-height: 1.26; font-weight: 650; letter-spacing: -.035em; }
.bjck-stories__section-label h2 { font-size: clamp(18px,2vw,26px); font-weight: 800; margin: 0; letter-spacing: -.035em; }
.bjck-stories__feature { padding-bottom: clamp(58px,8vw,100px); }
.bjck-stories__feature .bjck-stories__section-label { color: var(--bjck-red); border-color: var(--bjck-red); margin-bottom: 24px; }
.bjck-stories__item { min-width: 0; }
.bjck-stories__item--featured { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(280px,.8fr); }
.bjck-stories__photo-link { display: block; min-width: 0; overflow: hidden; background: #e3d8cb; }
.bjck-stories__photo-link img { display: block; width: 100%; height: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.bjck-stories__image-placeholder {
  min-height: 240px; height: 100%; aspect-ratio: 16 / 10;
  display: grid; place-items: center; padding: 30px;
  background: #e3d8cb; color: #6e6259;
  border: 1px solid #cabeb0;
  text-align: center; font-size: 12px; font-weight: 600; letter-spacing: .04em;
}
.bjck-stories__item--featured .bjck-stories__image-placeholder { aspect-ratio: 4 / 3; }
.bjck-stories__item--featured .bjck-stories__item-copy {
  background: var(--bjck-red); color: var(--bjck-paper);
  display: flex; flex-direction: column; justify-content: center;
  padding: clamp(28px,4.2vw,68px);
}
.bjck-stories__item--featured .bjck-stories__item-title,
.bjck-stories__item--featured .bjck-stories__item-title a,
.bjck-stories__item--featured .bjck-stories__text-link { color: var(--bjck-paper); }
.bjck-stories__item--featured .bjck-stories__item-title { font-size: clamp(29px,3.1vw,52px); line-height: 1.06; }
.bjck-stories__item--featured a:hover { text-decoration: underline; text-underline-offset: 4px; }
.bjck-stories__meta { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 10px 20px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .065em; }
.bjck-stories__meta time { white-space: nowrap; font-weight: 500; }
.bjck-stories__item-title { font-size: clamp(23px,2.2vw,36px); line-height: 1.13; margin: 20px 0; font-weight: 800; }
.bjck-stories__excerpt { font-size: 15px; line-height: 1.73; max-width: 620px; }
.bjck-stories__text-link { display: inline-block; border-bottom: 1px solid currentColor; width: max-content; max-width: 100%; padding-bottom: 3px; margin-top: 22px; font-size: 13px; font-weight: 700; text-decoration: none; }
.bjck-stories__filters { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 28px 0 42px; }
.bjck-stories__filters a {
  border-bottom: 1px solid transparent;
  padding: 8px 0; font-weight: 650; font-size: 13px;
}
.bjck-stories__filters a:hover, .bjck-stories__filters a.is-active { border-color: var(--bjck-red); color: var(--bjck-red); }
.bjck-stories__list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: clamp(24px,4vw,72px); row-gap: clamp(52px,6vw,92px); }
.bjck-stories__list .bjck-stories__item { border-top: 1px solid var(--bjck-rule); padding-top: 14px; }
.bjck-stories__list .bjck-stories__photo-link { margin-bottom: 24px; }
.bjck-stories__list .bjck-stories__item:nth-child(4n + 2) .bjck-stories__photo-link img,
.bjck-stories__list .bjck-stories__item:nth-child(4n + 2) .bjck-stories__image-placeholder { aspect-ratio: 5 / 4; }
.bjck-stories__list .bjck-stories__item:nth-child(4n + 3) .bjck-stories__photo-link img,
.bjck-stories__list .bjck-stories__item:nth-child(4n + 3) .bjck-stories__image-placeholder { aspect-ratio: 4 / 3; }
.bjck-stories__list .bjck-stories__photo-link img { height: auto; }
.bjck-stories__list .bjck-stories__image-placeholder { height: auto; }
.bjck-stories__list .bjck-stories__item-title { margin: 14px 0; }
.bjck-stories__list .bjck-stories__text-link { margin-top: 19px; }
.bjck-stories__empty { border-top: 1px solid var(--bjck-rule); padding: 50px 0; color: var(--bjck-grey); }
.bjck-stories__pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 50px 0 0; }
.bjck-stories__pagination .page-numbers { padding: 7px 13px; border: 1px solid var(--bjck-rule); font-size: 13px; font-weight: 700; }
.bjck-stories__pagination .page-numbers.current { background: var(--bjck-red); color: #fff; border-color: var(--bjck-red); }
.bjck-stories--recent { padding-top: 55px; }
.bjck-stories--recent .bjck-stories__section-label { max-width: 1330px; margin: 0 auto 30px; }
.bjck-stories--recent .bjck-stories__list { max-width: 1330px; margin: auto; }
/* Single story */
.bjck-story-shell { width: 100%; background: #f6f1e8; }
.bjck-article { background: var(--bjck-paper); padding: 45px clamp(20px,5vw,88px) 90px; }
.bjck-article__wrap { width: min(100%,1020px); margin: auto; }
.bjck-article__top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; align-items: baseline; }
.bjck-article__top .bjck-stories__text-link { margin: 0; }
.bjck-article__language { font-weight: 700; font-size: 13px; border-bottom: 1px solid currentColor; }
.bjck-article__header { padding: clamp(45px,8vw,120px) 0 50px; }
.bjck-article__header .bjck-stories__meta { padding-top: 14px; border-top: 1px solid var(--bjck-ink); }
.bjck-article__header h1 { font-size: clamp(42px,7vw,93px); line-height: 1; font-weight: 800; margin: 45px 0 26px; }
.bjck-article__summary { max-width: 800px; font-size: clamp(18px,2.3vw,25px); line-height: 1.5; }
.bjck-article__cover { margin: 0 0 55px; }
.bjck-article__cover img { display: block; width: 100%; height: auto; max-height: 620px; object-fit: cover; }
.bjck-article__cover .bjck-stories__image-placeholder { aspect-ratio: 16 / 8; max-height: 600px; }
.bjck-article__body { max-width: 770px; margin: 0 auto; font-size: clamp(16px,1.4vw,19px); line-height: 1.85; }
.bjck-article__body p { margin: 0 0 1.45em; }
.bjck-article__body h2, .bjck-article__body h3 { letter-spacing: -.025em; line-height: 1.25; margin: 1.8em 0 .65em; }
.bjck-article__body img { max-width: 100%; height: auto; }
.bjck-article__body a { text-decoration: underline; text-underline-offset: 3px; }
.bjck-article__body blockquote { border-left: 2px solid var(--bjck-red); padding-left: 24px; margin-left: 0; font-size: 1.3em; }
.bjck-article__bottom { border-top: 1px solid var(--bjck-ink); margin-top: 70px; padding-top: 12px; }
.bjck-article__bottom a { margin-top: 0; }
.bjck-article__related { max-width: 1330px; margin: 120px auto 0; }
.bjck-article__related .bjck-stories__section-label { margin-bottom: 34px; }
.bjck-article__related .bjck-stories__list .bjck-stories__item--featured { display: block; }
@media (max-width: 800px) {
  .bjck-stories__hero-bottom { grid-template-columns: 1fr; gap: 22px; }
  .bjck-stories__item--featured { grid-template-columns: 1fr; }
  .bjck-stories__item--featured .bjck-stories__item-copy { min-height: 260px; }
  .bjck-stories__hero h1 { font-size: clamp(48px, 12vw, 88px); }
  .bjck-stories__list { gap: 46px 22px; }
  .bjck-stories__list .bjck-stories__item-title { font-size: clamp(20px,3vw,27px); }
}
@media (max-width: 560px) {
  .bjck-stories { padding-bottom: 52px; }
  .bjck-stories__hero { padding-top: 26px; padding-bottom: 62px; }
  .bjck-stories__hero h1 { font-size: clamp(43px,12.8vw,64px); margin: 0 0 30px; }
  .bjck-stories__section-label { font-size: 10px; gap: 12px; }
  .bjck-stories__item--featured .bjck-stories__item-copy { padding: 26px 22px; }
  .bjck-stories__list { display: block; }
  .bjck-stories__list .bjck-stories__item + .bjck-stories__item { margin-top: 52px; }
  .bjck-stories__filters { margin: 22px 0 35px; gap: 4px 16px; }
  .bjck-stories__filters a { font-size: 12px; }
  .bjck-article { padding-top: 25px; padding-bottom: 60px; }
  .bjck-article__header { padding: 45px 0 30px; }
  .bjck-article__header h1 { font-size: clamp(38px,10.5vw,62px); margin: 32px 0 20px; }
  .bjck-article__cover { margin-bottom: 36px; }
  .bjck-article__related { margin-top: 70px; }
}
@media (prefers-reduced-motion: reduce) {
  .bjck-stories *, .bjck-article * { scroll-behavior: auto !important; transition: none !important; }
}

.bjck-stories__outro { max-width: 1330px; margin: clamp(70px,9vw,135px) auto 0; background: var(--bjck-red); color: var(--bjck-paper); padding: clamp(28px,5vw,76px); display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; }
.bjck-stories__outro-copy { max-width: 800px; }
.bjck-stories__outro-kicker { font-size: 11px; letter-spacing: .09em; font-weight: 700; }
.bjck-stories__outro h2 { color: var(--bjck-paper); font-size: clamp(31px,4.3vw,63px); line-height: 1.1; margin: 27px 0; font-weight: 800; }
.bjck-stories__outro p { max-width: 690px; font-size: 16px; }
.bjck-stories__outro-cta { color: var(--bjck-paper) !important; font-weight: 750; text-align: center; white-space: nowrap; text-decoration: none; border: 1px solid var(--bjck-paper); padding: 13px 23px; }
.bjck-stories__outro-cta:hover { background: var(--bjck-paper); color: var(--bjck-red) !important; }
@media(max-width:800px) { .bjck-stories__outro { flex-direction: column; align-items: flex-start; } }

/* Prevent some builder/global link rules from turning category filters blue. */
.bjck-stories .bjck-stories__filters a,
.bjck-stories .bjck-stories__filters a:visited {
  color: var(--bjck-ink) !important;
}
.bjck-stories .bjck-stories__filters a:hover,
.bjck-stories .bjck-stories__filters a.is-active,
.bjck-stories .bjck-stories__filters a[aria-current="page"] {
  color: var(--bjck-red) !important;
}
