@charset "utf-8";.bbnfs{--orange:#f36f16;--ink:#20252b;--muted:#687078;--line:#e3e7eb;position:relative;margin-block:28px 38px;padding:34px clamp(14px,3.2vw,58px) 28px;color:var(--ink);background:#fff;font-family:"Open Sans","Segoe UI",Arial,sans-serif}.bbnfs.is-full{left:50%;width:100vw;margin-left:-50vw}.bbnfs.is-contained{width:100%}.bbnfs.theme-warm_light{background:#fff8f0}.bbnfs.theme-clean_white{background:#fff}.bbnfs *{box-sizing:border-box}.bbnfs a{text-decoration:none}
.bbnfs-ticker{position:relative;width:calc(100% + 2 * clamp(14px,3.2vw,58px));margin:calc(-34px) calc(-1 * clamp(14px,3.2vw,58px)) 30px;color:#fff;background:#7fa7d8;overflow:hidden}.bbnfs-ticker:before{position:absolute;inset:0 auto 0 0;width:max(35vw,370px);content:"";background:linear-gradient(90deg,#ef7a1c,#ef6610)}.bbnfs-ticker:after{position:absolute;top:0;bottom:0;left:max(35vw,370px);width:24px;content:"";background:#ef6610;clip-path:polygon(0 0,100% 50%,0 100%)}.bbnfs-ticker>div{position:relative;z-index:1;display:grid;grid-template-columns:minmax(170px,1fr) minmax(0,2.2fr) 80px;gap:20px;align-items:center;width:min(1180px,calc(100% - 28px));min-height:42px;margin:auto}.bbnfs-ticker strong{justify-self:center;font-size:14px}.bbnfs-ticker a{overflow:hidden;color:#fff!important;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.bbnfs-ticker span{display:flex}.bbnfs-ticker button{width:30px;height:32px;border:0;color:#fff;background:transparent;cursor:pointer;font:900 30px/1 Arial}
.bbnfs-heading{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;padding-bottom:50px}.bbnfs-heading p{margin:0 0 8px;color:var(--orange);font-size:10px;font-weight:900;letter-spacing:.14em}.bbnfs-heading h2{margin:0;font-size:clamp(28px,3.5vw,46px);line-height:1.05;letter-spacing:-.045em}.bbnfs-tools{display:flex;align-items:center;gap:11px}.bbnfs-tools>a{color:#d95400!important;font-size:11px;font-weight:900;white-space:nowrap}.bbnfs-controls{position:absolute;bottom:0;left:50%;display:flex;gap:7px;transform:translateX(-50%)}.bbnfs-controls button{display:grid;place-items:center;width:39px;height:39px;padding:0;border:2px solid var(--orange);border-radius:50%;color:var(--orange);background:#fff;box-shadow:0 5px 15px #0002;cursor:pointer;font:900 30px/1 Arial}.bbnfs-controls button:hover{color:#fff;background:var(--orange)}
.bbnfs-viewport{overflow-x:auto;padding:5px 0 20px;cursor:grab;scroll-behavior:smooth;scrollbar-width:none;touch-action:pan-y}.bbnfs-viewport::-webkit-scrollbar{display:none}.bbnfs-viewport.is-dragging{cursor:grabbing;scroll-behavior:auto;user-select:none}.bbnfs-track{display:flex;width:max-content}.bbnfs-group{display:flex;gap:18px;padding-right:18px}.bbnfs-card{flex:0 0 280px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 5px 16px #0000000d}.card-compact .bbnfs-card{flex-basis:235px}.card-large .bbnfs-card{flex-basis:330px}.bbnfs-card__visual{position:relative;display:grid;place-items:center;height:145px;color:#fff;background:linear-gradient(135deg,#e85300,#ff983f);background-position:center;background-size:cover}.bbnfs-card__visual.has-image:after{position:absolute;inset:0;content:"";background:linear-gradient(0deg,#111b,transparent 60%)}.bbnfs-card__visual.accent-red{background-color:#9f2430}.bbnfs-card__visual.accent-green{background-color:#0a6657}.bbnfs-card__visual.accent-gold{background-color:#996300}.bbnfs-card__visual span{font-size:47px}.bbnfs-card__visual small{position:absolute;z-index:1;bottom:10px;left:12px;font-size:10px;font-weight:900;text-transform:uppercase}.bbnfs-card__body{padding:17px}.bbnfs-card__body p{display:flex;gap:6px;margin:0 0 8px;color:#8a9198;font-size:9px;text-transform:uppercase}.bbnfs-card__body p b{color:#d95400}.bbnfs-card__body h3{min-height:70px;margin:0 0 10px;font-size:17px;line-height:1.35}.bbnfs-card__body h3 a{color:var(--ink)!important}.bbnfs-card__read{color:#d95400!important;font-size:11px;font-weight:900}.bbnfs-membership{margin:3px 0 0;color:var(--muted);font-size:11px;text-align:center}.bbnfs-membership strong{color:#3b4248}
@media(max-width:680px){.bbnfs{padding-inline:12px}.bbnfs-heading{align-items:flex-start;flex-direction:column}.bbnfs-tools{width:100%;flex-wrap:wrap}.bbnfs-card{flex-basis:245px}.bbnfs-ticker{width:calc(100% + 24px);margin-inline:-12px}.bbnfs-ticker:before{width:132px}.bbnfs-ticker:after{left:132px}.bbnfs-ticker>div{grid-template-columns:124px minmax(0,1fr) 52px;gap:4px;width:calc(100% - 12px)}.bbnfs-ticker strong{justify-self:start;font-size:10px}.bbnfs-ticker a{font-size:10px}.bbnfs-ticker button{width:24px}}
@media(prefers-reduced-motion:reduce){.bbnfs-viewport{scroll-behavior:auto}}

/* BEGIN BISTRO BUDDY NEWS FLASH REGRESSION FIX 20260808 */
/*
 * BISTRO BUDDY News Flash scoped regression repairs — 2026-08-08
 * This file is appended to the native component/module styles during deployment.
 * It intentionally targets only native News Flash classes and data attributes.
 */

/* Never show a browser scrollbar beneath a News Flash rail. Drag, touch,
   keyboard and arrow controls remain available. */
.bbnf-carousel__viewport,
.bbnh-viewport,
.bbnfs-viewport {
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}

.bbnf-carousel__viewport::-webkit-scrollbar,
.bbnh-viewport::-webkit-scrollbar,
.bbnfs-viewport::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Topic/category controls belong directly above the carousel they filter.
   Wrap them instead of creating another sideways scrolling strip. */
.bbnf-filters,
.bbnh-filters,
.bbnfs-filters {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 9px !important;
  overflow: visible !important;
  max-width: 100% !important;
  scrollbar-width: none !important;
}

.bbnf-filters::-webkit-scrollbar,
.bbnh-filters::-webkit-scrollbar,
.bbnfs-filters::-webkit-scrollbar {
  display: none !important;
}

/* Restore high-contrast light controls. The previous global layer used
   currentColor as the background, which produced black unreadable pills. */
.bbnf-filters a,
.bbnh-filters button,
.bbnfs-filters a,
.bbnfs-filters button {
  border: 1px solid #d7dde3 !important;
  color: #27313a !important;
  background: #ffffff !important;
  box-shadow: 0 4px 14px rgba(22, 31, 40, 0.07) !important;
  text-shadow: none !important;
}

.bbnf-filters a b,
.bbnh-filters button b,
.bbnfs-filters a b,
.bbnfs-filters button b {
  color: #58636d !important;
  background: #edf1f4 !important;
}

.bbnf-filters a:hover,
.bbnf-filters a:focus-visible,
.bbnf-filters a.is-active,
.bbnf-filters a[aria-pressed="true"],
.bbnh-filters button:hover,
.bbnh-filters button:focus-visible,
.bbnh-filters button.is-active,
.bbnh-filters button[aria-pressed="true"],
.bbnfs-filters a:hover,
.bbnfs-filters a:focus-visible,
.bbnfs-filters a.is-active,
.bbnfs-filters a[aria-pressed="true"],
.bbnfs-filters button:hover,
.bbnfs-filters button:focus-visible,
.bbnfs-filters button.is-active,
.bbnfs-filters button[aria-pressed="true"] {
  border-color: #c45100 !important;
  color: #ffffff !important;
  background: #c45100 !important;
  box-shadow: 0 7px 18px rgba(196, 81, 0, 0.24) !important;
  outline: none !important;
}

.bbnf-filters a:hover b,
.bbnf-filters a:focus-visible b,
.bbnf-filters a.is-active b,
.bbnf-filters a[aria-pressed="true"] b,
.bbnh-filters button:hover b,
.bbnh-filters button:focus-visible b,
.bbnh-filters button.is-active b,
.bbnh-filters button[aria-pressed="true"] b,
.bbnfs-filters a:hover b,
.bbnfs-filters a:focus-visible b,
.bbnfs-filters a.is-active b,
.bbnfs-filters a[aria-pressed="true"] b,
.bbnfs-filters button:hover b,
.bbnfs-filters button:focus-visible b,
.bbnfs-filters button.is-active b,
.bbnfs-filters button[aria-pressed="true"] b {
  color: #a53e00 !important;
  background: #ffffff !important;
}

/* The entire visible card is a link target. Existing links still work
   normally, while clicks on card whitespace use the card's clean data-url. */
.bbnf-card[data-url]:not([data-duplicate]),
.bbnh-card[data-url]:not([data-duplicate]),
.bbnfs-card[data-url]:not([data-duplicate]) {
  cursor: pointer;
}

/* Article discovery begins only after the full article has ended. */
.bbnf-article-discovery {
  padding: 64px 0 70px;
  border-top: 1px solid #e3e7eb;
  background: linear-gradient(180deg, #fffaf5 0%, #ffffff 100%);
}

.bbnf-article-discovery__intro {
  width: min(1320px, calc(100% - 36px));
  margin: 0 auto 22px;
}

.bbnf-article-discovery__intro h2 {
  margin: 0 0 10px;
  color: #20252b;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.06;
  letter-spacing: -0.04em;
}

.bbnf-article-discovery__intro > p:not(.bbnf-eyebrow) {
  max-width: 850px;
  margin: 0 0 22px;
  color: #646b73;
  font-size: 15px;
  line-height: 1.7;
}

.bbnf-article-discovery .bbnf-full-row {
  padding-top: 26px;
  padding-bottom: 30px;
  background: transparent;
}

/* Center the requested BISTRO BUDDY Network Stats module beneath the
   article discovery models. */
.bbnf-news-bottom {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 32px 18px 72px;
  border-top: 1px solid #e3e7eb;
  background: #ffffff;
}

.bbnf-news-bottom__inner {
  width: min(1320px, 100%);
  margin-inline: auto;
}

.bbnf-news-bottom__inner > * {
  width: 100%;
  margin-inline: auto;
}

@media (max-width: 767.98px) {
  .bbnf-filters,
  .bbnh-filters,
  .bbnfs-filters {
    gap: 7px !important;
  }

  .bbnf-filters a,
  .bbnh-filters button,
  .bbnfs-filters a,
  .bbnfs-filters button {
    min-height: 42px;
    padding-inline: 12px !important;
  }

  .bbnf-article-discovery {
    padding-top: 48px;
  }

  .bbnf-article-discovery__intro {
    width: min(100% - 28px, 1320px);
  }

  .bbnf-news-bottom {
    padding-inline: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bbnf-carousel__viewport,
  .bbnh-viewport,
  .bbnfs-viewport {
    scroll-behavior: auto !important;
  }
}
/* END BISTRO BUDDY NEWS FLASH REGRESSION FIX 20260808 */
