/* wb-neutral-root */
.wb-topic,
.wb-topic-category {
  --wb-green: var(--wb-ui-accent, #177d70);
  --wb-ink: var(--wb-ui-ink, #172925);
  --wb-muted: var(--wb-ui-muted, #65746f);
  --wb-line: var(--wb-ui-border, #dceae7);
  --wb-surface: var(--wb-ui-surface, #f8fcfb);
  color: var(--wb-ink);
}

.wb-topic,
.wb-topic *,
.wb-topic-category,
.wb-topic-category * { box-sizing: border-box; }

.wb-topic { padding:clamp(24px,3vw,32px) 0 32px; }
.wb-preview-flag { background:#fff4cf;border:1px solid #ead58b;border-radius:999px;color:#654f00;display:table;font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:18px;padding:6px 12px;text-transform:uppercase; }
.wb-topic__header { margin:0 0 18px; }
.wb-topic__header h1 { color:var(--wb-ink);font-size:clamp(30px,4vw,44px);letter-spacing:-.035em;line-height:1.08;margin:0; }
.wb-topic__intro { color:#405554;font-size:clamp(16px,1.8vw,19px);line-height:1.65;margin-top:14px;max-width:760px; }

/* Topic lead presets use the shared Listing module grammar. In the site's
   narrow central column, feature-stack and lead-grid retain their hierarchy
   with compact supporting cards instead of tall vertical tiles. */
@container (max-width:760px) {
  .wb-topic > .wb-content-listing--feature-stack .wb-content-card:not(:first-child),
  .wb-topic > .wb-content-listing--lead-grid .wb-content-card:not(:first-child) {
    align-items:stretch;display:grid;gap:10px;grid-template-columns:112px minmax(0,1fr);min-height:112px;
  }
  .wb-topic > .wb-content-listing--feature-stack .wb-content-card:not(:first-child) .wb-content-card__media,
  .wb-topic > .wb-content-listing--lead-grid .wb-content-card:not(:first-child) .wb-content-card__media {
    aspect-ratio:auto;grid-column:1;grid-row:1;height:100%;min-height:94px;
  }
  .wb-topic > .wb-content-listing--feature-stack .wb-content-card:not(:first-child) .wb-content-card__body,
  .wb-topic > .wb-content-listing--lead-grid .wb-content-card:not(:first-child) .wb-content-card__body {
    align-self:center;grid-column:2;grid-row:1;padding:8px 5px;
  }
  .wb-topic > .wb-content-listing--feature-stack .wb-content-card:not(:first-child) .wb-content-card__title,
  .wb-topic > .wb-content-listing--lead-grid .wb-content-card:not(:first-child) .wb-content-card__title {
    font-size:15px;line-height:1.25;
  }
}

/* Default Topic lead: one large story, two horizontal stories in a right-hand
   column, then a full-width grid for every remaining item. */
.wb-topic > .wb-content-listing--lead-side-grid .wb-content-listing__items {
  align-items:stretch;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
}
.wb-topic > .wb-content-listing--lead-side-grid .wb-content-listing__items > .wb-content-card:first-child {
  grid-column:1;grid-row:1;height:100%;
}
.wb-topic > .wb-content-listing--lead-side-grid .wb-content-card__title {
  font-size:.9rem;line-height:1.23;
}
.wb-topic > .wb-content-listing--lead-side-grid .wb-content-listing__items > .wb-content-card:first-child .wb-content-card__title {
  font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.2;
}
.wb-topic-lead__side {
  display:flex;flex-direction:column;gap:var(--wb-cl-gap);grid-column:2;grid-row:1;min-width:0;
}
.wb-topic-lead__side .wb-content-card {
  align-items:stretch;display:grid!important;flex:1 1 0;gap:10px;grid-template-columns:minmax(72px,34%) minmax(0,1fr);min-height:0;
}
.wb-topic-lead__side .wb-content-card__media {
  aspect-ratio:auto!important;grid-column:1;grid-row:1;height:100%!important;min-height:0!important;
}
.wb-topic-lead__side .wb-content-card__body {
  align-self:center;grid-column:2;grid-row:1;padding:8px 3px!important;
}
.wb-topic-lead__side .wb-content-card__category { font-size:.64rem;line-height:1.15;margin-bottom:.25rem; }
.wb-topic-lead__side .wb-content-card__title { font-size:.9rem;line-height:1.23; }
.wb-topic-lead__lower {
  display:grid;gap:var(--wb-cl-gap);grid-column:1 / -1;grid-row:2;min-width:0;
}
.wb-topic-lead__lower--columns-1 { grid-template-columns:1fr; }
.wb-topic-lead__lower--columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-topic-lead__lower--columns-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }

/* Temporary editorial preview for Topic 84. Reuses Listing's established
   lead composition on top, then gives later cards an equal two-column
   horizontal row. Remove after the layout decision is made. */
@media (min-width:641px) {
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items {
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:first-child {
    grid-column:1 / 5;grid-row:1 / span 2;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(2) {
    grid-column:5 / 7;grid-row:1;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(3) {
    grid-column:5 / 7;grid-row:2;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(n+4) {
    align-items:stretch;display:grid;gap:10px;grid-column:span 3;grid-row:auto;grid-template-columns:minmax(96px,34%) minmax(0,1fr);min-height:132px;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(n+4) .wb-content-card__media {
    aspect-ratio:auto;grid-column:1;grid-row:1;height:100%;min-height:112px;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(n+4) .wb-content-card__body {
    align-self:center;grid-column:2;grid-row:1;padding:8px 5px;
  }
  .wb-topic[data-topic-id="84"] > .wb-content-listing--lead .wb-content-listing__items > .wb-content-card:nth-child(n+4) .wb-content-card__title {
    font-size:.9rem;line-height:1.23;
  }
}

/* Match Listing's established desktop/tablet/mobile column model. On tablet
   the composition still has two columns, but the narrower right-column cards
   turn vertical. Only the phone breakpoint collapses the whole lead. */
@media (max-width:1024px) {
  .wb-topic-lead__side .wb-content-card {
    display:flex!important;flex:0 0 auto;flex-direction:column;gap:0;height:auto!important;
  }
  .wb-topic-lead__side .wb-content-card__media {
    aspect-ratio:3 / 2!important;flex:0 0 auto;grid-column:auto;grid-row:auto;height:auto!important;min-height:0!important;width:100%;
  }
  .wb-topic-lead__side .wb-content-card__body {
    align-self:stretch;flex:0 0 auto;grid-column:auto;grid-row:auto;height:auto!important;padding:10px 2px!important;
  }
  .wb-topic-lead__lower {
    grid-template-columns:repeat(var(--wb-cl-columns-tablet,2),minmax(0,1fr));
  }
}

@media (max-width:640px) {
  .wb-topic > .wb-content-listing--lead-side-grid .wb-content-listing__items { grid-template-columns:1fr; }
  .wb-topic > .wb-content-listing--lead-side-grid .wb-content-listing__items > .wb-content-card:first-child,
  .wb-topic-lead__side,
  .wb-topic-lead__lower { grid-column:1;grid-row:auto; }
  .wb-topic-lead__lower {
    grid-template-columns:repeat(var(--wb-cl-columns-mobile,1),minmax(0,1fr));
  }
}

/* Listing, topic cards and accordion deliberately have no duplicate visual
   rules here. Their canonical module styles are loaded by Topic HtmlView. */
.wb-topic-toc { background:#f2f8f6;border:1px solid var(--wb-line);border-radius:20px;margin:clamp(24px,3vw,32px) 0 0;padding:22px 26px; }
.wb-topic-toc + .wb-topic__description { margin-top:clamp(24px,3vw,32px); }
.wb-topic-toc ol { columns:2;gap:36px;margin:12px 0 0;padding-left:1.25rem; }
.wb-topic-toc li { break-inside:avoid;margin:.55rem 0; }
.wb-topic-toc a { color:var(--wb-ink);text-underline-offset:3px; }
.wb-topic__description { color:var(--wb-muted);line-height:1.65;margin:0 0 32px; }
.wb-topic-faq { margin-top:32px; }
.wb-topic-faq__title { align-items:center;color:var(--wb-ink);display:flex;font-size:clamp(22px,2.8vw,29px)!important;font-weight:760;gap:11px;letter-spacing:-.032em;line-height:1.18;margin:0 0 18px!important; }
.wb-topic-faq__title::before { background:linear-gradient(145deg,#42c5a5,#718bea);border-radius:50%;box-shadow:0 0 0 5px rgba(66,197,165,.12);content:'';flex:0 0 9px;height:9px;width:9px; }
.wb-topic-faq .wb-accordion { margin:0; }
.wb-topic-section__more { display:flex;justify-content:flex-end;margin-top:16px; }
.wb-topic-section__more a { align-items:center;background:var(--wb-green);border-radius:999px;color:#fff!important;display:inline-flex;font-size:14px;font-weight:750;gap:9px;padding:10px 16px;text-decoration:none; }
.wb-topic-section__more a:hover { filter:brightness(.94); }
.wb-topic-section__more a:focus-visible { outline:3px solid rgba(23,125,112,.24);outline-offset:3px; }
.wb-topic-related { border-top:1px solid var(--wb-line);margin-top:18px;padding-top:16px; }
.wb-topic-related__title { color:var(--wb-muted);font-size:13px!important;font-weight:780;letter-spacing:.06em;line-height:1.2;margin:0 0 10px!important;text-transform:uppercase; }
.wb-topic-related__grid { display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr)); }
.wb-topic-related__card { align-items:center;background:#f5faf8;border:1px solid var(--wb-line);border-radius:14px;color:var(--wb-ink)!important;display:flex;font-size:14px;font-weight:700;gap:10px;line-height:1.25;min-width:0;padding:9px 11px;text-decoration:none; }
.wb-topic-related__card img { flex:0 0 42px;height:42px;object-fit:cover;width:42px; }
.wb-topic-related__card:hover { border-color:#b9d9d2;color:var(--wb-green)!important; }
.wb-topic-related__card:focus-visible { outline:3px solid rgba(23,125,112,.2);outline-offset:2px; }

.wb-topic-section-page { color:var(--wb-ink);padding:clamp(24px,3vw,32px) 0 32px; }
.wb-topic-section-page,.wb-topic-section-page * { box-sizing:border-box; }
.wb-topic-section-page__header { margin-bottom:clamp(24px,3vw,34px); }
.wb-topic-section-page__parent { color:var(--wb-green);display:inline-block;font-size:14px;font-weight:720;margin-bottom:10px;text-decoration:none; }
.wb-topic-section-page__parent:hover { text-decoration:underline;text-underline-offset:3px; }
.wb-topic-section-page__header h1 { color:var(--wb-ink);font-size:clamp(30px,4vw,44px);letter-spacing:-.035em;line-height:1.08;margin:0; }
.wb-topic-section-page__description { color:#405554;font-size:clamp(16px,1.8vw,19px);line-height:1.65;margin-top:14px;max-width:780px; }
.wb-topic-section-page__articles .wb-topic-section__grid { display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-topic-section-page__pagination { display:flex;justify-content:center;margin-top:28px; }
.wb-topic-section-page__pagination .pagination { flex-wrap:wrap;justify-content:center; }
.wb-topic-related--page { margin-top:32px; }
.wb-topic-section-page__back { margin:28px 0 0; }
.wb-topic-section-page__back a { color:var(--wb-green);font-weight:720;text-decoration:none; }
.wb-topic-section-page__back a:hover { text-decoration:underline;text-underline-offset:3px; }

.wb-topic-category { padding:clamp(24px,3vw,32px) 0 32px; }
.wb-topic-category__header { margin:0 0 clamp(18px,2.5vw,26px); }
.wb-topic-category h1 { color:var(--wb-ink);font-size:clamp(32px,4vw,46px);letter-spacing:-.04em;line-height:1.04;margin:0; }
.wb-topic-category__intro { color:#405554;font-size:clamp(16px,1.8vw,19px);line-height:1.6;margin-top:12px;max-width:760px; }
.wb-topic-category__intro > :first-child { margin-top:0; }
.wb-topic-category__intro > :last-child { margin-bottom:0; }
.wb-category-directory { padding:0; }
.wb-category-directory__groups { display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-category-directory__group { align-self:start;background:linear-gradient(145deg,#fbfdfc 0%,#f7faf9 100%);border:1px solid var(--wb-line);border-radius:22px;box-shadow:0 14px 38px rgba(36,67,63,.055);min-width:0;padding:clamp(18px,2.4vw,25px) clamp(20px,3vw,28px); }
.wb-category-directory__group:first-child { grid-row:span 3; }
.wb-category-directory__group-title { align-items:center;color:var(--wb-ink);display:flex;font-size:clamp(19px,2.2vw,24px)!important;font-weight:760;gap:10px;letter-spacing:-.025em;line-height:1.2;margin:0 0 10px!important; }
.wb-category-directory__group-title::before { background:linear-gradient(145deg,#42c5a5,#718bea);border-radius:50%;box-shadow:0 0 0 5px rgba(66,197,165,.12);content:'';flex:0 0 8px;height:8px; }
.wb-category-directory__group-intro { color:var(--wb-muted);font-size:14px;line-height:1.55;margin:0 0 8px; }
.wb-category-directory__list { list-style:none;margin:0;padding:0; }
.wb-category-directory__list li { border-bottom:1px solid #e3ece9;display:flex;min-width:0; }
.wb-category-directory__list a { align-items:center;color:var(--wb-ink);display:flex;font-size:clamp(15px,1.45vw,17px);font-weight:650;gap:12px;letter-spacing:-.015em;line-height:1.3;min-height:60px;padding:8px 2px;text-decoration:none;width:100%; }
.wb-category-directory__topic-icon { flex:0 0 44px;height:44px;object-fit:contain;width:44px; }
.wb-category-directory__topic-title { min-width:0;text-underline-offset:5px; }
.wb-category-directory__list a:hover { color:var(--wb-green); }
.wb-category-directory__list a:hover .wb-category-directory__topic-title { text-decoration:underline;text-decoration-thickness:1px; }
.wb-category-directory__list a:focus-visible { border-radius:6px;outline:3px solid rgba(23,125,112,.2);outline-offset:3px; }
.wb-category-directory__list li:last-child { border-bottom:0; }
.wb-category-directory__list--ungrouped { background:#f8fcfb;border:1px solid var(--wb-line);border-radius:18px;margin-top:18px;padding:10px 22px; }

/* Category Hub: permanent destinations followed by one deduplicated article
   feed split into the current blog cards, compact cards and text links. */
.wb-category-hub { container-type:inline-size; }
.wb-category-hub .wb-topic-category__header { margin-bottom:clamp(22px,3vw,34px); }
.wb-hub-quick-links { display:flex;flex-wrap:wrap;gap:10px;margin:-8px 0 clamp(24px,3vw,34px); }
.wb-hub-quick-links a { background:#f2f8f6;border:1px solid var(--wb-line);border-radius:999px;color:var(--wb-ink);font-size:14px;font-weight:650;line-height:1.25;padding:9px 14px;text-decoration:none; }
.wb-hub-quick-links a:hover { background:#eaf5f2;border-color:#b9d9d2;color:var(--wb-green); }
.wb-hub-quick-links a:focus-visible { outline:3px solid rgba(23,125,112,.2);outline-offset:2px; }
.wb-hub-section { margin-top:clamp(30px,4vw,46px); }
.wb-hub-section__title {
  align-items:center;border:0;color:var(--wb-ink);display:flex;font-size:clamp(22px,2.7vw,29px)!important;
  font-weight:760;gap:11px;letter-spacing:-.032em;line-height:1.18;margin:0 0 18px!important;padding:0;
}
.wb-hub-section__title::before {
  background:linear-gradient(145deg,#42c5a5,#718bea);border-radius:50%;box-shadow:0 0 0 5px rgba(66,197,165,.12);
  content:'';flex:0 0 9px;height:9px;width:9px;
}
.wb-hub-destinations { margin-top:0!important; }
.wb-hub-destination-groups { display:grid;gap:2rem;margin-top:1.5rem; }
.wb-hub-destination-group .wb-hub-section__title { margin-bottom:.8rem!important; }
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-listing__items { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:first-child,
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:not(:first-child) { display:flex;grid-column:auto;grid-row:auto; }
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:first-child .wb-content-card__media,
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:not(:first-child) .wb-content-card__media { aspect-ratio:3 / 2;height:auto;min-height:0; }
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:first-child .wb-content-card__body,
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:not(:first-child) .wb-content-card__body { padding:.8rem .4rem .45rem; }
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:first-child .wb-content-card__title,
.wb-hub-destinations.wb-hub-destinations--grouped .wb-content-card:not(:first-child) .wb-content-card__title { font-size:clamp(1rem,1.45vw,1.22rem); }
.wb-hub-destinations .wb-content-listing__items { grid-template-columns:minmax(0,2fr) minmax(220px,1fr); }
.wb-hub-destinations .wb-content-card:first-child { grid-column:1;grid-row:1 / span 3; }
.wb-hub-destinations .wb-content-card:not(:first-child) { grid-column:2; }
.wb-hub-destinations .wb-content-card:first-child .wb-content-card__media { aspect-ratio:3 / 2;min-height:300px; }
.wb-hub-destinations .wb-content-card:not(:first-child) .wb-content-card__body { padding:.7rem .35rem .3rem; }
.wb-hub-destinations .wb-content-card:not(:first-child) .wb-content-card__title { font-size:clamp(.95rem,1.2vw,1.08rem); }
.wb-hub-destinations--count-2 .wb-content-listing__items { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-hub-destinations--count-2 .wb-content-card:first-child,
.wb-hub-destinations--count-2 .wb-content-card:not(:first-child) { grid-column:auto;grid-row:auto; }
.wb-hub-destinations--count-2 .wb-content-card:first-child .wb-content-card__media { min-height:0; }
.wb-hub-destinations--count-2 .wb-content-card:not(:first-child) .wb-content-card__body { padding:.85rem .35rem .4rem; }
.wb-hub-destinations--count-2 .wb-content-card:not(:first-child) .wb-content-card__title { font-size:clamp(1.05rem,1.7vw,1.35rem); }
.wb-hub-destinations--count-6 .wb-content-listing__items { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wb-hub-destinations--count-6 .wb-content-card:first-child,
.wb-hub-destinations--count-6 .wb-content-card:not(:first-child) { display:flex;grid-column:auto;grid-row:auto; }
.wb-hub-destinations--count-6 .wb-content-card:first-child .wb-content-card__media,
.wb-hub-destinations--count-6 .wb-content-card:not(:first-child) .wb-content-card__media { aspect-ratio:3 / 2;height:auto;min-height:0; }
.wb-hub-destinations--count-6 .wb-content-card:first-child .wb-content-card__body,
.wb-hub-destinations--count-6 .wb-content-card:not(:first-child) .wb-content-card__body { padding:.8rem .4rem .45rem; }
.wb-hub-destinations--count-6 .wb-content-card:first-child .wb-content-card__title,
.wb-hub-destinations--count-6 .wb-content-card:not(:first-child) .wb-content-card__title { font-size:clamp(1rem,1.45vw,1.22rem); }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items { align-items:stretch;grid-template-columns:minmax(0,1.45fr) minmax(220px,1fr);grid-template-rows:auto; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child { display:flex;grid-column:1;grid-row:1;overflow:hidden; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child .wb-content-card__media { align-self:stretch;box-sizing:border-box;max-width:100%;min-width:0;width:100%; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child .wb-content-card__image { max-width:100%; }
.wb-hub-destinations__side-list { display:flex;flex-direction:column;gap:18px;grid-column:2;grid-row:1;min-width:0; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list .wb-content-card { align-items:stretch;display:grid;flex:1 1 0;grid-column:auto;grid-row:auto;grid-template-columns:118px minmax(0,1fr);min-height:0; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list .wb-content-card__media { aspect-ratio:auto;grid-column:1;grid-row:1;height:100%;min-height:0; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list .wb-content-card__body { align-self:center;grid-column:2;grid-row:1;padding:10px 12px; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list .wb-content-card__title { font-size:clamp(.94rem,1.2vw,1.08rem); }
.wb-hub-destinations.wb-hub-destinations--feature-side-list.wb-hub-destinations--count-1 .wb-content-listing__items { grid-template-columns:1fr;grid-template-rows:auto; }
.wb-hub-destinations.wb-hub-destinations--feature-side-list.wb-hub-destinations--count-1 .wb-content-card:first-child { grid-column:1;grid-row:1; }
.wb-hub-topics__grid { display:grid;gap:12px;grid-template-columns:1fr;list-style:none;margin:0;padding:0; }
.wb-hub-topics__grid--count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-hub-topics__grid--count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wb-hub-topics__grid li { min-width:0; }
.wb-hub-topics__grid a { align-items:center;background:linear-gradient(145deg,#fbfdfc 0%,#f5faf8 100%);border:1px solid var(--wb-line);border-radius:16px;color:var(--wb-ink)!important;display:flex;font-size:clamp(15px,1.45vw,17px);font-weight:700;gap:14px;line-height:1.25;min-height:78px;padding:12px 16px;text-decoration:none; }
.wb-hub-topics__grid img { flex:0 0 52px;height:52px;object-fit:contain;width:52px; }
.wb-hub-topics__grid span { min-width:0; }
.wb-hub-topics__grid a:hover { border-color:#b9d9d2;color:var(--wb-green)!important; }
.wb-hub-topics__grid a:focus-visible { outline:3px solid rgba(23,125,112,.2);outline-offset:3px; }
.wb-hub-first .wb-category-shell--blog { padding:0; }
.wb-hub-grid > .wb-content-listing { margin:0; }
.wb-hub-grid .wb-content-card__title { font-size:14px!important;line-height:1.26; }
.wb-hub-grid .wb-content-card__category { font-size:.58rem!important; }
.wb-hub-grid .wb-content-card__body { padding:.7rem .3rem .25rem!important; }
.wb-hub-links.wb-category-shell--blog { padding:0; }
.wb-hub-links.wb-category-shell--blog .wb-category-more { margin-top:0; }
.wb-hub-support { align-items:center;background:linear-gradient(145deg,#f1f8f6,#f6f8fd);border:1px solid var(--wb-line);border-radius:22px;display:flex;gap:clamp(18px,3vw,34px);justify-content:space-between;margin-top:clamp(32px,4vw,48px);padding:clamp(22px,3.5vw,34px); }
.wb-hub-support h2 { color:var(--wb-ink);font-size:clamp(21px,2.6vw,28px)!important;letter-spacing:-.03em;line-height:1.15;margin:0 0 8px!important; }
.wb-hub-support p { color:#405554;line-height:1.6;margin:0;max-width:720px; }
.wb-hub-support__link { background:var(--wb-green);border-radius:999px;color:#fff!important;flex:0 0 auto;font-size:14px;font-weight:750;padding:11px 17px;text-decoration:none; }
.wb-hub-support__link:hover { filter:brightness(.94); }

@container (max-width:760px) {
  .wb-hub-topics__grid--count-2,
  .wb-hub-topics__grid--count-3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wb-hub-destinations.wb-hub-destinations--grouped .wb-content-listing__items { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wb-hub-destinations .wb-content-listing__items { grid-template-columns:1fr; }
  .wb-hub-destinations .wb-content-card:first-child,
  .wb-hub-destinations .wb-content-card:not(:first-child) { grid-column:auto;grid-row:auto; }
  .wb-hub-destinations .wb-content-card:first-child .wb-content-card__media { min-height:0; }
  .wb-hub-destinations--count-2 .wb-content-listing__items { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wb-hub-destinations--count-6 .wb-content-listing__items { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items { grid-template-columns:minmax(0,1.45fr) minmax(220px,1fr);grid-template-rows:auto; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child { grid-column:1;grid-row:1; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child .wb-content-card__media { min-height:300px; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list { grid-column:2;grid-row:1; }
  .wb-hub-grid .wb-content-listing__items { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wb-hub-support { align-items:flex-start;flex-direction:column; }
}

/* Six-card hub leads comfortably fit three cards in the site's 649px desktop
   content column. Switch to two only when three cards would become too narrow;
   this also avoids the old 1280px=2 / 1024px=3 inverse breakpoint. */
@container (max-width:580px) {
  .wb-hub-destinations--count-6 .wb-content-listing__items { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@container (max-width:520px) {
  /* Mobile side-list cards must size to content instead of sharing zero-basis flex height. */
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list > .wb-content-card { flex:0 0 auto;height:auto;min-height:112px; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list > .wb-content-card .wb-content-card__media { height:94px;min-height:94px;max-height:94px; }
  .wb-hub-topics__grid { grid-template-columns:1fr; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items { grid-template-columns:1fr;grid-template-rows:auto; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child,
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-hub-destinations__side-list { grid-column:1;grid-row:auto; }
  .wb-hub-destinations.wb-hub-destinations--feature-side-list .wb-content-listing__items > .wb-content-card:first-child .wb-content-card__media { min-height:0; }
  .wb-hub-destination-groups { gap:1.5rem; }
  .wb-hub-destinations.wb-hub-destinations--grouped .wb-content-listing__items { grid-template-columns:1fr; }
  .wb-hub-destinations--count-2 .wb-content-listing__items { grid-template-columns:1fr; }
  .wb-hub-destinations--count-6 .wb-content-listing__items { grid-template-columns:1fr; }
  .wb-hub-destinations .wb-content-card:not(:first-child) { align-items:stretch;display:grid;gap:10px;grid-template-columns:112px minmax(0,1fr);min-height:112px; }
  .wb-hub-destinations .wb-content-card:not(:first-child) .wb-content-card__media { aspect-ratio:auto;grid-column:1;grid-row:1;height:100%;min-height:94px; }
  .wb-hub-destinations .wb-content-card:not(:first-child) .wb-content-card__body { align-self:center;grid-column:2;grid-row:1;padding:8px 5px; }
  .wb-hub-destinations--count-6 .wb-content-card:not(:first-child) { display:flex;grid-template-columns:none;min-height:0; }
  .wb-hub-destinations--count-6 .wb-content-card:not(:first-child) .wb-content-card__media { aspect-ratio:3 / 2;grid-column:auto;grid-row:auto;height:auto;min-height:0; }
  .wb-hub-destinations--count-6 .wb-content-card:not(:first-child) .wb-content-card__body { align-self:auto;grid-column:auto;grid-row:auto;padding:.8rem .4rem .45rem; }
  .wb-hub-destinations--grouped .wb-content-card:not(:first-child) { display:flex;grid-template-columns:none;min-height:0; }
  .wb-hub-destinations--grouped .wb-content-card:not(:first-child) .wb-content-card__media { aspect-ratio:3 / 2;grid-column:auto;grid-row:auto;height:auto;min-height:0; }
  .wb-hub-destinations--grouped .wb-content-card:not(:first-child) .wb-content-card__body { align-self:auto;grid-column:auto;grid-row:auto;padding:.8rem .4rem .45rem; }
  .wb-hub-grid .wb-content-listing__items { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* The category-only latest module lives after #wbPageContent, so it spans the
   complete page body rather than the main column beside the sticky sidebar. */
.com_wbtopics.view-category #wbBottom2 .wb-health-latest-shell,
.site-wbtopics.page-category #wbBottom2 .wb-health-latest-shell {
  flex:0 0 calc(100% - 50px);margin:clamp(24px,3vw,32px) 25px 32px!important;max-width:calc(100% - 50px);width:calc(100% - 50px)!important;
}
.com_wbtopics.view-category #wbBottom2 .wb-health-latest-shell > .box-wrap,
.com_wbtopics.view-category #wbBottom2 .wb-health-latest-shell > .box-wrap > .content,
.site-wbtopics.page-category #wbBottom2 .wb-health-latest-shell > .box-wrap,
.site-wbtopics.page-category #wbBottom2 .wb-health-latest-shell > .box-wrap > .content { margin:0;padding:0; }
.com_wbtopics.view-category #wbBottom2 .wb-health-latest-shell .wb-content-listing,
.site-wbtopics.page-category #wbBottom2 .wb-health-latest-shell .wb-content-listing { margin:0; }
.com_wbtopics.view-category #wbBottom2 .wb-hub-links-bottom-shell .wb-content-listing,
.site-wbtopics.page-category #wbBottom2 .wb-hub-links-bottom-shell .wb-content-listing { background:none;border:0;box-shadow:none;padding:0; }
.com_wbtopics.view-category #wbBottom2 .wb-hub-links-bottom-shell .wb-content-listing__header,
.site-wbtopics.page-category #wbBottom2 .wb-hub-links-bottom-shell .wb-content-listing__header { padding-inline:0; }

@media(max-width:760px) {
  .wb-topic,.wb-topic-category { padding-inline:0; }
  .wb-topic-toc ol { columns:1; }
  .wb-category-directory__groups { grid-template-columns:1fr; }
  .wb-category-directory__group:first-child { grid-row:auto; }
  .wb-category-directory__list a { gap:10px;min-height:56px; }
  .wb-category-directory__topic-icon { flex-basis:40px;height:40px;width:40px; }
  .com_wbtopics.view-category #wbBottom2 .wb-health-latest-shell,
.site-wbtopics.page-category #wbBottom2 .wb-health-latest-shell { flex-basis:calc(100% - 24px);margin:20px 12px 24px!important;max-width:calc(100% - 24px);width:calc(100% - 24px)!important; }
  .wb-topic-related__grid { grid-template-columns:1fr; }
  .wb-topic-section-page__articles .wb-topic-section__grid { gap:10px;grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:640px) {
  .wb-topic-section-page__articles .wb-topic-section__grid { grid-template-columns:1fr; }
  /* The topic hero keeps a strong lead story on phones; supporting stories
     become compact horizontal cards instead of a stack of equal tiles. */
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-listing__items {
    grid-template-columns:1fr;
  }
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-card:first-child {
    display:flex;
    grid-column:auto;
    grid-row:auto;
  }
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-card:not(:first-child) {
    align-items:stretch;
    display:grid;
    gap:10px;
    grid-template-columns:112px minmax(0,1fr);
    min-height:112px;
  }
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-card:not(:first-child) .wb-content-card__media {
    aspect-ratio:auto;
    grid-column:1;
    grid-row:1;
    height:100%;
    min-height:94px;
  }
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-card:not(:first-child) .wb-content-card__body {
    align-self:center;
    grid-column:2;
    grid-row:1;
    padding:8px 5px;
  }
  .wb-topic > .wb-content-listing:not(.wb-content-listing--lead-side-grid) .wb-content-card:not(:first-child) .wb-content-card__title {
    font-size:15px;
    line-height:1.25;
  }
  .wb-topic .wb-topic-section--columns-2 .wb-topic-card,
  .wb-topic .wb-topic-section--columns-2 .wb-topic-card:last-child:nth-child(odd) {
    grid-column:auto;
    grid-template-columns:1fr;
    min-height:0;
  }
  .wb-topic .wb-topic-section--columns-2 .wb-topic-section__grid {
    gap:10px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .wb-topic .wb-topic-section--columns-2 .wb-topic-card__media {
    aspect-ratio:3 / 2;
    min-height:0;
  }
}
